TPS

Started by
5 comments, last by nitzan 20 years, 6 months ago
How many triangles per second does a normal game engine render ? It seems like Nvidia demos render at around 4-6 million triangles on my machine. At 4mtps and 60fps, that means you can only have 66,667 triangles drawn per frame. My engine can only do between 1.5 and 2.5 mtps (on my levels, 5mtps with optimized data). Which means I am limited to a measily 25,000 triangles per frame, at 60fps and 1.5mtps. What do other engines do ? I am talking about games, not some optimized engine which draws one object with one texture map. Nitzan
Advertisement
I know several UT2003 levels get to 80,000 triangles in a frame at 40-60 fps on my Geforce3 200. My card seems to be more fill rate limited than geometry limited anyway ( Particles and whatnot slow the game down more than raw geometry )
It truely depends on programmed the game engine

Especially the better vid cards can render a ton of polygons, but it is also based on the engine.

A good engine should be able to draw the scenes its built to draw and it should do them well. This is of course for runtime speed.

For loading times of maps it depends on how fast the data can get in the program, which you usually wont notice b''cuz the sound files will make the load screen longer.

But anyway, an engine should be able to render as fast as the game needs. You should always use the lowest poly''s as possible that have the least amount of model damage (which means dont decimate them so low they look like crap).

If your game is high detail, you will probably need more than 25,000. Try to optimize the engine, that should not only take you out of the problem most engines suffer from but also make optimized data even faster.

---
Compiler error; line 14:blackstone.evil = false;Does this mean I AM evil?
For those who are intersted...

The PS2 verson of Star Wars Bounty Hunter has 30,000 to 50,000 triangles per frame at a steady 30fps. So 900,000 to 1,500,000 million triangles per second.

Nitzan
What is your subdivision and visibility algorithem? Are you using BSP or Octrees? If you are using BSP''s is normal to have a big slow down with your scenes because BSP are great for optimizing but only when levels have a low polycount per image. For more detailed sceneries, it slows down to much because you must render the scenerie polygon by polygon.
If your senerie is very detailed, you must use Octress or AABBtrees.
Techno Grooves
I am using Octrees, but these have alot of problems too. I generate my octree from a cube, for example -1000 to 1000 on all sides. If I have an object near the x,y,z axis, it will immediately be included in a very low octree level. You have no gurantee that an object will sit nicely inside a cell, it will very likey cross the bounds of two nodes and have to be included in the parent. This can occur if the object is placed near an axis, or if the object is very big.

On some of my levels, over 90% of my objects were in the first several levels of the octree. If I try and keep my objects small, I have alot more triangles and I end up having to render more triangles than I am saving by culling.

There seems to definitely be a balance between object size (smaller objects add up to more triangles) and octree-culling capablities.

Also, to make things more complicated. I read on the nvidia site that unless you limit your code to 500 draw calls per frame, the overheard of doing the draw calls is so large that it immediately becomes a cpu-limitation.

But apparently at 1.5-2.5 mtps, I am close to the commerical standard. Which means I can have 50,000 to 83,333 triangles per frame at 30fps (half that at 60).

Nitzan
nitzan : You might wat to check out this thread about ABT-s to solve (some of) your problems.

You should never let your fears become the boundaries of your dreams.
You should never let your fears become the boundaries of your dreams.

This topic is closed to new replies.

Advertisement