Support path clip intervals in spline repeater rendering

This commit is contained in:
2026-05-13 13:20:04 +02:00
parent c774026e2c
commit 5fb9a9cafc

View File

@@ -19,10 +19,12 @@ import {
type SplineRepeaterInstance, type SplineRepeaterInstance,
type SplineRepeaterPathLike type SplineRepeaterPathLike
} from "./spline-repeaters"; } from "./spline-repeaters";
import type { SplineCorridorPathClipIntervalMap } from "./spline-corridor-clips";
interface SplineRepeaterRendererInput { interface SplineRepeaterRendererInput {
paths: readonly SplineRepeaterPathLike[]; paths: readonly SplineRepeaterPathLike[];
terrains: readonly Terrain[]; terrains: readonly Terrain[];
clipIntervalsByPath?: SplineCorridorPathClipIntervalMap;
} }
interface SplineRepeaterRendererOptions { interface SplineRepeaterRendererOptions {
@@ -198,7 +200,8 @@ export class SplineRepeaterRenderer {
const instances = input.paths.flatMap((path) => const instances = input.paths.flatMap((path) =>
deriveSplineRepeaterInstances({ deriveSplineRepeaterInstances({
path, path,
terrains: input.terrains terrains: input.terrains,
clipIntervals: input.clipIntervalsByPath?.get(path.id)
}) })
); );
const nextGroup = new Group(); const nextGroup = new Group();