Projection
Place content in space as a canvas-anchored layer (Screen) or a projection through a camera (Camera), and output a field mapped to that space.
What it does
Projection places content, an image, a shape or a Distance Field or Volume, somewhere in space. Screen mode pins the content to a rectangle on the canvas that follows the viewport camera, like a projector gobo. Camera mode locks that same rectangle to a specific camera, and for a flat image or shape it turns the content into a real card in front of that camera, solid enough for a ray or a physics object to hit. The remaining modes wrap the content onto 3D surfaces (Planar, Box, Cylindrical, Spherical, Triplanar) or read a mesh's own UVs (Surface), for driving materials, Volumes or Distance Fields.
The node has two outputs, and only the wired one is computed. raster gives a placed layer for the compositor. field gives a space-mapped field for anything 3D that samples it: a material, a Volume, a Distance Field falloff.
When to use it
A projector, gobo or decal effect, where an image or shape stays screen-locked as the camera orbits: Screen mode.
Content locked to one camera's viewpoint regardless of viewport movement: Camera mode with a camera wired in.
A flat image or shape as a real object in the scene that other things collide with: Camera mode, a wired camera and a
distance.Content wrapped onto a wall, a cylinder, a sphere or all faces of a box: Planar / Cylindrical / Spherical / Box / Triplanar.
Content stuck to a mesh's own surface UVs: Surface mode.
A placement rect that tracks a moving point in the 3D scene: Use World Point.
| Parameter | Type | Default |
|---|---|---|
content_in | OneOf([FieldOf(Color), FieldOf(Volume), Collection]) | — |
space | String | "Screen" |
projection_axis | String | "Z" |
camera | Camera3D | — |
position | Vec2 | (0, 0) |
scale | Vec2 | (1, 1) |
rotation | Number | 0 |
anchor | Vec2 | (0.5, 0.5) |
use_world_point | Boolean | false |
world_point | Vec3 | (0, 0, 0) |
reproject | String | "Live" |
bake_frame | Number | 0 |
distance | Number | 5 |
strength | Number | 1 |
Gotchas
Screen mode always projects through the active viewport camera and ignores whatever is wired into Camera. That input applies in Camera mode only.
Use World Point pins the rect's screen position, not the field. Anything sampling the field output, such as a material or a Volume, still reads world position from its own surface. The world anchor affects the compositor layer alone.
Planar, Box, Cylindrical, Spherical and Triplanar tile the content across the whole surface using Scale. These modes have no in-rect masking, unlike Screen and Camera.
Reproject applies when the content is 3D: geometry, a Gaussian point cloud, or a Volume. Live re-renders it every frame from the camera. Baked renders once and freezes until Bake Frame is bumped.
Camera mode's world-space card placement, turning a flat image or shape into a collidable 3D object at distance, requires a straight-line camera. A curved lens such as a fisheye falls back to ordinary screen-locked placement.
Worked example
Add a Projection and wire an image, a shape, or a Volume into Content.
Leave Space on Screen for a gobo-style overlay that follows the viewport, or set it to Camera and wire a camera to lock the placement to that viewpoint.
Adjust Position, Scale, Rotation and Anchor to size and place the rect.
In Camera mode, raise Distance to push the content further from the camera as a real world-space card, so a ray or a physics object can hit it.
Wire
rasterinto a Compositor for a 2D layer, or wirefieldinto a material, Volume or Distance Field to drive it in 3D.