Flight Paths: Shaping, Timing and Scenes
Once a flight path exists, this is how to shape its route, set its pace and switch objects on and off along it. Creating a path, capturing viewpoints, playing it back and recording a movie are in the Flight Path User Guide.
Letting points shape the flight
Auto Generate turns points of interest into keyframes and then has no more to do with them. They can also act on a path you built by hand, or generated and then reworked:
- Turn To Look turns the camera towards a point as the flight passes it, up to Max Turn (degrees) off its own heading. Where two points' reaches overlap, the nearer one wins.
- Speed Factor below 1 slows the camera near a point. The time comes out of the rest of the path, so the movie still runs for the same length.
- Dwell (seconds) holds the camera at the flight's closest approach to the point.
To apply them, right-click the flight path and choose Apply Points Of Interest, or right-click its Points of Interest branch and choose Apply To Flight. Both are the same command. It needs at least two viewpoints and one point of interest. A point much further off the flight than the others, such as one dropped across a bay, is taken as not visited; set its Influence Radius to use it. The change is one step of undo.
The first time, it asks to turn on Points Of Interest Shape Playback in the flight path's properties. That switch is off by default, because it rewrites frames you may have composed by hand. While it is on, the points act again whenever the path is built, by Create Open Path or Create Closed Path as well. The turning and slowing are written into the path's frames, so a preview and the recorded movie show the same flight.
A viewpoint from one point
Add View Here, on a point of interest's right-click menu, adds keyframes framing that point to the end of the active path, by the same reckoning as Auto Generate, keeping clear of the outcrop. A Rotate Around point contributes its whole arc. It leaves the path's other viewpoints alone, so a tour can be built one point at a time.
Building the path
Once you have two or more viewpoints, build the interpolated path from the ribbon:
- Create Open Path — an open path from the first viewpoint to the last.
- Create Closed Path — a loop that returns from the last viewpoint back to the first.
Interpolation method
The method is set in the flight path properties. Smooth (the default) is recommended for camera work:
| Method | Behaviour |
|---|---|
| Smooth | A time-aware spline with continuous velocity and rotation across every keyframe. Best general-purpose choice; produces natural, glide-free motion. |
| Linear | Straight-line constant-velocity segments. |
| Cosine | Eased segments (slow in/out). |
| Cubic / CatmullRom | Classic interpolating splines through the viewpoints. |
| Hermite | Spline with adjustable Tension and Bias (set in the properties) for tighter or looser curves. |
Orientation is always interpolated through quaternions, so the camera takes the shortest rotational path and never flips, even between widely separated headings.
Ease in and out
Tick SmoothStep on a viewpoint and the camera eases out of it as it leaves and eases in to it as it arrives — starting and stopping gently instead of at full speed. It is the natural finish for the first and last keyframes of a path, and for a viewpoint the tour dwells on.
Easing changes only the rate along the curve, never the curve itself, so it can never move a keyframe or bend the path. An un-eased keyframe keeps full speed, which is what lets an eased segment sit next to a plain one without jerking.
This is a deliberate change of speed, so a segment with one eased end and one plain end does not hold a constant velocity across the join — that is what easing means. If you want even motion instead, use Constant Speed.
Smoothing
Smooth All runs an additional smoothing filter over the interpolated frames, damping out any residual jitter. The number of passes is set by Smooth Itterations in the properties.
Check path clearance
Check Path, on the flight path's right-click menu, walks the whole flight and reports every stretch where the camera passes through the outcrop, or too close to it.
This catches what Auto Generate cannot. Generation proves each keyframe stands clear of its subject; the path then runs a spline between them, and on a concave face that curve will happily bulge through a nose or a buttress with both of its endpoints in open air. That is exactly the shape points of interest exist to describe, so it is exactly the case that bites — and hand-built paths have never had it checked at all.
What happens when you run it:
- VRGS walks the interpolated frames and groups consecutive bad ones into a single problem area, so one dive through a buttress reads as one problem rather than two hundred.
- It reports what it found — how many places, over how many frames, how deep the worst incursion is, and how many frames it actually examined.
- It jumps the camera to the first problem so you can see it before anything is changed.
- It then offers to nudge the surrounding viewpoints clear. Both keyframes bracketing a problem move, because the bulge belongs to the segment rather than to either end.
The nudge is a single undo step. One pass does not always resolve a deep pocket, so run Check Path again to confirm — the dialog says as much when it finishes.
Check Path requires the Vulkan renderer, a project with a computed extent, and loaded meshes to check against — it says which is missing rather than reporting a clean bill of health it has not earned. On a long path it samples every Nth frame so a 20,000-frame movie does not take a minute to check, which is why the number of frames checked is reported: a stride can miss a very brief dive.
If nothing can be moved automatically — the camera is buried too evenly for a way out to be worked out — move the viewpoints by hand, or place the points of interest further from the face and generate again.
The timeline editor
The Flight Path Timeline panel is the heart of flight-path editing. It shows the path as stacked time-vs-value tracks with a keyframe strip and a time axis along the bottom. It opens automatically when a flight path is active.
Tracks
| Track | Shows |
|---|---|
| Speed | Camera speed per frame (always shown). Spikes and dips reveal where the camera rushes or stalls. |
| Acceleration | Change in speed — where the camera is speeding up (above the line) or slowing down (below). Show Acceleration track on the right-click menu. |
| Orientation | Pitch, roll and yaw curves. Show Orientation track on the right-click menu. |
| Scenes | One coloured bar per scene, showing when each is active (see Scenes). Shown when the path has scenes; Show Scenes track on the right-click menu turns it off. |
| Narration | One bar per narration clip, spanning the time it plays, with its waveform and caption drawn inside it (see Narration). A stop-and-talk clip is an orange pin instead, because it occupies no time. Shown when the path has narration; Show Narration track on the right-click menu turns it off. |
The left axis shows raw values; the right axis shows them in intuitive units (degrees for orientation, per-second for speed/acceleration) at the project frame rate. The bottom axis reads out time in seconds.
Working in the timeline
| Interaction | Result |
|---|---|
| Click in the timeline area | Move the playhead to that frame and snap the camera there (scrubbing). |
| Drag in the timeline area | Scrub continuously — the 3D view follows the playhead. |
| Click a keyframe tick (bottom strip) | Select it and snap the camera to that viewpoint. |
| Drag a keyframe tick left/right | Change that segment's duration (its frame count). The path rebuilds live. |
| Mouse wheel | Zoom the time axis, anchored under the cursor. Use the scrollbar to pan when zoomed in. |
| Drag a track boundary | Resize the tracks to give a curve more room. |
| Right-click the keyframe strip | Add keyframe at this position, Update keyframe from 3D view, or Delete keyframe. |
| Right-click a track | Toggle the Acceleration, Orientation, Scenes and Narration tracks, set the project frame rate, or add narration at that time. As the leader of a live field trip, also share the path as a guided tour. |
| Drag a narration clip | Move it to a different time. A clip pinned to a keyframe snaps from keyframe to keyframe instead, and stays pinned where it lands. |
Right-clicking an empty part of the keyframe strip lets you add a keyframe at that exact time (capturing the current camera), and right-clicking an existing keyframe lets you update it to the live camera without leaving the timeline. The path, the 3D view and the tree all stay in sync.
Every timeline edit is a single undo step — press Ctrl+Z to revert a drag, add, delete or scene change.
Timing and duration
A path's length is the sum of its per-segment frame counts, converted to seconds at the project frame rate (set in the project / display options). Several tree commands help you set timing in bulk:
| Command | Effect |
|---|---|
| Set Frame Count | Set the frame count on the selected viewpoint(s), or from the flight path's own menu on every segment. |
| Set Frames Per Metre | Set frame counts proportional to each segment's length, for constant ground speed. |
| Set Duration | Scale the whole path to a target total duration in seconds. |
| Set Duration For Selected | Distribute a duration across the selected viewpoints. |
| Scale Duration | Multiply all frame counts by a factor to speed up or slow down the whole path. |
| Constant Speed | Re-pace the whole path so the camera covers the same distance every frame, without changing the total duration (see below). |
Durations are computed using the project frame rate, so a 60-second path really is 60 seconds in the recorded movie. Make sure the project frame rate matches your intended output.
Pacing the camera
The path is timed in frames, so a segment's real speed is its length divided by its frame count. Two keyframes 5 m apart and the next pair 500 m apart with the same frame count means the camera crawls, then rockets — the single most common reason a fly-through looks wrong.
Constant Speed, on the flight path's right-click menu, fixes this in one press. It measures the actual arc length the camera flies along the interpolated path, then redistributes the path's existing frame budget in proportion to it.
- The total duration does not change, so a Set Duration you have already applied still holds, and narration timed against the path stays where you put it.
- It measures the curve that actually plays. Set Frames Per Metre works from the straight-line distance between control points, which understates a curved segment badly on a tight turn — Constant Speed does not.
- Works in both renderers.
Check the result on the timeline's Speed track: after a Constant Speed pass it should read close to flat.
Run Constant Speed to get the body of the tour even, then tick SmoothStep on the first and last keyframes so it still starts and stops gently.
Reordering keyframes
Order matters most immediately after Auto Generate, which is exactly when it is a guess. Right-click a viewpoint in the tree and use the Order submenu:
| Command | Effect |
|---|---|
| Move Up | Move this viewpoint earlier in the flight. It carries its own frame count with it, so its timing follows it. |
| Move Down | Move it later, on the same terms. |
| Insert Viewpoint After | Add a new keyframe midway to the next one, to shape a corner. |
Reverse Path, on the flight path's own right-click menu, flies the whole tour in the opposite direction.
A frame count belongs to the segment leaving a keyframe, not to the keyframe itself. Both commands account for that: Insert Viewpoint After splits the segment's frames between the old keyframe and the new one, so shaping a corner does not lengthen the path, and Reverse Path re-pairs the durations as well as reversing the order, so the movie keeps its timing instead of every segment inheriting its neighbour's. A reversed midpoint's orientation is interpolated the short way round, so a keyframe between headings of 170° and −170° lands on 180° rather than swinging back through 0°.
Holding on a viewpoint
Tick Hold Here in a viewpoint's properties and the camera stops on it for 10 frames before carrying on.
The hold is applied when you record a movie, where it becomes real frames in the file. It is the simplest way to let a still shot land in a video, and needs no narration clip.
Hold Here is a fixed-length pause built into the recording. A stop-and-talk narration clip instead parks the tour for exactly as long as its commentary lasts, and lets you look around while it plays. A point of interest's Dwell (seconds) sets a hold at generation time. A keyframe with both a hold and a narration stop gets both — they add up rather than one winning.
Scenes: visibility choreography
Scenes let you change what is visible as the camera flies — for example, revealing an interpretation layer as you approach it, swapping a photorealistic mesh for an interpreted surface, or hiding clutter during a wide shot.
- Set up the object visibility you want in the 3D view.
- On the Flight Path ribbon tab, choose Add Scene. The current visibility state is captured as a scene under the flight path's Scenes branch.
What a scene captures
A scene records the on/off state of the objects in the 3D view at the moment you capture it, and restores exactly that set whenever it becomes active. This includes your large geometry — triangulated meshes, point clouds, tiled meshes and Gaussian splats — alongside interpretations, annotations, images and the other object types. There is no separate picker: whatever is switched on when you choose Add Scene is what the scene shows.
Meshes and point clouds are streamed from disk, so when you start playback VRGS loads everything the path's scenes reference before the camera moves. For a path that touches large clouds this can take a few seconds and shows a progress dialog — but it guarantees the data is resident before it is needed. This matters most when you are recording a movie, where a mesh fading in halfway through a shot would ruin the take.
Earlier versions never switched meshes or point clouds off — they stayed on regardless of scenes. To keep those projects looking the same, a scene captured before 3.4 leaves your large geometry alone until you re-capture it (right-click the scene → Update). Re-recording brings the currently visible meshes and point clouds under that scene's control.
A scene becomes active in one of two ways:
- Spatial trigger (ROI) — the scene activates whenever the camera comes within the scene's Region of Interest radius of the point where it was captured.
- Temporal trigger — the scene activates over an explicit frame range you set on the timeline.
Editing scene timing on the timeline
With the Scenes track visible, each scene is a coloured bar:
| Interaction | Result |
|---|---|
| Drag a bar's edge | Adjust the scene's start or end frame. |
| Drag the bar body | Move the whole active range. |
| Right-click a scene | Set start / end from playhead, convert to a spatial (ROI) trigger, or snap the range to wherever the camera enters/leaves the ROI. |
If you drag a keyframe, add/delete a viewpoint, or toggle motion blur — anything that changes the path's length — temporal scene triggers are rescaled proportionally, so a scene keeps firing at the same point along the path rather than drifting off.
Motion blur
Toggle Motion Blur on the ribbon for cinematic 180° shutter blur in the recorded movie. Turning it on or off rebuilds the path so the timeline and preview immediately reflect the change.
Motion blur adds sub-frames internally, which increases render time. It is off by default and only affects the recorded movie, not interactive preview.
Toggling motion blur rebuilds the interpolated path with many more frames in it, but the path still runs for the same number of seconds — so narration clips stay exactly where you placed them, and playback still takes the same time.