As we’re porting our first level to Unity, I’d like to know what your recommendations are for level geometry. For instance:
(And please keep in mind when answering that our main concern is getting it to run on the average ancient computer (both Mac and PC) in public schools–roughly 5+ years old. Not all our customers have boxes that old, but it’s important that we keep it running for as broad a user base as possible.)
Should floors be built as planes to conserve polys or should they be built as cubes for better collision calculations?
What about walls?
What kind of density do floors need? For instance, if characters are 3 to 6 units tall, how big should the polys be that they are walking on to provide sufficient collision to support the character without being any heavier than necessary?
Simlarly, how does poly size affect the redraw speed? On some engines, too big a polygon will slow the engine down, but too many polys will also slow it down. What is the best balance with Unity?
I’ve read that we should group objects together to limit the total number of game objects, but how does this apply to floors and walls? For instance, should we group all the floors, walls, and ceiling of a moderately complex dungeon together or should we try to break them out separately?
Use planes. For static geometry that is as good as boxes for the physics simulation.
Same.
The collision detection against meshes is extremely robust.
There is no upper or lower limit on what will make simulation more or less stable.
If you use fewer polygons it will run faster of course.
A good rule is to group all close by meshes that share a texture so that you end up with around 1500 triangles per mesh.
For best performance on old and new machines make sure that most of your level geometry is combined. If performance is important to you. You should make sure that most of your geometry is combined into meshes with around 1500 triangles.
Best is if you group all close by geometry together into meshes with 1500 triangles and make them share the same material.
Is it still going to be beneficial to group the polys up to the 1500 limit even if much of the object will not be visible? For instance, I could probably group all of the walls into a single object, since they share the same texture, but then half of the room would easily be behind the character and invisible at any given time.
Would these polys behind the camera still contribute to the frame processing because they’re in the same group?
For what it’s worth, I’ll probably be able to fit this entire dungeon into 1500 polys, but I’ll have to split it up into multiple objects since there are at least 4 or 5 textures.
Will the 1500 rule apply to really old graphics cards, or is it possible that they will like smaller groups better?
In your particular case. I would combine the mesh for one entire room.
Of course if you artwork is split into multiple textures then it is convenient to do more splits. It comes at a slight performance hit, but if you don’t have that many meshes in your scene total it’s not a issue.
For very old cards the hot spot for mesh size might be slightly lower around 1200.
hey ben, i dl’d the timez attack demo a while back. it’s a cool game. nice job on it! hate saying this because i know you’re trying to earn a living but sorry - haven’t bought it yet. my 5 year old likes it a lot. problem is he makes me play it as he’s not quite to multiplication tables. he’d have me playing for hours (days?) if we had the full version! i’m sure we’ll be a customer when he’s a little older. right now he’s just starting to count by 5s - though he already can tell you what 4096/512 is!
anyway… we play it on a 1ghz laptop running XP with 64Mb inteligrated graphics (forget exactly which, 82511 or something like that) DX9 installed and 256Mb RAM. runs very well. i have to think you’ll be ok on older machines with how your original geo is set up. i’d suggest trying a level on an older machine before going through the trouble of recreating everything. it doesn’t seem like the game is so complex that it should be a problem - unless you’re changing it a bunch.
Glad you like the game–and no worries using the free version. We intentionally made it powerful so that folks don’t have to upgrade if money’s tight. And yes, I’m hoping that it won’t be too tough to switch things over to Unity. We’re justing doing our initial test to make sure this is the technology for us before we make the big leap.
I also think that moving forward Unity’s going to be much easier to design with. We’re mostly just trying to figure out if there are any huge limitations that we haven’t considered before.