What we have to do now is to bake the scales_tiles.png
image map (used in all the materials and mapped on the UVMap_scales coordinates layer) on the 5 tiles of the UVMap coordinates layer.
At this moment, Blender is not able to bake automatically outside of the default U0V0 tile space yet, so a bit of additional work is needed; nothing particularly difficult by the way. The steps are as follows:
We are now going to create a new UV coordinates layer for the baking by moving all the islands in the outside tiles to the space of the default one; but before we go on, we must be sure about two things:
Go to the blank_U0V0 image editor window; if you prefer, maximize it (mouse cursor into the window and press Ctrl + Up Arrow). If necessary, press A to deselect all the islands.
After a while, the baked scales textures appear on the 5 PNG images, baked according to the UV islands of the 5 tiles of the UVMap layer:
baked_U0V0.png
, baked_U1V0.png
, and so on:Opening the texture_making
folder on your desktop, you will now find the baked textures:
As you can see in the information bar at the bottom of the GNOME image viewer (I'm working in Linux Ubuntu), each image saved from Blender is 37.8 megabytes.
The large size of the images can of course be reduced (a lot) by opening them in Gimp (or any other 2D application) and re-saving.
All the UV islands have been moved to the default U0V0 tile space, which is the only one where the baking happens, but because each image is associated with a different part of the mesh, each image is correctly baked with the right islands and textures.
In fact, inside Blender, and in our case, the location of each tile in the UV space doesn't actually matter; we made a new UV coordinates layer and kept the old one just in case the model should be exported to a different 3D application.
To move the islands exactly by the correct number of pixels, we enabled the Normalized item in the Display subpanel of the image editor N sidepanel to display the UV coordinates from 0.0 to 1.0, rather than in pixels. Anyway, without the Normalized item enabled, it would have been enough to move the islands by 3072 pixels, that is, the width (or/and height) in pixels of the assigned blank image.
As with any other software, Blender is not free from bugs; particularly, the baking section seems to have an annoying bug, which is very difficult to fix because it happens very rarely and randomly, so that it cannot easily be reproduced and consequently submitted to the Blender bug tracker (https://developer.blender.org/maniphest/project/2/type/Bug/).
It's difficult to understand the reason for this, but sometimes the software refuses to do the baking, claiming that No objects or images (are) found to bake to (the message appears on the top right main header and in the Terminal panel as well); in our case, this seems to happen when you switch the active for rendering UV coordinates layers.
If this happens, one thing you can do is check that all the images assigned in the UV/Image Editor windows to the different materials under one UV layer, also appear correctly assigned under the other UV layer (it shouldn't make a difference, but who knows), eventually re-assigning them one at a time.
If the baking still fails, there is a simple workaround; switch to the UVMap coordinates layer instead, rather than the UVMap_temp one, and just move the islands to the default U0V0 space and bake them one at a time. To do this, first bake the islands of the U0V0 tile space and save the image, then move the islands of the U1V0 tile space to the U0V0 tile space, bake and save as a different image, and so on with the islands of all the tiles.
3.15.219.174