About the 3D models for characters and buildings

Greetings, I have recently started using unity and I have a couple ofquestions about how to get started on some things, I hope I can find some answers on these topics to continue learning how to use Unity.

First, If I want to create a building (one to which you can enter, not just for decoration) what would be more convenient?
To create the whole 3D model of thebuilding or to create a model for every wall and ceiling/floor and then assembling it within unity. The second one sounds more convenient to me because so far I’ve only seen capsules and boxes for collision check (which wouldn’t work well with a model of the whole building).

Second, If I want to create a character who could hold different objectas (say, different kinds of swords) How I should go around the animation?
I would think of creating an extra bone with no vertices attached, and animate the whole model using that bone as if it was the sword and then, once in Unity, place the sword with said bone as parent.
This approach is just speculation and I have no idea whether it would work or not, so what’s the usual method of doing this?

And finally, I’ve seen that most people (based on tutorials I’ve seen) prefer to model characters’ hair and clothes as separate meshes.When doing a character for a game in Unity is there any advantage on doing so? or would I just be increasing my polygon count?

Thanks in advance.

  1. It is way better to create the building as a whole in your modelling application, and then import it. While working with individual walls and sticking them together will work, it will cause a lot more overhead. Whether that overhead is too much or not, is dependent on your project. You can always use a mesh collider, and use the building itself as a collision mesh.

  2. You could do that, or you could just make the sword the child of the hand itself. Whatever works.

  3. The advantage of doing this is that you can a) swap them out, and b) use all the texture space for that object. It doesn’t necessarily mean the polycount will go up. It does mean that there will be more draw calls, though.

Thanks for taking the time to answer.

I have one last (for now) question.

When making just one big mesh for a building, If I want to use different textures for, say the walls anf floor can I use two materials on the 3D editor and then import it? once imported, would the inspector show the two materials or textures? I’m not sure bwecause Ithink you can have just one texture per model.

Thanks again.

Normally what people do when they want to keep the draw calls down is to put all the textures together in one big giant texture (called a “Texture Atlas”). But don’t get too worried - It really depends on your usage if it is a problem or not. If you have only a few buildings, then it doesn’t really matter if you have 5-10 draw calls apiece. On the other hand, if you’re going to have a bunch of buildings, and your target platform is mobile devices, then you definitely want to keep the draw calls to an absolute minimum.

If you use different textures on a single model, the model will be split up into submeshes on import, and take 1 draw call per material. My opinion is to do what is easiest for your project, and then optimize if you find there is an issue.