3
$\begingroup$

I am making a blender model of a Living room. Inside of this Living room, I have several objects that can be used not only in that Living room, but in other kind of rooms. For example, I have:

  • LivingRoom.blend ==> Basic walls structure, floor, ceiling.
  • Television.blend ==> A complex model of a TV.
  • Statue.blend ==> In this blend file, I sculpted a Statue.
  • Couch.blend ==> The design of a couch
  • And so on... (Lamp.blend, Fan.blend, Painting.blend, Extinguisher.blend, ... you get the point!)

The main file, as you guessed, is LivingRoom.blend, inside of which I will be appending all the others. As I said before, I did it this way because those other objects will be reused in other parts of the house (like in the Kitchen or in the Basement, for example).

I need to Unwrap AND create a Diffuse Map + Normal Map + Specular Map for each object.

But I am presented with an elementary question: should I UV Unwrap + Texture all files in separate Texture files? These objects are to be used in a Game Engine like Unity. So I have two options:

  • Creating an Albedo.jpg, Normal.jpg and Specular.jpg for all objects. Downside of this method? I would end up with 3 maps for each objects, and the number of textures would increase quickly (in this case, I would have 3*8=24 texture JPG files).

  • UV Unwrapping + Texturing all files ONCE they are inside of the same .blend file. Drawback of this method? I would end up with an extremely messy UV Map and giant Texture files. Furthermore, I think I would lose quality/control over each element separately later on (although with Texture Painting I think this last problem is under control).

I want to clarify this question is a possible duplicate of another question of mine, where I didn't get any quality/useful answer. PLUS, this other question includes texturing also.

Thank you!

$\endgroup$
4
  • $\begingroup$ To get better answers please do not repeat the same question. Edit the original question to clarify your intentions. Please read: What should I do if no one answers my question? $\endgroup$
    – user1853
    Commented Oct 7, 2016 at 16:28
  • 4
    $\begingroup$ Possible duplicate of Unwrapping all objects inside of the same UV space $\endgroup$
    – user1853
    Commented Oct 7, 2016 at 16:29
  • $\begingroup$ Have you even taken the time to read the end of my question @cegaton? $\endgroup$ Commented Oct 7, 2016 at 16:34
  • $\begingroup$ There I explain how this question is different from the other. This is about texturing multiple objects and/or appending their texture maps into one VS creating a sole, giant texture file. The other is about UV Unwrapping. Neither of these 2 questions have come across with a valuable answer. Not yet at least. $\endgroup$ Commented Oct 7, 2016 at 16:36

1 Answer 1

4
+50
$\begingroup$

For re-usability sake I would advise texturing and unwrapping each object separately and independently.

That would make it easier to recycle assets for future projects without bringing useless information attached.

You could then reuse only say the Fan and Statue asset in another project easily without bringing the Normal and Specular data of say the Extinguisher and TV and every other object with it, needlessly being loaded into memory and possibly ruining performance of your scene.

It will also make it a lot easier to edit each object separately without having to worry about overlapping the UV space reserved of any other asset, and recalculating UV, or Normals or baking data without having to bake all of them.

If you are absolutely sure this is the final version of your assets, you won't be editing or improving them more in the future, or you plan on always using all or most of the assets at once in all projects then it might be worth the hassle.

If performance or available memory is really a strong concern (say mobile platforms, low end devices, etc.) it may also be worth the trouble of joining them all.

I am not in the game making industry, and this may of course be a bit of a subjective matter, so opinions may vary.

EDIT: An additional concern may be object variations, or like if you want to modify only one single object.

Say you have a red extinguisher, but now you want a yellow one, or worse want to used both in your scene simultaneously. Now you have to edit the texture with all objects lying around; and if you want to keep both colors you now have two huge duplicated textures, which will have to be loaded entirely into memory just for a small part of one of them.

$\endgroup$
8
  • $\begingroup$ Mmm, interesting points that you brought under discussion, e.g. I didn't account for re-usability. Say that I had them all joined in one .blend file (for example, suppose I have the Fan, Statue, Extinguisher and TV appended inside of LivingRoom.blend). If I ever wanted to change the textures/maps on, say, Fan.blend, I would just open the big file (LivingRoom.blend), focus on that object only (hiding the rest of them), and save the whole scene again/generate the whole maps again. What would be wrong with this approach? $\endgroup$ Commented Oct 9, 2016 at 19:01
  • $\begingroup$ If you want to change the textures on the fan then you would not be working on LivingRoom.blend, you would most likely be working on Fan.blend (unless you append which would kind of defeat the purpose). Unless I misunderstand you would also not 'focus on fan', you would then be editing a huge texture map with textures from all other objects at the same time. Nothing wrong with this approach but it fells a lot more error prone. $\endgroup$ Commented Oct 9, 2016 at 19:22
  • $\begingroup$ Updated answer above about the concern of object variations $\endgroup$ Commented Oct 9, 2016 at 19:30
  • 1
    $\begingroup$ In that case it may sway the decision to the opposite direction, if memory is a serious concern then it might be worth the hassle of keeping one giant mega texture. Workflow wise it will be a lot more painful, but performance wise it may be more than an advantage, maybe even a requirement $\endgroup$ Commented Oct 9, 2016 at 22:38
  • 2
    $\begingroup$ For mobile games you will want to atlas textures together as much as possible to reduce drawcalls. But on mobile you can pretty much forget about normal maps, most devices have no support or just run very slow. Mostly its just diffuse/glossy fallback shader. On PC you nearly always make individual objects and fine tune them in Unity because you will want to use many different shaders. This question is impossible to answer accurately if you don't know what you are making. $\endgroup$
    – kheetor
    Commented Oct 11, 2016 at 5:47

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .