Hey everyone,
I'm currently working on a 3D modeling project for a game and I'm wondering about the best workflow for attaching windows to a building. Should I merge the vertices of the window with the building (which would consequently add edges to the base of the building, making it a single composite part), or would it be better to create independent building foundation with windows as separate meshes (separate parts)?
I'm leaning towards the latter option as it allows for easier manipulation and modification of individual elements, but I'm curious to hear your thoughts and experiences on this matter. What workflow do you find most efficient and practical for game development projects?
Looking forward to your insights and suggestions!
Cheers!
Replies
separate things are relatively easy to combine, but once you combine it's more hassle to uncombine later if you need to. And for an environment kit for games, you have more flexibility to change position of windows if they are their own entity.
As far as the modeling goes, its way easier to keep things separate if you can, this way topology changes in A don't affect B.
separate parts is a generally a good idea for stuff like windowframes or anything relatively dense since you can re-use it an thus save memory / take advantage of gpu instancing (if your engine supports it)
there are situations where building things in a modular fashion isn't the best idea but I'd advise starting with modules and only combining them when you've proven it's a good idea to do so.
(if you don't know how to prove it doesn't work then modular is almost certainly the best idea)
- Some engines have problems with lighting when you have open edges on a mesh. You get light leaking.
- Some engines will be creating LODs automatically for your buildings. Having open edges can confuse the LOD algorithm and create a bad LOD.
- If your engine uses lightmaps it may be more efficient to connect the vertexes to each other to save on texture space.
- Some engines do not like overlapping polygons and have performance problems from drawing a mesh made out of lots of separate pieces. (eg Nanite in Unreal 5)
I'd suggest you create a test building and put it in-engine and test to see if any of the above issues apply.