From a87e19444b985505281918ceb2a8a11fce673fca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=BE=B7=E5=AE=87?= Date: Mon, 21 Sep 2026 15:11:25 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=A8=A1=E5=9E=8B=E6=9F=A5?= =?UTF-8?q?=E7=9C=8B=E5=99=A8=E7=8E=AF=E5=A2=83=E8=B4=B4=E5=9B=BE=E5=A4=B1?= =?UTF-8?q?=E8=B4=A5=E6=97=B6=E7=9A=84=E6=98=BE=E5=AD=98=E6=B3=84=E6=BC=8F?= =?UTF-8?q?=20-=20RoomEnvironment=20=E5=BB=BA=E5=A5=BD=E4=B9=8B=E5=90=8E?= =?UTF-8?q?=E8=8B=A5=20PMREM=20=E7=94=9F=E6=88=90=E5=A4=B1=E8=B4=A5?= =?UTF-8?q?=EF=BC=8C=E5=8E=9F=E5=85=88=E5=8F=AA=E6=8A=8A=E5=BC=95=E7=94=A8?= =?UTF-8?q?=E7=BD=AE=E7=A9=BA=EF=BC=8C=E5=AE=83=E7=9A=84=E5=87=A0=E4=BD=95?= =?UTF-8?q?=E4=B8=8E=E8=B4=B4=E5=9B=BE=E4=B8=8D=E4=BC=9A=E9=87=8A=E6=94=BE?= =?UTF-8?q?=20-=20=E5=A4=B1=E8=B4=A5=E5=88=86=E6=94=AF=E6=94=B9=E4=B8=BA?= =?UTF-8?q?=E5=85=88=E9=87=8A=E6=94=BE=E5=B7=B2=E5=BB=BA=E5=87=BA=E7=9A=84?= =?UTF-8?q?=20RoomEnvironment=EF=BC=8C=E5=86=8D=E9=87=8A=E6=94=BE=E5=8F=AF?= =?UTF-8?q?=E8=83=BD=E5=B7=B2=E5=BB=BA=E5=87=BA=E7=9A=84=20PMREMGenerator?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/model3d-viewer/src/scene.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/model3d-viewer/src/scene.ts b/packages/model3d-viewer/src/scene.ts index 14decdc9e..440a57333 100644 --- a/packages/model3d-viewer/src/scene.ts +++ b/packages/model3d-viewer/src/scene.ts @@ -250,7 +250,12 @@ export async function createModel3dViewerScene( scene.environmentIntensity = ENVIRONMENT_INTENSITY; } catch { // 环境贴图只影响材质观感,取不到时退化为纯光照渲染。 - roomEnvironment = null; + if (roomEnvironment) { + disposeModel3dViewerObject(roomEnvironment); + roomEnvironment = null; + } + pmremGenerator?.dispose(); + pmremGenerator = null; } abortIfNeeded();