Overview
Draws a pixel-art outline on a Surface. Unlike ordinary outline, which uses
only the silhouette, this node uses depth and face IDs to draw internal 3D edges
such as box corners and roof/wall boundaries. It is a go-to downstream step after
solid rendering.
Usage tips
- It belongs in the standard chain:
solid_render → surface_edge_highlight → surface_outline → surface_light_preview. It quickly makes a 3D-derived image feel hand-pixeled. - Outer and internal lines (depth lines and face boundaries) can be adjusted independently. Start with the silhouette, then add internal lines only if the form still lacks depth.
- Use ordinary
outlinefor an asset that is only an image. This node is specifically for a Surface carrying depth and face IDs.
Related nodes
outline— image-based outlinesurface_edge_highlight— upstream bevel counterpartsolid_render— supplies the Surfacesurface_light_preview— reviews the finished resultProcesses only albedo and passes every other map through, preserving the accuracy of the G-buffer.
Technical details
- Silhouette: four-neighbor boundary between opaque and transparent pixels. Inside replaces the edge on the opaque side; Outside adds pixels on the transparent side.
- Depth line: drawn on the nearer side when neighboring depth-map values (white = near) differ by at least the threshold.
- Face boundary: drawn along right/down boundaries where
face_idschange, avoiding double lines. - Pixels added by Outside receive flat normals and neighboring height/depth values to prevent artifacts in downstream lighting.
Examples
Solid Render → Surface Outline → Surface Light Preview creates an outlined isometric block.