fix: normalize exported texture filenames
This commit is contained in:
@@ -44,10 +44,14 @@ The app runs on `http://localhost:3000` with hot reload. The upload API routes a
|
||||
|
||||
### Asset naming convention
|
||||
|
||||
Texture filenames must start with a known asset family. Use `asset.png` to apply a texture to the whole model, or `asset_object.png` to target a specific object.
|
||||
Allowed families are defined in `lib/asset-naming.ts`: `color`, `diffuse`, `roughness`, `normal`, `metalness`, `height`, `opacity`.
|
||||
Valid examples: `color.png`, `diffuse_lampe.png`, `normal_cable1.png`, `opacity_lampe.png`.
|
||||
Invalid examples: `lampe_opacity.png`, `cable1_base_color.png`, `normal_opengl_cable1.png`, `metallic_pied.png`. Invalid or unknown asset names block the upload.
|
||||
Texture filenames can either use the internal convention or common GLTF export suffixes. The Git payload is normalized automatically and `model.gltf` texture URIs are rewritten to match the normalized filenames. Drive archiving keeps the original artist files.
|
||||
|
||||
Internal convention: use `asset.png` to apply a texture to the whole model, or `asset_object.png` to target a specific object.
|
||||
Allowed families are defined in `lib/asset-naming.ts`: `color`, `diffuse`, `roughness`, `normal`, `metalness`, `height`, `opacity`, `orm`, `ao`.
|
||||
Valid internal examples: `color.png`, `diffuse_lampe.png`, `normal_cable1.png`, `opacity_lampe.png`.
|
||||
Accepted export examples: `lampe_baseColor.png`, `lampe_base_color.png`, `lampe_normal_opengl.png`, `lampe_metallic.png`, `lampe_occlusionRoughnessMetallic.png`, `lampe_mixed_ao.png`.
|
||||
Git normalization examples: `lampe_baseColor.png` becomes `color_lampe.png`, `lampe_metallic.png` becomes `metalness_lampe.png`, `lampe_occlusionRoughnessMetallic.png` becomes `orm_lampe.png`, and `lampe_mixed_ao.png` becomes `ao_lampe.png`.
|
||||
Invalid or unknown asset names still block the upload.
|
||||
|
||||
### Upload flow: Drive first, then Git
|
||||
|
||||
@@ -262,4 +266,4 @@ The Docker image runs the Next.js app and server-side asset preparation in a sin
|
||||
|
||||
See [MIT](LICENSE) License
|
||||
|
||||
Copyright 2026 La Fabrik Durable. All rights reserved.
|
||||
Copyright 2026 La Fabrik Durable. All rights reserved.
|
||||
|
||||
Reference in New Issue
Block a user