Latest:
Unity:
Original Post:
Hi there folks,
In the past few days I've been reading articles and tutorials on modularity.
I started planning my own modular set, and trying everything I've read about.
I have a question about the texturing of the set. I saw that a lot of people like to create the texture and then unwrap the modular blocks accordingly. Which is a great way to save memory and time, but I thought that breaking a model into a lot of UV islands isn't a great practice, is it true?
Also, I plan to create a texture for every block and then make an atlas texture by just packing the textures side by side, is that a good idea?
My target platform is PC.
Thanks in advance,
Michael.
Replies
Probably should have posted this in the technical talk subforum btw.
Yeah, sorry about the wrong forum
You only create more verts, if the UV seam wasnt a hard edge already. Otherwise it is free.
The reason people like to texture an atlas, and then unwrap to that instead of unwrapping and baking the unique object, is for it to be reusable. When your normal map is flat, instead of full of gradients, you can also bend it to your will and overlay it on everything.
Basically, you just get a ton more value out of 1 texture than you would otherwise do.
Am I understanding the question correctly?
Now I just need to figure out what would be the best workflow for me.
I'm still kind of in favor of making a model then unwrap it and then texture.
I wonder in I can take the biggest blocks on every "theme" and model > unwrap > texture those, as they have the most amount of detail. Then overlay the smaller blocks on that atlas.
Walls (pink), big blocks(blue), garden thing(~orange), glass floor(red) (can be viewed from bottom and top, can float in air).
I plan to create a high poly for the big ones, then use that unwrap the smaller versions accordingly.
What do you guys think?
P.S. these are just blocky representations of the actual modular pieces, so basically just dimensions.
For instance, with your last pic, let's just assume the sides will be some kind of concrete texture and the main top flat part will be another texture, such as pavement.
You would want to create a tileable concrete texture and a tileable pavement texture, for a total of 2 tileable textures. Then you can apply them appropriately to the right sections, regardless of the differences in the mesh. This will give you the best results for texture reuse.
What you don't want to do is try and make a unique texture for one object and try and have that unique texture applied to different sized objects with different sized UV's. Even if you try and match the UV's up, your texture texel-density will be different and there will probably be stretching.
Now, if you want some unique areas that you don't want to be tiled throughout you could look into using a decal or blend materials, or just have that section be uniquely unwrapped and textured.
The best way to learn is to just give it a shot!
Here my attempt at unwrapping the big block (after I defined the shape a little more), basically I modeled it so that I can properly straighten it in order to avoid anti-aliasing.
It's made of 3 uv islands: corner, middle long part, and 1 quarter of the dirt area.
In order to save texture space I have to divide the whole thing into quarters so that I can tile the huge dirt area.
I'm aware I could just break the long part into 2 halves and make a perfect quarter, but I thought I might want asymmetrical detail, and more space for the other pieces to use this texture.
I was looking at the Mass Effect 3 piece for reference (bottom of page). (My texture is purely to see what I can do with unwrapping, by no means a final texture)
As expected the top of the corner in skewed but If I don't put anything that should be very straight or of an expected shape, it's not very noticeable.
The texture sheet size is 1024, but as you can see atm, I only use a small portion of it.
I plan to model and unwrap all other pieces of this set onto this texture.
Please tell what you guys think, perhaps there's a better way.
Progress: All of the blocks use the above texture. Now for the high-poly.
**I ended up mirroring the long part so that the scaling would work properly.
Unity: