I am using Blender. For large buildings that will need collision in the interior I had thought two ways to do it:
1- One object made out of one mesh (so all vertices connected)
2- One object made out of disconnectes groups of vertices.
For example, if I have my basic building and I want to add columns to it: in 1. I would have to connect the vertices od the column to the base building structure and fix N-gons and in 2. I would simply overlap one group of vertices (column) to the other (base building) without connecting the vertices.
I was wondering if 2. would cause problems in game? It would still be part of the same mesh but with disconnected groups of vertices.
would be way faster to generate but I worry about collision and textures.
There are tutorials that create cathedrals using 2. but they don’t use them in a game engine, so they don’t need to worry about collision.
Normally you want to split up a building into multiple pieces, making it into a modular kit? Are there any reasons why you wouldn’t want to do that?
You can manually create collision for assets in blender as well. It doesn’t have to be auto generated in Unreal Engine. If you prefix a convex asset in blender with UCX_ModelName. Have a look here: FBX Static Mesh Pipeline | Unreal Engine 4.27 Documentation
I think a modular object is a set of different meshes that work together. But I do not mean to have different meshes, rather one but with groups of disconnected vertices.
I meant to have one mesh only, but with disconnected groups of vertices. If I make a church and then overlap the column meshes where they belong, and then press Ctrl+J to merge the objects, I would have one object (mesh) but with different groups of disconnected vertices.
Obviously with custom collision it does not matter, since you set it up as you please. Anyway, I just wanted to know if this method I say would cause any trouble in general.
Hmm, maybe I am missing something, but your workflow doesn’t seem to be very clear or logical. In essence, when creating assets for a game you need to think about draw calls. Each mesh has a draw call and it increases if you add more materials to it. There is a function in Unreal Engine that allows you to combine to meshes into one, and for this you don’t need to have disconnected vertices.
Can I ask why you want to do it the way you describe? I can’t see any upside in doing it that way.
Let’s see I only have one mesh per building. But this mesh is constituted by groups of disconnected vertices. For example, a column may be a group of connected vertices and the ceiling may be another group of connected vertices, but between the groups they are disconnected.
In other words, no vertices from the column are attached to the vertices from the ceiling. The ceiling is just positioned above the column but disconnected. The reason to do this is that I do not have to worry about Ngons. If I wanted to connect the ceiling to the column i would have to worry about not creating Ngons.
As for the materials, I’ll use 1 material that will be a texture array, so 1 draw call only.
I do it like this because I was following a tutorial that does it like this, and it’s way simpler than trying to have everything connected. In the following video you can see that the author stacks up meshes without connecting them. I am doing it this way but merging all meshes as one using Ctrl+J (to have just 1 draw call) but they are still disconnected groups of vertices.