From f97654a348b4eb703bf5429b6a807630bac17cfd Mon Sep 17 00:00:00 2001 From: Victor Giers Date: Wed, 22 Apr 2026 17:07:02 +0200 Subject: [PATCH] auto-git: [change] src/viewport-three/viewport-host.ts --- src/viewport-three/viewport-host.ts | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/src/viewport-three/viewport-host.ts b/src/viewport-three/viewport-host.ts index d736474d..12fbec90 100644 --- a/src/viewport-three/viewport-host.ts +++ b/src/viewport-three/viewport-host.ts @@ -4679,6 +4679,27 @@ export class ViewportHost { group.quaternion.copy(orientation); } + private applyCameraRigGroupTransform( + group: Group, + entity: Pick, + document: SceneDocument | null + ) { + group.position.set(entity.position.x, entity.position.y, entity.position.z); + + const lookTarget = + document === null + ? null + : resolveCameraRigDocumentLookTarget(entity, document.entities); + + if (lookTarget === null) { + group.rotation.set(0, 0, 0); + group.quaternion.identity(); + return; + } + + group.lookAt(lookTarget.x, lookTarget.y, lookTarget.z); + } + private applyEntityRenderObjectTransform(entity: EntityInstance) { const renderObjects = this.entityRenderObjects.get(entity.id); @@ -4699,6 +4720,13 @@ export class ViewportHost { renderObjects.group.rotation.set(0, 0, 0); renderObjects.group.quaternion.identity(); break; + case "cameraRig": + this.applyCameraRigGroupTransform( + renderObjects.group, + entity, + this.currentDocument + ); + break; case "spotLight": this.applySpotLightGroupTransform( renderObjects.group,