I am trying to make a series of simple buildings in Blender using several different materials. I will illustrate the problem I am having using a cube.
I would like to Bake a composite texture using the layouts in each of the UV maps I have.
I have assigned materials to the cube faces and laid out their respective UV maps in the following way:
- One "wood" face at 1:1 scale
- Two "thatch" faces at 1:1 and 1:2 scale
- Three "stone" faces at 1:1, 1:2 and 1:4 scale
The materials are set up in the following manner: The BakeOutput group is a single image texture node that is used to specify the Bake output so that I can change it for all materials. The mapping node is there to allow me to easily change the scale of textures on the whole.
I made a new UV map for each material, then unwrapped the faces that use the material to the new UV map and adjusted the scales, like so:
The cube now looks as I'd like it to, with some faces at different scales to others. This is the intended result effect.
This is where I'm getting confused. At this point I would like Blender to bake me a composite image that combines the materials I have used with their respective UV layouts, avoiding duplications.
Currently if I unwrap the object to the default UVMap and run a diffuse color bake Blender will produce the following result:
There are a couple of problems with these results.
First question: Why are the scales are off? We can see that all three stone sections are the same size even though I set them to different sizes in the Stone UVMap. What should I do to get Blender to take these sizes into account?
Second question: How do I remove the redundant textures? For example the stone section could cover a full 1/4 of the final texture size and the UV's could simply overlap and have different sizes as they do in the Stone UVmap. That data is available to Blender in the UVMaps, how do I make it take note and lay out the final image in a more logical manner? I guess I'm hoping for something like the result below which is more efficient and results in a higher quality texture. Is this possible to do?