Viewport Camera
Position and orient a 3D camera in the scene.
What it does
Viewport Camera places a 3D camera in the scene and renders what it sees. Position, orientation and projection (perspective or orthographic) define the view. The Texture output is a live render-to-image capture from that camera, separate from the main interactive viewport.
Focal Length and a choice of fisheye models cover ultra-wide fields of view. Lens Effects add space curvature, perspective inversion and two authorable curves.
When to use it
A 3D camera to render from, with its own position, aim and lens.
A second view of the scene: a mirror, a security-camera shot, a reflection. Wire the Texture output wherever an image is expected.
Wide-angle or fisheye distortion, via Lens Model.
Stylised, non-physical lenses, via Curvature, Perspective Inversion, or the Magnification / Custom Lens curves.
Flat, non-foreshortened views such as blueprints and UI-style renders, via Orthographic projection.
| Parameter | Type | Default |
|---|---|---|
mode | String | "Free" |
position | Vec3 | (0, 0, 5) |
rotation | Vec3 | (0, 0, 0) |
target | Vec3 | (0, 0, 0) |
projection | String | "Perspective" |
focal_length | Number | 28 |
lens_model | String | "Rectilinear" |
curvature | Number | 0 |
perspective_inversion | Number | 0 |
magnification_curve | OneOf([Curve]) | Curve(Easing(BezierSpline { points: [... |
lens_radial_curve | OneOf([Curve]) | Curve(Easing(BezierSpline { points: [... |
ortho_height | Number | 10 |
near_clip | Number | 0.100 |
far_clip | Number | 1000 |
fps_speed | Number | 5 |
capture_width | Number | 512 |
capture_height | Number | 512 |
Gotchas
Rotation steers the camera in Free and FPS modes only. In Target mode the camera aims at the Target point and Rotation is hidden.
Curvature is a signed amount from -1 to 1, not a physical value. It is mapped so small movements near the middle give fine control and the ends reach a strongly bent look. Negative bends space outward (hyperbolic), positive wraps it, so distant objects enlarge.
The Magnification curve overrides Perspective Inversion whenever it has been authored (edited from its default flat line). Clear the curve to return to the slider.
The frustum guide drawn in the viewport reflects Perspective Inversion and the fisheye lens shape, but not a custom Magnification or Custom Lens curve. With either curve authored, the render is correct and the guide's frustum shape is not.
Worked example
Add a Viewport Camera. Set Position and Rotation, or switch Mode to Target and set a look-at point, to frame the shot.
Pick Perspective for normal depth or Orthographic for a flat view. Adjust Focal Length or Ortho Height to fit the scene in frame.
For a wide establishing shot, switch Lens Model to one of the Fisheye options.
Wire the Texture output into a Layer or Composite to use this camera's view as an image elsewhere in the graph.
For a stylised look, open Lens Effects and dial in Curvature, or author the Magnification / Custom Lens curves. Edits update in real time.