Question about speed in OpenGL

Started by
12 comments, last by Coz 21 years, 5 months ago
How many triangles do you think should be enough to make a decent quality 3d world, without sacrificing speed using for example a 1GHz processor and a Geforce2 GTS card?
Advertisement
30000
http://www.8ung.at/basiror/theironcross.html
I agree. 30000 gives me 30 fps on my 1.6 GHz, but it should be about the same for you.
It is absolutely impossible to say. It depends on too many factors.

Define ''decent quality 3D world''. Some would say 10k (big Q3 level), others would say way over 100 million. The number of faces that can be handled is typically not defined by the CPU and 3D card. It''s defined by your 3D engine. It''s very likely that you''ll hit the limit of your engine before you''re hitting hardware limits. A 1Ghz CPU with GF2-GTS (given enough RAM) can handle 3D worlds with several million faces at 30fps, on a highend engine. On a lowend engine, you might already hit the 30fps limit with 10k faces. The hardware limit of a GF2 is way over that. Given optimal programming, you could run up to 200k - 300k faces in the view at 30fps on it.

Only one way to find out: time and profile your engine.
we know that i can have a million polygons as well just split my surface so i get a million but nowerdays decent egoshooters handle around 30000 wpolys and more
http://www.8ung.at/basiror/theironcross.html
Thanx everyone for your help... and ... Yann L, when i write a "decent quality 3D world", i mean that if you were making a game with enough subdivisions that the player doesn''t says that it looks "blocky" and still have a good performance. If your engine is really slow, and you think the world that you got have your requirements the thing you should improve is the engine, right? Just suppose the engine can render up to 50000 triangles without problems.

What i see is that i should aim for 30000 polys. I''m not a expert or even a experienced 3d programmer. I have done many small proyects with 3d graphics and i feel it''s time to try something bigger.
in KEA (below) the planet in the screenshots have about 50,000 tris (not all on screen at once tthough) also this is just for the planet everything else is extra.
btw 50,000 aint much

http://uk.geocities.com/sloppyturds/kea/kea.html
http://uk.geocities.com/sloppyturds/gotterdammerung.html
My GeForce4 can do 1.03 trillion a second, oh wait thats operations a second. Theres a 128 meg of DDR on the card, so asume that it can handle a great deal of punishment. I only have the 4200, I want the 4800. I have never sean a 3D engine that actually uses the full hardware support. I think the DOOM3 would probebly ge there more then any thang else will. I think I remeber some of the objects being discussed were around 1000 polygons or more each. Thats alot per model. I rember that nVidia fire truck being some like 100,000 polies. I would like to see an actual 3D engine that uses my computers full hardware caps. Is there any thang wrong with using multiple graphics cards APIs in your program, just making sure that there not running if the card isn''t present. That would get you closer and make a better engine. But I want to see something that really pushes me graphics card to the max. If any of you know of something, please tell me.
Take back the internet with the most awsome browser around, FireFox
quote:
If your engine is really slow, and you think the world that you got have your requirements the thing you should improve is the engine, right? Just suppose the engine can render up to 50000 triangles without problems.

If your scene isn't insanely complex, then that's right. The bottleneck is almost always the engine.

quote:
What i see is that i should aim for 30000 polys. I'm not a expert or even a experienced 3d programmer. I have done many small proyects with 3d graphics and i feel it's time to try something bigger.

Well, I don't know your engine (D3D, OpenGL ?), so I can't really give you any advice other than that the most important thing are your data structures and hierarchical organization. If you use vertex streaming, then 30000 faces is virtually nothing for a GF2 GTS.

Why not target higher ? Do you have an octtree engine running (forget BSPs) ? Yes ? Good. Do you know how to stream static vertex data into an AGP/VRAM cache (that's VAR for OpenGL and static vertex buffers for D3D, lots of tutorials available) ? If yes, then forget about the 30k faces. Target 200000. That's a good start, and it isn't very difficult to build a basic engine that can handle this number. You could even go higher. Some simple nVidia demos have objects with 300000 faces in the view at once, that run at 30 fps. And this are small 500 line demos.

Even if your 3D world doesn't need them all (though you can make 3D worlds that take lots of faces, and not only for subdivision, but for real 3D detail. But you need a good artist, that might be a problem for many amateur prgrammers), you can still use them for better looking models and objects.

I'm just a little fed up by people telling 'oh look, current games do not use more than 50k faces, so that must be the limit that can be achieved'. Wrong. Even current games were designed years ago, with lower target specs in mind. Not a single game currently on the market does even use 20% of the power a GF4 provides. Not one. Not even Doom3. Why limit yourself to that. Target higher.

quote:
Just suppose the engine can render up to 50000 triangles without problems.

Hmm, do you mean at once in the view ? Or for a full 3D world ?

/ Yann

[edited by - Yann L on November 6, 2002 3:52:13 PM]
my biggest problem is the worldcraft coordinate system
when i port it to ogl all my visability checks don t work anymore and right now i can t imagine how to convert my vectors
thats really annoying
http://www.8ung.at/basiror/theironcross.html

This topic is closed to new replies.

Advertisement