PDA

View Full Version : game instance limitations?


zwicker122
10-21-2009, 12:01 AM
Hi there,

I'm working on a low poly car model for a racing game. The limit is 1500 poly's for the complete car, including modeling under the panels that can come off during damage etc. I was wondering what the limitations of instances are in a video game, can a person model one wheel and instance the rest along with doors and fenders? or is it all dependent on the engine that is being used. This is a test so i have no info on the engine itself. Does a instance part allow the game to work the same as if it wasen't a instance?

Thanks for looking.
zwicker122

_vine_
10-21-2009, 02:09 AM
This is a little long winded, but I hope it helps to clarify instancing in games.

Pretty much every game engine I've experienced on PS1, PS2, Xbox, Xbox 360 and PS3 uses some form of instancing. They may not call it that, but anytime they are loading an object into memory one time and reusing it multiple times across a "level" they are instancing.

No matter what, you will still take a hit on rendering, because the polys are being rendered, but you are only getting a memory hit once per asset.

The catch with instancing something like wheels, doors and such is that you would save memory on instancing the exact same mesh combination. However, if you want to mix and match wheels and doors, more than likely, the mesh combinations will be "baked" either during the loading phase of the game or on the fly. Most likely the meshes and textures would be baked together into an asset package stored in memory. On some engines, you be able to do a combination of asset baking and realtime combination by finding the most common combinations of chassis assets and the most common combinations of wheels, rims, etc. and baking them into two assets packages that are then combined by the engine realtime.

This all goes I bit beyond what you are asking, but I thought I would chime in with it.

Regarding your poly budgets of 1,500 polys. I would consider 1,500 tri's as being the number you need to hit including instanced parts. As a mentioned above, you will take a rendering hit on ALL polygons and most poly budgets are based off of rendering performance or frames per second rather than memory budgets.

If the engine also has a memory budget constraint for meshes, it is normally given as a vertex count (ie your mesh can have 1,500 tris and only 800 vertices). The vertices are what the engine is actually storing in memory. The tri's are recalculated realtime by the gpu or cpu or spu.

I hope this helps somewhat and please let me know if I need to clarify anything.

zwicker122
10-21-2009, 02:33 AM
Hey Vine,

Thank you for the reply. it actually clarifies a lot more then what i asked. I've been looking online to find a explanation of what goes on in the game and had no luck. What you posted is more then enough and greatly appreciated.

The task asked for 1500 poly's with no reference to quads or tri's, so i was trying to model a 1500 tri car without instances and it was getting me nowhere with any detail. Which made me ponder the instance question.

I believe the model stays as is, without any in game modification with switching parts like wheels,bumpers etc.

If i'm reading what you posted right, if the model has no changing textures/parts etc. Then using instances would not be a problem.

Thanks again, greatly appricated.

zwicker122

CGTalk Moderation
10-21-2009, 02:33 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.