Appearance
纹理不显示:模型白色/无颜色
状态: 🟢 已修复
日期: 2025-07-16 严重程度: 🔴 P1(渲染错误,模型纹理全白) 影响范围: frontend/src/core/main.ts(加载器注册)+ internal/app/app.go(HTTP 服务器) 发现方式: 用户反馈 修复方案: 注册 BMP/TGA 加载器 + basenameFallbackFS 路径容错 + MmdStandardMaterialProxy
错误信息
无 404,无报错,仅控制台有 FS: GET 日志。
可能原因
- PMX 内部贴图路径与实际文件路径不匹配(如
../tex/xxx.bmpvstextures/xxx.bmp) - 贴图路径含中文字符导致 URL 编码/解码不一致
- 文件扩展名大小写(
.BMPvs.bmp) - PMX 使用 TGA/BMP 但加载器注册不完整
已采取的修复
- 注册
RegisterDxBmpTextureLoader()— 处理 BMP alpha 通道 - 导入
@babylonjs/core/Materials/Textures/Loaders/tgaTextureLoader— TGA 支持 - 设置
MmdRuntimeShared.MaterialProxyConstructor = MmdStandardMaterialProxy - Go HTTP 服务器添加
FS: GET请求日志用于诊断
诊断方法
wails3 dev 控制台搜索 FS: GET / 开头的日志,看贴图文件是否被请求及结果状态码。
涉及文件
app.go—StartFileServer(含日志)frontend/src/core/main.ts—init()中加载器注册