Sign in to follow this  
Followers 0
ic0de

Assimp Indices and vertices are the same size?

1 post in this topic

I use assimp to load mesh data for my game and I was recently doing some optimization work on my rendering engine and I figured I should check to see how many vertices were actually being loaded. As it turns out I'm actually using more data indexing the meshes than I save by using indexed buffers. Here is my code:
 

#define IMPORT_OPTIONS	aiProcess_RemoveComponent|\
			aiProcess_OptimizeGraph|\
			aiProcess_JoinIdenticalVertices|\
			aiProcess_OptimizeMeshes|\
			aiProcess_Triangulate|\
			aiProcess_FlipUVs|\
			aiProcess_CalcTangentSpace|\
			aiProcess_SortByPType|\
			aiProcess_ImproveCacheLocality 


Assimp::Importer importer;

const aiScene* scene = importer.ReadFile(fname, IMPORT_OPTIONS);

numTriangles = scene->mMeshes[0]->mNumFaces;

numVertices = scene->mMeshes[0]->mNumVertices;
numIndices = numTriangles * 3;

It seems that somehow numVertices and numIndices are almost the same give or take 100 vertices. For example I had 34907440 vertices and 34907512 indices. Any closed mesh should have three times as many Indices as vertices because a vertex should be shared by at least 3 triangles. I'm guessing that Assimp is doing something quite sinister behind the scenes and isn't merging vertices properly even though I specified aiProcess_JoinIdenticalVerticesEverthing is rendering properly but I feel this might be eating away my performance. Does anyone have any Idea what might be going on? 

Edited by ic0de
0

Share this post


Link to post
Share on other sites

Ooops. It would appear that Visual Studio's debugger was playing a dirty trick on me, the values it reported weren't correct at all. I manually fprintf'ed the values to a file and the numbers are much more reasonable: 5228 Vertices to 15426 Indices theres the 3 to 1 ratio I was looking for.

Edited by ic0de
0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0