Skip to content

[Feature] Make Replay HQ tile readiness crop-aware #479

Description

@chdenat

Context

Replay HQ currently waits for all tiles required by the complete active Cesium
viewport. The final video output is only a crop of that viewport, so tiles
outside the crop can unnecessarily extend the readiness wait.

Issue #458 introduces a dedicated recording camera for Replay HQ. This camera
provides the correct foundation for making tile readiness specific to the
exported crop.

Requested behavior

Make Replay HQ tile loading and readiness crop-aware by using the dedicated
recording camera introduced by #458.

The readiness system must only wait for the 2D and 3D tiles required to render
the Replay HQ crop, without waiting for unrelated tiles outside the exported
area.

The behavior must work for:

  • 2D imagery and terrain tiles
  • 3D Tiles
  • camera movements between replay frames
  • camera transitions and changing crop footprints

Acceptance criteria

  • Replay HQ readiness uses the dedicated recording camera from [Feature] Isolate Replay HQ recording camera from interactive preview #458.
  • The Cesium render viewport or frustum matches the exported crop.
  • 2D imagery and terrain readiness is evaluated for the crop render only.
  • 3D Tiles readiness is evaluated for the crop render only.
  • Tiles outside the exported crop do not unnecessarily block frame capture.
  • The marker and replay trace are captured together after the crop view is ready.
  • Existing Draft recording behavior is unchanged.
  • The interactive preview camera remains independent from the HQ recording camera.
  • Readiness remains compatible with the existing timeout and cache reuse logic.
  • Integration tests cover both 2D and 3D crop-aware readiness.
  • Export cleanup restores the normal scene and camera state.

Notes or questions

This feature depends on #458:

#458

The implementation should not inspect Cesium private tile queues. It should use
the public camera, viewport, scene, globe, and 3D Tiles readiness APIs.

Technical notes

The preferred implementation is to configure the dedicated Replay HQ camera and
its render target so Cesium computes visibility for the actual exported crop.
The readiness coordinator can then continue using Cesium's view-based
globe.tilesLoaded and Cesium3DTileset.tilesLoaded state for that dedicated
view.

The implementation must preserve HQ quality and must not solve the performance
problem by lowering the 3D Tiles screen-space error.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions