Visual decoration drawn alongside the projected geometry — a
translucent backing panel and a standard technical-drawing title
cartouche.
Two thin specs that round out the technical-drawing look of a
buildDrawing call. Both sit on top of the projection plane
and are never clipped, hidden, or pickable — chrome is not part of
the source model.
PanelSpec — translucent backing quad behind the line
work, optionally textured via a procgen.paintMaterials
painter for a procedural paper / parchment surface.
TitleBlockSpec — heading row plus labelled LABEL | value
rows, sized to a fraction of the frame width and pinned to its
bottom-right corner.
The panel.paint painter is a zero-arg callback that returns a
MaterialMaps triple from procgen.paintMaterials
(colour + normal + metallic-roughness). The projector creates the
three textures and a SceneMaterial
inside the target SceneModel and binds the panel quad to it via
triplanar mapping (the quad carries no UVs).
The painter is invoked once per buildDrawing call. Cache the
returned maps yourself if you're projecting onto multiple faces and
want them to share one underlying texture set.
Drawing Chrome
Visual decoration drawn alongside the projected geometry — a translucent backing panel and a standard technical-drawing title cartouche.
Two thin specs that round out the technical-drawing look of a buildDrawing call. Both sit on top of the projection plane and are never clipped, hidden, or pickable — chrome is not part of the source model.
procgen.paintMaterialspainter for a procedural paper / parchment surface.LABEL | valuerows, sized to a fraction of the frame width and pinned to its bottom-right corner.Usage
Chrome is passed inline to buildDrawing:
Textured panels
The
panel.paintpainter is a zero-arg callback that returns aMaterialMapstriple fromprocgen.paintMaterials(colour + normal + metallic-roughness). The projector creates the three textures and a SceneMaterial inside the target SceneModel and binds the panel quad to it via triplanar mapping (the quad carries no UVs).The painter is invoked once per
buildDrawingcall. Cache the returned maps yourself if you're projecting onto multiple faces and want them to share one underlying texture set.