quick-normal-map
Takes a 2D heightmap stored in an ndarray and generates a matching normal map.
Uses a method that is fast, but less accurate - I believe this approach works best :)
Usage
normal(heightmap, [options])
Generates a normal map.
-
heightmap
should be a 2D ndarray, where each value corresponds to the height at that point. -
options.output
is an optional 3D ndarray to output to. If not supplied, one will be created. It's essentially the same size as the heightmap but with an added dimension for X/Y/Z rotation values. So the shape of this ndarray should be equivalent to:heightmapshape0 heightmapshape1 3 -
options.xzscale
The scale of the horizontal planes. Defaults to 1. -
options.yscale
The scale of the vertical plane. Defaults to 1. -
options.wrap
a boolean for whether the heightmap is tiling and the normal map should wrap around the edges. Defaults to true.