Overview
The entry point for turning hand-drawn art into 3D: it estimates a height map (white =
high) from an ordinary 2D image. Even a flat-color sprite can be inflated from its
silhouette for a rounded sense of depth. Use the output for lightingโsuch as the height
input of image_to_surfaceโor as a map for slope_blur.
Usage tips
- Choose the mode by source: flat-color art โ
Silhouette, which inflates from the outline; already shaded art โLuminance, which uses brightness directly as height. - Set the
Silhouetteshape withprofile: character or rounded object โRound; crystal or spike โLinear; brick or box โRoundplusplateauaround 0.5 for a flat top. - The go-to pipeline is
image_load โ height_from_image โ image_to_surface(Height input) โ surface_light_preview. It adds light and shadow to hand-drawn art after the fact. - The output is an Image, so it cannot connect directly to the Surface input of
surface_light_preview; route it throughimage_to_surface. - It is also useful as a map for
slope_blur, letting patterns flow along the shape of the artwork itself.
Common pitfalls
- Internal relief such as a recessed window is missing: Silhouette mode estimates
from outline information only (see "Limitations" below). Reuse painted shading with
Luminance, or draw the height map by hand. - The height is jagged: an anti-aliased input edge destabilizes the silhouette.
Insert
threshold(Alpha)upstream to create a clean binary silhouette. - The shape bulges when it should be recessed: turn
invertON to carve inward.
Technical details
- Silhouette: applies a chamfer 3-4 distance transform to the alpha silhouette,
creating a height field that rises with distance from the edge.
Rounduses a hemispherical cross-section;Linearis conical.plateaucaps the center at maximum height. - Luminance: reads pixel luminance directly as height, making it suitable for reusing already-painted shading.
- Alpha: reads opacity directly as height.
- Transparent pixels remain transparent in the output.
Examples
- Use
image_load โ height_from_image โ image_to_surface(Height input) โ surface_light_previewto light a flat-color sprite after the fact. - Turn
ๅ่ปขON to create recessed ornament or engraving.
Limitations
Because the estimate uses only the silhouette outline, it cannot represent internal
relief such as a recessed window in a house. Draw the height map by hand when internal
steps are needed, or reuse painted shading with ๆใใ mode.
Related nodes
image_to_surfaceโ incorporate the height map into a Surface for lightingquick_shadeโ beginner-friendly one-node inflation and lightingslope_blurโ flow a pattern along height-map slopesdistance_fieldโ when you need the distance field itself