Skip to main content

Cameras Config

warning

The cameras file is saved automatically by the Steel Studio app. You do not need to create or edit it manually.
Use this page as a reference only.

All cameras are stored in a single file: [track_folder]/extension/steelstudio/cameras.json.

The file is a JSON array where each entry is either a fixed camera (one keyframe) or a path camera (two or more keyframes).

Config file

extension/steelstudio/cameras.json
[
{
"name": "Shot 1",
"type": "fixed",
"keyframes": [
{
"t": 0,
"position": "(0.0, 1.0, 5.0)",
"look": "(0.0, 0.0, -1.0)",
"up": "(0.0, 1.0, 0.0)",
"side": "(1.0, 0.0, 0.0)",
"fov": 60.0,
"dofEnabled": false,
"dofDistance": 5.0
}
]
},
{
"name": "Path 1",
"type": "path",
"duration": 10,
"interp": "smooth",
"ease": "easeInOut",
"keyframes": [
{
"t": 0,
"position": "(0.0, 1.0, 5.0)",
"look": "(0.0, 0.0, -1.0)",
"up": "(0.0, 1.0, 0.0)",
"side": "(1.0, 0.0, 0.0)",
"fov": 60.0,
"dofEnabled": false,
"dofDistance": 5.0
},
{
"t": 1,
"position": "(3.0, 1.0, 0.0)",
"look": "(-0.8, 0.0, -0.6)",
"up": "(0.0, 1.0, 0.0)",
"side": "(0.6, 0.0, -0.8)",
"fov": 45.0,
"dofEnabled": true,
"dofDistance": 3.0
}
]
}
]

Camera properties

NameDescriptionPossible values
nameDisplay name of the camera shown in the tile gridString
typeCamera type"fixed" | "path"
keyframesArray containing the camera keyframes (one for fixed, two or more for path)Array
durationPath playback duration in seconds (path only)Number (1–60)
interpPosition interpolation method (path only)"linear" | "smooth"
easeEasing function applied to the playback timeline (path only)"linear" | "easeIn" | "easeOut" | "easeInOut"

Keyframe properties

Both fixed and path cameras use the same keyframe structure.

NameDescriptionPossible values
tNormalized time of this keyframe along the path (0 = start, 1 = end)Number (0–1)
positionCamera position in world space, as a vec3 stringString "(x, y, z)"
lookForward direction vectorString "(x, y, z)"
upUp direction vectorString "(x, y, z)"
sideRight direction vector (derived from look and up)String "(x, y, z)"
fovVertical field of view in degreesNumber (5–120)
dofEnabledWhether depth of field is active at this keyframetrue | false
dofDistanceFocus distance in metresNumber (0–500)
info

For a fixed camera, only the first keyframe is used (set t to 0).

For a path camera, keyframes are sorted by their t value and interpolated based on the interp setting:

  • "linear" — straight lines between positions
  • "smooth" — Catmull-Rom spline (curved, natural motion)