Best Practices - Game Assets - Single Mesh vs Multiple Merged?

Is there a best practice surrounding using a single mesh vs multiple meshes and merging? For example, let’s say I’m going to build a very detailed house that has a variety of geometry all around the outside of it (e.g. a hexagonal tower, framed windows, roof shingles, chimney).

The easiest way for me to pursue these various shapes would be for me to create them out of a variety of different primitives that I’ve detailed to look how I want and then joining together. Is this an acceptable way to create a more complex game asset or is it best to create from a single primitive editing the shape?

I often find it to be tedious and much more time consuming to try and create from a single mesh. Additionally, I tend to make more mistakes that are difficult to recover from and more often then not scrap the entire thing I was working on.

What are your thoughts?

p.s. If merging is acceptable is there an easy way to find and remove unnecessary vertexes/geometry? Specifically stuff that is inside the overall object?

2 Likes

It is a common practice to build parts apart and combine them together in the end phase. Many students use this technique to build environments for games. But it takes also some preparation, like scaling and dimension of things. Use metrics and stick to it. Look at them as LEGO bricks. They fit always but under certain conditions.

Also, this technique allows you also to use low-poly and high poly. Use Low poly to make a rough composition and replace parts with a high poly version. We called this “Level Of Details” (LOD).

This process is explained in courses explained by Michael.

PS. Mostly you do not merge, but use a parent-child relationship to manage this (empties are very useful here). Because merging meshes will influence UV-maps and materials definition (nodes).

3 Likes

Unfortunately there is no one right answer for your question. In terms of modelling - do what you find the most convenient and efficient. You can always combine objects before exporting to the game engine. FedPete’s advice here is very good in my opinion.

In terms how you export your models to game engine depends on many factors. Fe., what is your target platform (e.g., for PC you can have more meshes, but overall draw calls are expensive), what’s the game engine you use (some are draw call bound, some are total triangle count bound, some can do automatic or semi-automatic instancing, etc.), how much other stuff is going on (e.g., if you have 100s of characters running around every single additional draw call is costly), how much modularity you need in game engine (sometimes you want more flexibility to assemble final level, sometimes modularity is a flaw and hinders your progress in building levels), etc.

If you are just starting out I would follow general advice given in the course, keep number of meshes while exporting based on your “feeling” of needed flexibility (but keep them to minimum). If you gain more experience you’ll get better feeling what’s right for your game… or if you encounter some performance problems you’ll profile your game and find where the bottlenecks are. I wouldn’t spent too much time figuring this out (as there is no single one correct answer).

As a side note, making game takes a long time - so before you are done maybe the constraints will be much different than they are currently (e.g., unreal engine 5 might reduce the problem of no. of triangles for static meshes significantly).

3 Likes

Privacy & Terms