Baking normal maps in Blender

Software:
Blender 2.79

Normal Bake

1) In the render Tab, under ‘Bake’, select Bake Type: ‘Normal’, enable ‘Selected to Active’, and set Ray Distance large enough to cover the geometry.

2) Make sure the target object has an active UV channel

3) In the UV/Image editor, create a new image with the desired resolution, and name it.

4) In the target Object’s material, set an Image Texture with the new image you created, make sure the Image Texture is node selected in the Node Editor of the Target Object’s material view, so it will be the target for the baked texture.

5) In the render Tab, under ‘Bake’, press the ‘Bake’ button.

6) Set the image texture as the materials Normal Map, check if it’s effective and save it to disk.

Lamp_Shaded
Model on the left is a 1.5 million triangle 3D scanning of an archaeological find, Model on the right is a 4000 triangles retopologized low poly model with geometrical details baked into a Normal Map.

Lamp_WIre

Non-Color texture data in Cycles render

Software:
Blender 2.78

When loading texture files into a Cycles Image Texture node, it’s a good idea to take a moment to set the Color Space parameter correctly.
This parameter sets how the color data is intended to be used in the shader, that is, if it will be used as ‘Color’ like a Diffuse texture for example, or as ‘Non-Color Data’ like a Normal map texture example.

NRM_Wrong

NRM_Correct

The reason behind this is that texture data encoded in sRGB color space (JPG, PNG,..) intended to be used as color should be ‘linearized’, that means the gamma correction sRGB files are automatically encoded with should be removed, so the the color data will represent linear color values suitable for the processing of shaders and compositing the final rendered image*,
While texture data intended to be used as data like height or direction or percentage, shouldn’t be linearized, assuming that the colors were saved without adding a gamma corrections to them.

A common example of that is when using a normal map stored in PNG format,
When the Color Space parameter is set to ‘Color’ the resulting bump normal might look wrong, and also display hard edges along UV coordinates seams.
Setting the Color Space to ‘Non-Color Data’ will solve the problem and interpret the bump normals correctly.

> usage of a texture as input for a non-color parameter like displacement will automatically use it as linear color.

> 32 bit float formats like exr are automatically interpreted as linear color by the renderer (the viewport material display will still show a differance so it’s better to set it to ‘Non-Color Data’ anyway).

> It should also be noted that Blender has two parameters controlling the interpretation of an image file one in the Image Texture Node that controls the color usage, one in the Node properties that controls how the file format is interpreted,
And also general color management settings that control the display of colors and saving of image files.

> It should also by noted that I’m still baffled by Blender / Cycles color management.. 🙂

* Linear color is also suitable for post rendering / post production compositing for image development and VFX.

Creating text height maps in photoshop

Software:
Photoshop CC 2017

When you need to create a 3D title that looks carved in stone by using a height map or normal map of the text design,
And you need to have the titles remain as live text in Photoshop so that you can easily make changes to the text if needed,
A simple way to make turn the text into a height map that would look carved or beveled inwards is to apply an inner glow effect and choose the “Precise”option in the “Technique” parameter of the effect.
Beveled_Text_Height_map