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();