1. Load a useful source
Choose a PNG, JPEG, or WebP image. A clean grayscale height map is the most predictable source. An evenly lit color texture can work for blocking, but shadows, highlights, text, and color-only boundaries may become false height. The built-in sample lets you understand the controls before using your own artwork.
Files larger than the free 2K limit are resized in the browser. The status strip reports the working dimensions. No local generation request uploads the source.
2. Tune derivatives and direction
Start with Sobel, moderate strength, and a small blur. Switch to Scharr for stronger diagonal response. Use wrapped edges for a texture intended to tile and clamped edges for a standalone image. Invert height if bright and dark represent the opposite elevation from what you need.
Choose OpenGL or DirectX before evaluating the final lighting. Engine presets set a documented starting convention, but the destination import settings remain authoritative.
3. Inspect every output
Use 2D tabs to inspect normal, height, AO, and roughness separately. Move the 3D light and switch between plane, sphere, and cube previews. A plausible result should remain stable as the light moves, without broad clipped regions or an obvious line at a repeating border.
Quality checks flag non-power-of-two dimensions, flat normal response, clipped grayscale values, edge mismatch, and the selected orientation. They are warnings for review, not a claim that the texture is physically measured.
4. Export and verify in-engine
Download one PNG or an all-map ZIP with a consistent filename stem. Import a small test material in the destination engine before processing a full library. Configure normal-map color space and compression in that engine, because those settings depend on its renderer and target platform.
For batch and 8K local production, use Pro Local. For scene-aware depth or model-generated material repair, use AI credits and explicitly approve the external upload for that job.
5. Save and reuse purchase access
A paid checkout returns a 256-bit recovery credential on the secure return page. Save it in a password manager when it is shown. Normal Map Studio stores only its one-way hash, not the readable credential, an email address, or card details.
If cookies are cleared or you move to another browser, open Pricing, enter the same credential under Restore a purchase, and reconnect that purchase. The credential remains reusable for legitimate recovery; a full refund revokes it across every linked browser.