From 07ae16d0ed2edbeb73c0efab92873244745bdfb8 Mon Sep 17 00:00:00 2001 From: 134 Date: Mon, 13 Jul 2026 14:53:45 +0800 Subject: [PATCH] fix: resolve Pascal HDR assets under base path --- .../packages/editor/src/components/editor/index.tsx | 3 ++- .../viewer/src/components/viewer/scene-environment.tsx | 8 ++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/services/pascal-editor/packages/editor/src/components/editor/index.tsx b/services/pascal-editor/packages/editor/src/components/editor/index.tsx index 022fefe91..026ce4195 100644 --- a/services/pascal-editor/packages/editor/src/components/editor/index.tsx +++ b/services/pascal-editor/packages/editor/src/components/editor/index.tsx @@ -23,6 +23,7 @@ import { ViewerZoneSystem } from '../../components/viewer-zone-system' import { type SaveStatus, useAutoSave } from '../../hooks/use-auto-save' import { useKeyboard } from '../../hooks/use-keyboard' import { type ActivePaintMaterial, hasActivePaintMaterial } from '../../lib/material-paint' +import { withEditorBasePath } from '../../lib/public-asset-path' import { applySceneGraphToEditor, loadSceneFromLocalStorage, @@ -738,7 +739,7 @@ const ViewerSceneContent = memo(function ViewerSceneContent({ const noEditing = isVersionPreviewMode || isFirstPersonMode || isStudioMode || isCaptureMode return ( <> - + {!(isFirstPersonMode || isStudioMode || isCaptureMode) && } {!noEditing && } {!noEditing && } diff --git a/services/pascal-editor/packages/viewer/src/components/viewer/scene-environment.tsx b/services/pascal-editor/packages/viewer/src/components/viewer/scene-environment.tsx index c17df4442..b9c1b6ea8 100644 --- a/services/pascal-editor/packages/viewer/src/components/viewer/scene-environment.tsx +++ b/services/pascal-editor/packages/viewer/src/components/viewer/scene-environment.tsx @@ -15,13 +15,13 @@ import { Suspense } from 'react' * * The HDR is self-hosted (drei's `preset="sunset"` resolves to the same * `venice_sunset_1k.hdr` on raw.githack.com, which intermittently fails). - * Every app that mounts this — like `/audios/sfx` — must ship the file in its - * own `public/hdri/`. + * Every app that mounts this must ship the file in its own `public/hdri/` and + * pass a base-path-aware URL when it is deployed below the site root. */ -export function SceneEnvironment() { +export function SceneEnvironment({ files = '/hdri/venice_sunset_1k.hdr' }: { files?: string }) { return ( - + ) }