auto-git:

[change] src/runtime-three/runtime-scene-build.ts
This commit is contained in:
2026-04-22 18:06:48 +02:00
parent e127634e4b
commit f654a12a86

View File

@@ -297,12 +297,10 @@ export interface RuntimeSceneEntry {
yawDegrees: number;
}
export interface RuntimeCameraRig {
interface RuntimeCameraRigBase {
entityId: string;
rigType: "fixed";
priority: number;
defaultActive: boolean;
position: Vec3;
target: CameraRigTargetRef;
targetOffset: Vec3;
transitionMode: CameraRigTransitionMode;
@@ -310,6 +308,18 @@ export interface RuntimeCameraRig {
lookAround: CameraRigLookAroundSettings;
}
export interface RuntimeFixedCameraRig extends RuntimeCameraRigBase {
rigType: "fixed";
position: Vec3;
}
export interface RuntimeRailCameraRig extends RuntimeCameraRigBase {
rigType: "rail";
pathId: string;
}
export type RuntimeCameraRig = RuntimeFixedCameraRig | RuntimeRailCameraRig;
export interface RuntimeNpc {
entityId: string;
actorId: string;
@@ -1560,18 +1570,33 @@ function buildRuntimeSceneCollections(
});
break;
case "cameraRig":
runtimeEntities.cameraRigs.push({
entityId: entity.id,
rigType: entity.rigType,
priority: entity.priority,
defaultActive: entity.defaultActive,
position: cloneVec3(entity.position),
target: cloneCameraRigTargetRef(entity.target),
targetOffset: cloneVec3(entity.targetOffset),
transitionMode: entity.transitionMode,
transitionDurationSeconds: entity.transitionDurationSeconds,
lookAround: cloneCameraRigLookAroundSettings(entity.lookAround)
});
runtimeEntities.cameraRigs.push(
entity.rigType === "fixed"
? {
entityId: entity.id,
rigType: "fixed",
priority: entity.priority,
defaultActive: entity.defaultActive,
position: cloneVec3(entity.position),
target: cloneCameraRigTargetRef(entity.target),
targetOffset: cloneVec3(entity.targetOffset),
transitionMode: entity.transitionMode,
transitionDurationSeconds: entity.transitionDurationSeconds,
lookAround: cloneCameraRigLookAroundSettings(entity.lookAround)
}
: {
entityId: entity.id,
rigType: "rail",
priority: entity.priority,
defaultActive: entity.defaultActive,
pathId: entity.pathId,
target: cloneCameraRigTargetRef(entity.target),
targetOffset: cloneVec3(entity.targetOffset),
transitionMode: entity.transitionMode,
transitionDurationSeconds: entity.transitionDurationSeconds,
lookAround: cloneCameraRigLookAroundSettings(entity.lookAround)
}
);
break;
case "npc": {
const npc: RuntimeNpcDefinition = {