[3d] better solution to support reading extra resource/texture (#4209)

This commit is contained in:
Terry Jia
2025-07-02 00:25:18 -04:00
committed by GitHub
parent f57f97cfcd
commit 35ff882ff2
8 changed files with 206 additions and 642 deletions

View File

@@ -206,7 +206,11 @@ const handleBackgroundImageUpdate = async (file: File | null) => {
return
}
backgroundImage.value = await Load3dUtils.uploadFile(file)
const resourceFolder = (node.properties['Resource Folder'] as string) || ''
const subfolder = resourceFolder.trim() ? `3d/${resourceFolder.trim()}` : '3d'
backgroundImage.value = await Load3dUtils.uploadFile(file, subfolder)
node.properties['Background Image'] = backgroundImage.value
}
@@ -218,7 +222,14 @@ const handleUploadTexture = async (file: File) => {
}
try {
const texturePath = await Load3dUtils.uploadFile(file)
const resourceFolder = (node.properties['Resource Folder'] as string) || ''
const subfolder = resourceFolder.trim()
? `3d/${resourceFolder.trim()}`
: '3d'
const texturePath = await Load3dUtils.uploadFile(file, subfolder)
await load3DSceneRef.value.load3d.applyTexture(texturePath)
node.properties['Texture'] = texturePath

View File

@@ -238,7 +238,11 @@ const handleBackgroundImageUpdate = async (file: File | null) => {
return
}
backgroundImage.value = await Load3dUtils.uploadFile(file)
const resourceFolder = (node.properties['Resource Folder'] as string) || ''
const subfolder = resourceFolder.trim() ? `3d/${resourceFolder.trim()}` : '3d'
backgroundImage.value = await Load3dUtils.uploadFile(file, subfolder)
node.properties['Background Image'] = backgroundImage.value
}