Content
- Requirements
- Configure Options
- Installation
- Command Line Parameters
- Blender3D Python Script
- Normal Generation Mini-HowTo
- Problems / Bugs
1. Requirements
required libraries to compile and use this tool are: - FOX-ToolKit: http://www.fox-toolkit.org - OpenGL (3D drivers needed)
2. Configure Options
--enable-debug (default=no):
enables debug mode which prints some information out to the console
during runtime. only needed if you intend to fiddle around with
the source code
3. Installation
'make install' does all the installation for you except the blender3d python script. this is located in the 'src/scripts' directory of this distribution and has to be copied into the 'scripts' directory of your blender installation (something like '<base-blender-dir>/.blender/scripts').
4. Command Line Parameters
(-)-help
Shows help screen
-noshader
Disables Shader Engine. Can be used if the 3d driver reports support
for pixel shader but for some reason the support is broken ( like
some ATI drivers have broken GLSL support for example ). Using this
option disables the shader and allows the app to run without live-preview.
5. Blender3D Python Script Usage
the blender script is used to export models into the *.dim format for usage with the normal map generator tool. to export a model you create a *.blend file which contains two distinct meshes. one of the meshes is the low resolution mesh. it has the suffix ".low" in the name and needs UV-coordinates. each material is considered to be one texture of the final mesh and has to have a disc texture image as its first texture channel. the size for the texture is taken from this texture image. all texture coordinates have to reside inside the boundaries of the texture. the model is considered to have normals smoothed no matter if it is set or not. for the high resolution mesh use the suffix ".hi" in the name. in this mesh all material and texture coordinates are ignored. you can have them if you need them for other scripts or projects and the script will not throw and error. to export the model select both the low resolution mesh and the high resolution one and select 'export' under the file option and the script. specify a *.dim file and save.
6. Normal Generation Mini-HowTo
to generate the normal maps just load the *.dim file in the normal generator. you can use different views to look at the meshes and maps. to orbit around the current view simply click and drag. to move closer or further away press and hold the shift key while dragging. to change the light direction press and hold the control key while dragging. the light is a directional light orbiting around the center of the object. the Low-Res-Mesh view does already apply the normal map (by default planar) and requires a Pixel-Shader aware graphic card to work. otherwise no live-preview is done. if you want your high resolution model to be subdivided go to the Hi-Res Mesh Options and select the sub-division level. the offset parameter is experimental and moves all vertices along the normal by the given distance ( in 1/10 mm ) before subdivision is carried out. this could be used if the model is slightly too small. by default the texture is sized to the dimensions stored in the *.dim file. you can change them though with the Texture Size command if you need a different value. it is not mandatory but using dimensions of powers of 2 are highly recommanded. done so you use the Generate Texture Maps command to generate a normal and displacement map for one selected texture. repeat this process for all textures you need a normal and displacement map for. once done you can preview your normal map in the Low-Res-Mesh view. you can also refine your normal map by applying a detail-normal map from file with the Apply Detail Normal Map command which is then merged onto the current normal map. this process can be repeated many times. finally save your normal and displacement maps one by one to disc.
7. Problems / Bugs
in preview mode after applying a detail normal map it can happen that the preview image looks blocky and gives the impression of the normal map beeing bad. this is a problem with 3d acceleration drivers that apply automatically compression to textures without noticing that there is a normal map which should be compressed lossless instead of lossy. this is only a visual glitch and the generated normal-map is ok and not affected.
the displacement/height map generation is still experimental and sometimes looks wrong. this will be fixed in an upcoming release.
