Advertisement

Performance Question

Started by October 26, 2001 12:44 PM
13 comments, last by nitzan 23 years, 3 months ago
> It turns out I am screwed becuase my terrain is deformable.

I don''t really get why you''re screwed.. you can still update your terrain in video memory if you use the correct data structures, so i don''t see it as a problem..!?

> The only way to make vertex arrays fast is to lock them

What do you mean by "lock"? The CVA extension? If so, do not forget it''s not going to increase your speed on T&L cards, ie. all recent cards.

Y.
you don''t quite understand why d-terrain ruins him ysaneya.
his game''s deformable terrain requires large amounts of proccessing power and since it is deformable can''t be placed in a display list. sure he can update it but then the card always has to recalculate data. he has to recalculate normals everytime the terrain is deformed and it probably does it when the terrain isn''t being deformed anyways.
now maybe you see a little more insightfully into this?
maybe you havn''t tried his game yet or just have an incredibly powerful computer?

i''m not into extension abreviations so if you want to write the full extension name...
Advertisement
Well, he sound like: "i am using deformable terrain hence i cannot use VAR" (vertex array range). I''m just saying there is no difference of functionnality between VAR and normal VA. If you can use d-terrain with vertex arrays, you can use them with VAR, regardless the processing cost. Hell, i''m doing dynamic tesselation in video memory with VAR, and it works perfectly.

And if he has to recalculate the normals every time, i''d say he should try to first change his processing algorithm rather than trying to optimize the rendering.

Y.
There we go. Something descriptive that will possibly help him out. On his page he says the code is less processor dependant but hes not releasing another version of his game until he gets his particle system working.
BTW i can only poke random guesses at why his game performs so slow. I myself have a Radeon with SDR and a PII 450 but i only get 80,000 triangles a sec in his game.

Edited by - HelplessFool on November 2, 2001 8:59:05 AM
Let me try and shed some light on the subject. My terrain is deformable. Meaning the vertices that construct the terrain can change at any moment. The normals have to be re-calculated whenever this happens, as do the vertex colors. If the terrain didnt get deformed, the normals dont get recalculated.

If you read the nvidia white paper I linked to above, you will notice that vertex arrays are only slightly better in performance then indpendent calls. I tested this and got no performance improvement. The only vertex arrays that make a difference are either openGL specific, or LOCKED vertex arrays. In locked vertex arrays you cannot change the vertecis once they are entered. Otherwise the card would have to recalculate everything anyways and you wouldnt get any performance boost.

The nvidia cards are very good in T&L (Transform and Lighting). But they arent as good in texture mapping and on the fly coloring. Therefore if you look at the nvidia performance quotes you will see that (certain) texture mapping and coloring gives you rather shitty performance.

If I were to lock the terrain vertex array, and display list it, I would probably get several million triangles / second. But this is not possible with my deformable terrain.


-------------------------
www.geocities.com/nitzanw
www.scorchedearth3d.net
-------------------------

This topic is closed to new replies.

Advertisement