The default sampler (sampleVisibilityGrid) lays out a grid
of candidates inside each space, raycasts
CameraTourPlanOptions.visibilityRayCount rays from
each candidate against the scene collision index, and scores
by coverage. The cheaper alternative (sampleRoomCentroid)
emits one viewpoint per space, anchored at the centroid and
looking toward the nearest exit door.
Stage 2 of the planCameraTour pipeline — for each SpaceGraphNode from the extractor, emit up to CameraTourPlanOptions.maxViewpointsPerRoom candidate camera placements, each scored for visibility / coverage.
The default sampler (
sampleVisibilityGrid) lays out a grid of candidates inside each space, raycasts CameraTourPlanOptions.visibilityRayCount rays from each candidate against the scene collision index, and scores by coverage. The cheaper alternative (sampleRoomCentroid) emits one viewpoint per space, anchored at the centroid and looking toward the nearest exit door.Implementations should: