From 62be4a258e158c305ad209ef78306e111f6c399d Mon Sep 17 00:00:00 2001 From: syuilo <4439005+syuilo@users.noreply.github.com> Date: Tue, 21 Apr 2026 07:53:24 +0900 Subject: [PATCH] fix --- packages/frontend/src/world/room/engine.ts | 14 ++++++++------ packages/frontend/src/world/room/utility.ts | 13 +++++++------ 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/packages/frontend/src/world/room/engine.ts b/packages/frontend/src/world/room/engine.ts index 9724daf1a7..6fdabd26ba 100644 --- a/packages/frontend/src/world/room/engine.ts +++ b/packages/frontend/src/world/room/engine.ts @@ -809,12 +809,14 @@ export class RoomEngine extends EventEmitter { if (merged != null) { merged.setParent(subRoot); merged.name = 'preMerged'; - merged.material.freeze(); - if (merged.material instanceof BABYLON.MultiMaterial) { - for (const subMat of merged.material.subMaterials) { - subMat.freeze(); - } - } + + // freezeするとbabylon 9.3.2以降、snapshot rendering + clustered lighting + selection outlineの組み合わせでなんかレンダリングがグリッチする + //merged.material.freeze(); + //if (merged.material instanceof BABYLON.MultiMaterial) { + // for (const subMat of merged.material.subMaterials) { + // subMat.freeze(); + // } + //} // TODO: 再帰的にする for (const m of loaderResult.transformNodes) { diff --git a/packages/frontend/src/world/room/utility.ts b/packages/frontend/src/world/room/utility.ts index 46e50eff94..02d8c57bad 100644 --- a/packages/frontend/src/world/room/utility.ts +++ b/packages/frontend/src/world/room/utility.ts @@ -306,12 +306,13 @@ export class ModelManager { const merged = BABYLON.Mesh.MergeMeshes(toMerge, true, false, undefined, false, true); merged.parent = this.root; - merged.material.freeze(); - if (merged.material instanceof BABYLON.MultiMaterial) { - for (const subMat of merged.material.subMaterials) { - (subMat as BABYLON.PBRMaterial).freeze(); - } - } + // freezeするとbabylon 9.3.2以降、snapshot rendering + clustered lighting + selection outlineの組み合わせでなんかレンダリングがグリッチする + //merged.material.freeze(); + //if (merged.material instanceof BABYLON.MultiMaterial) { + // for (const subMat of merged.material.subMaterials) { + // (subMat as BABYLON.PBRMaterial).freeze(); + // } + //} merged.freezeWorldMatrix(); merged.metadata = { ...this.root.metadata }; if (!this.hasTexture) merged.convertToUnIndexedMesh();