Polygon Count
Posted: Tue Nov 03, 2009 7:09 am
Hello again... I'm hoping all the questions are starting to lose steam... but it seems one always brings another.
At the moment, I'm trying my damnedest to limit the polygon count on my current mech model. According to the ply converter, the poly total when adding up the different model pieces (head, leg parts, etc...) should be 212.
Now that I have my new Acekard, I ran a test to see what the DS reports as the poly count with glGetInt(GL_GET_POLYGON_RAM_COUNT, &polycount); and it's reporting 183. I tested with one polygon and found that it gives back 0, so I'm gathering that 183 means I've got 184 polys.
I'm not sure why the difference. I've looked at my models, and the count of faces matches the 212. I thought, possibly that polys that are obscured by others are omitted, but I tested that theory out by just displaying a quad and a smaller one behind it, rotating to see if the count changed when both were seen or not and it was unaffected. Is there an optimization that I'm missing or not understanding perhaps? I'm quite happy that it's lower... I'm already experiencing the struggle of keeping below the 2048/1536 limit... but would like to understand why. Also, the count seems to flicker a bit... I added several extra swiWaitForVBlank() calls to slow it down, and it stayed at 183 but jumped just for a split second to 184 or 185 when each animation frame played. Those animation frames were just modifications of rotation values for certain peices.
Turning on Back Culling certainly works in lowering the count down to 124-ish, so that's good... but if I understand it, that's just omitting those poly's who's normals are pointing away...
At the moment, I'm trying my damnedest to limit the polygon count on my current mech model. According to the ply converter, the poly total when adding up the different model pieces (head, leg parts, etc...) should be 212.
Now that I have my new Acekard, I ran a test to see what the DS reports as the poly count with glGetInt(GL_GET_POLYGON_RAM_COUNT, &polycount); and it's reporting 183. I tested with one polygon and found that it gives back 0, so I'm gathering that 183 means I've got 184 polys.
I'm not sure why the difference. I've looked at my models, and the count of faces matches the 212. I thought, possibly that polys that are obscured by others are omitted, but I tested that theory out by just displaying a quad and a smaller one behind it, rotating to see if the count changed when both were seen or not and it was unaffected. Is there an optimization that I'm missing or not understanding perhaps? I'm quite happy that it's lower... I'm already experiencing the struggle of keeping below the 2048/1536 limit... but would like to understand why. Also, the count seems to flicker a bit... I added several extra swiWaitForVBlank() calls to slow it down, and it stayed at 183 but jumped just for a split second to 184 or 185 when each animation frame played. Those animation frames were just modifications of rotation values for certain peices.
Turning on Back Culling certainly works in lowering the count down to 124-ish, so that's good... but if I understand it, that's just omitting those poly's who's normals are pointing away...