====== Terrain normals operations ====== ===== Generating the normals map ===== The [[l3dt:reference:maps:tn|normals map]] is required to calculate the [[l3dt:reference:maps:lm|light map]]. To calculate the normals, click on the '//Operations->Terrain normals->Generate map//' option in the menu. This operation will invalidate the light map and [[l3dt:reference:maps:tx|texture map]], and will only be greyed-out if no [[l3dt:reference:maps:hf|heightfield]] is loaded. ==== The 'normal mapping' wizard ==== If you are using //L3DT Professional//, you get hit with an extra wizard pane for normal mapping: {{ :l3dt:userguide:wizards:normals.png |:l3dt:userguide:wizards:normals.png}} The controls are as follows: === Apply bump-mapping === With //apply bump mapping// enabled, L3DT will combine the bump maps of the land types in the [[:l3dt:reference:maps:am|attributes map]] directly with the terrain normal map. This option is usually //not// enabled. Instead, bump-mapping is typically applied procedurally during the light-mapping calculation (via the [[l3dt:userguide:wizards:lightmap2|light-mapping wizard]]), as this provides the maximum bump-mapping detail. However, if you wish to do your own light-mapping in another program (e.g. in a 3D renderer), then you might want to use this option to take advantage of L3DT's bump-mapping routine. ===Generate tangent-space bump map === This option will generate a second terrain normals map layer, called "TN-Tangent", which contains the terrain normal vectors in the heightfield tangent space. These tangent space normal maps are not used in L3DT, but may be useful in some game engines / renderers. === Make high-res terrain normals === The //make high-res terrain normals// option allows you to generate the normal map at a higher resolution than the heightfield. The desired ratio of the normals map size to the heightfield size is given by the //TN/HF ratio//. This option is normally used when applying bump-mapping to the normals map for lighting/rendering in another program (see above). High-res normals are not required in L3DT, as they are generated procedurally when making the light map. === Split map into tiles === The //split map into tiles// option allows you to split the normal map into a //[[l3dt:algorithms:mosaics|mosaic map]]//, which reduces the amount of RAM used during calculations. The side-length of each tile (which are always square) is given by the //tile size// number. Large values increase your RAM-load, whilst smaller values increase your disk read/write load. A value of 512 is typical.