From 4f48ff7d9450a075fdb561d2167b6c90d9632cd1 Mon Sep 17 00:00:00 2001 From: Victor Giers Date: Mon, 11 May 2026 14:00:05 +0200 Subject: [PATCH] Implement viewport rendering for triggerVolume and npc entities --- src/viewport-three/viewport-host.ts | 30 +++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/src/viewport-three/viewport-host.ts b/src/viewport-three/viewport-host.ts index 681cb24c..814d9405 100644 --- a/src/viewport-three/viewport-host.ts +++ b/src/viewport-three/viewport-host.ts @@ -6501,7 +6501,6 @@ export class ViewportHost { break; case "pointLight": case "soundEmitter": - case "triggerVolume": case "interactable": this.applyEntityRenderObjectTransform({ ...currentEntity, @@ -6512,6 +6511,20 @@ export class ViewportHost { position: previewItem.position }); break; + case "triggerVolume": + this.applyEntityRenderObjectTransform({ + ...currentEntity, + position: previewItem.position, + rotationDegrees: + previewItem.rotation.kind === "euler" + ? previewItem.rotation.rotationDegrees + : currentEntity.rotationDegrees, + size: + previewItem.scale.kind === "size" + ? previewItem.scale.size + : currentEntity.size + }); + break; case "spotLight": this.applyEntityRenderObjectTransform({ ...currentEntity, @@ -6532,7 +6545,6 @@ export class ViewportHost { break; case "playerStart": case "sceneEntry": - case "npc": case "teleportTarget": this.applyEntityRenderObjectTransform({ ...currentEntity, @@ -6543,6 +6555,20 @@ export class ViewportHost { : currentEntity.yawDegrees }); break; + case "npc": + this.applyEntityRenderObjectTransform({ + ...currentEntity, + position: previewItem.position, + yawDegrees: + previewItem.rotation.kind === "yaw" + ? previewItem.rotation.yawDegrees + : currentEntity.yawDegrees, + scale: + previewItem.scale.kind === "scale" + ? previewItem.scale.scale + : currentEntity.scale + }); + break; } } break;