Normal map creation from diffuse textures

There are several occasions when we need a tool/process to create normal map textures.
We can do that in various ways.

1. We can make normal maps from high-poly meshes to give additional detail to a low-poly mesh (commonly used for game characters and objects to achieve better performance with the ‘same’ visual quality). This method is called ‘Normal Map Baking’.

2. We would like to create a normal map for general purposes without exact and object specific  UV mapping  information – texturing walls, ground, rocks, trees, etc.
In this case ‘baking’ could be time consuming and – in general – simple not required for our goals.
Continue reading