TexTools 1.4.4
BAKING
More reliable routines.
- Restructured code. Implemented a Try -> Finally structure to prevent data loss in case of error during the bake process.
- Avoided Circular Dependency when the image-to-bake-on is present in the blend file and used in the node tree of the materials that take part in the bake process. Two methods were used to take into account whether the image-to-bake-onto exists externally or only temporally inside the blend file.
- Added option in preferences: "Device for baking" (CPU, GPU or Default)
- Added option in preferences: global "Bake Color Space".
- Selection mode is now restored.
- Certain bake modes can now be performed without a material in the baked object.
- Baking can be now performed on the active object while in edit mode whether it is actually selected or not.
- Support for certain bake modes that don't need a Principled BSDF node for baking, like Diffuse of Roughness, to bake with any material Surface type.
- Glossiness is working correctly now in all scenarios.
- No more sloppy changes on baking-mode and UV editor image background when selecting an already baked texture from the list.
- Removed use of "temp_sets", duplicate baked objects materials to avoid restorations after relinks, discards.
- Optimization when baking custom modes (modes using a "material_loaded")
- Faster and cleaner poll messages.
- Remove and unlink material_empty and material_loaded when the bake of all sets is finished for no more hanging materials in the blend file after a bake. As a downside, they have to be created/imported every single time in certain scenarios (custom bake modes like material_id, cavity, etc, and lowpoly meshes in high-to-low bakes that wouldn't have a material). It's fast, though.
- Bake mode "Element ID" no longer delivers repeated colors when baking multiple objects.
- Added samples property to "Combined".
Last planned baking modes.
- Bake modes added: Thickness, Combined, Shadow, Environment and UV.
Thickness baking was originally coded and illustrated by renderhjs, credits to him.
The other added baking modes were already included with Blender and were lacking in the addon until today.
Extended controls in baking.
- SSS Color, Sheen, Sheen Tint, Transmission and Alpha affect Diffuse, and it would continue being like this for the sake of energy preservation. Base Color and SSS color bakes are no longer affected by this situations.
- Alpha value has been affecting all non-custom, PBR bake modes, except AO. Even itself. Now, there is an option in the addon Preferences to ignore the Alpha value when baking (except for Diffuse), and it's no longer affecting itself.
- Emission bake was affected by the Emission Strength, while both could render in values beyond 1. There is a new option in the addon Preferences, "Ignore Emission Strength when baking Emission", set to True by default. To take advantage of the previous situation, unset that preference and save the baked image in a file format without dinamic range clamping like EXR.
- The Transmission bake is affected by the Base Color, the Metallic and others. If you want to avoid this, uncheck the new "Ignore other channels when baking Transmission" option in the preferences (Alpha would still affect it if "Ignore Alpha when baking other modes" is unchecked); this has the downside of requiring all materials in the bake to have a Principled BSDF Surface type.
TEXEL DENSITY
- Added enum to select the Texture Dimensions to consider when getting or setting the Texel Density value: from an image present in a material for each object (default), a specified baking resolution (TexTools tab > Size), or from a list of common sizes.
- Texel Density was working on the mesh selected faces, but it should be working by design in the UV selected faces. From now, when getting -> setting the texel density over a single selected UV face/island, it would work as expected: its size will stay unchanged in any context.
- For anyone used to the previous behaviour of the tool: it works as before if UV Sync Selection is enabled.
- Texel Density Get and Set in Object Mode will continue to behave as before, operating over all faces of every selected object.
- The total area of every face is now calculated for better accuracy, and not only a random triangle per face, that could be heavily distorted or have zero area and thus make the script fail.
COLOR ID
Vertex Colors mode.
- Added mode in Color ID to directly assign ID Colors as Vertex Colors to objects or selected faces.
- Existing Vertex Colors layers will be respected from now, as a layer named "TexTools" would be created when using Color ID utilities "Assign Vertex Colors" or "Convert to Vertex Colors", and it would be the one deleted when using Color ID Clean.
- Smarter automatic changing of context (view and active panels) when switching modes within Color ID.
- Don't automatically delete colored materials when converting to Vertex Colors.
- Fix label in Color Select.
EDGE PEEL
- Fix error in Edge Peel if UV Sync is enabled.