An autostereogram encodes depth through horizontal repetition. Each eye matches a different repetition of the same texture. The editor combines shapes, text and painted depth into a relative depth map, then constrains matching pixels to have the same colour. Texture colour itself does not encode depth.
Depth z runs from 0 (far) to 1 (near). Let R be the background repeat in output pixels. If the depth-strength control reads P percent, a = 0.2 ร P / 100. For parallel viewing, ฮผ = 2a / (1 + a) and the pixel separation is:
s(z) = round[2R(1 โ ฮผz) / (2 โ ฮผz)]
Cross-eyed viewing uses ฮผ = 2a / (3 + a) and replaces (1 โ ฮผz) with (1 + ฮผz). Nearer surfaces then have a larger separation. The renderer applies symmetric colour constraints row by row and tests for hidden surfaces before linking pixels. Image generation runs in a worker; editing previews use fewer pixels than a full-resolution export.
Depth is relative, not a distance measurement. Whole-pixel disparities can flatten fine depth changes, especially in small exports. Check detail marks changes that disappear at the chosen resolution. Photograph-based depth estimates are predictions, not measured geometry; their optional model runs locally after its first download. Design and Depth map provide direct views of the scene even when the stereoscopic effect is difficult to see.
Harold Thimbleby, Ian Witten and Stuart Inglis, โDisplaying 3D Images: Algorithms for Single-Image Random-Dot Stereogramsโ (1994). The editor adapts its correspondence and hidden-surface method with adjustable depth strength and a cross-eyed viewing mode. See Help for editing controls and Viewing help for viewing practice.