Polygon count in your games


I would like to ask everybody experienced with Panda3D which criteria do you follow when modelling objects to be used in Panda3D to determine which is the best polygon count to use for actors, static models like buildings, and environment.

My game, which should be a 3D version of a MUD (a sort of MORPG, we could say), must be able to render vast landscapes but also towns and indoor environments, with a good number of characters (up to 30) shown on screen at the same time. Not easy, I know. Should I just try to experiment, trying to balance all these different needs, or are there some rules you follow when making your games?

hi there, it’s me again :wink:

well this is of course balancing. but there are a few rules to avoid hitting your performance too much.
for characters. todays hardware can eat quite a lot of vertices and triangles. since you’r targeting older hardware you might be better of aiming for a little less.
details depends on how close you can see a object. if you keep a few meters distance (about 2 or more) from your player you should be fine with 1200 vertices or less. maybe even 500 or 800 might still be enough. thats something to try out =). go as low as you can while keeping your “look”.
800;1200;1600 might be good values to start. using LOD for further away characters is another way to improve performance while still having

outdoor levels greatly depends on the fiewing range and ground resolution.
between 0,5 and 4 meters ground resolution for “normal” landscape should be ok. (mostly between half and the double of the characters heigh is a good start). half the resolution= double fiewing distance (without plants or anything… well these can use LOD)

houses are a little different. most of the the time you sould be fine without anything special… if you run into trouble you can reduce the fewing distance when the camera is inside a house or a city.

the only real limit if it comes to vertices is afaik at about 65000 per object (not per whole scene).ther is no lower-limit but it’s not good to have thousands of 10-vertex objects. flatten them together if possible should be done (if they are static and and not miles away from each other(due to clipping)).
usually graficcards have a “recommended” vertex-count per object.
my gf4ti4200 has 4096. so you are ok of you target between 1000 and 3000 vertices per object itself or flattened together group of objects.
landscape should be ok with 32x32 (for old hardware) or 64x64(for normal hardware) vertices per piece (no matter if you model them this way,let them create from a heighmap , or flatten them together from smaller pieces). well of course you can use 128x128 terrains, you might not even notice a difference.

so the rules are :
try to keep each object or flattened group below 4000 vertices (but maybe above 500).
try to avoid lots of objects/groups with just a few vertices (flatten them together&make shure you flatten the geometry and not only the nodes when using the flatten command in panda)
try to keep vertex/polycount itself as low as possible while keeping your targeted “look”

it’s no must to keep them, you can of course make small objects and not group them, this is sometimes unavoidable. but for most of the rest this is not too bad.
if you run into trouble with these or have question… fell free to aks =)

PS:another much too long post… sight :smiley:

Thomas, I do not know how to thank you for the detailed, professional answer, once again. I think I will put together a book just with your suggestions!


you’r welcome =)
please make the book open source… maybe GPL license :wink:
strange enough that I never read such a book… :unamused:
perhaps i should set up a 3d-sevice hotline :smiley:

well after all. knowledge is still useless if its not used.
glad i could help
thomas e

Hehe, of course.

P.S. I love Chobits, too!