加载了应用纹理材质的模型只是黑色,不知道如何调试
Posted
技术标签:
【中文标题】加载了应用纹理材质的模型只是黑色,不知道如何调试【英文标题】:Loaded model with applied texture material is just black, don't know how to debug 【发布时间】:2013-12-26 04:59:04 【问题描述】:我遇到了三个问题,即three.js 没有渲染我的模型。我用JSONLoader
加载模型,用ImageUtils.loadTexture
加载纹理并创建一个MeshPhongMaterial
。我的问题是关于如何调试问题,因为基本代码有效。也就是说,完全相同的代码适用于不同的模型,如果不使用纹理,我会得到所需模型的纯色版本。模型/纹理的组合有问题,我不明白,我不知道如何调试它。
我如何弄清楚它为什么不渲染?
我尝试从搅拌机中导出新的文件立方体,但它有同样的问题。因此,尽管导出可能是,但源模型不太可能是问题所在。
【问题讨论】:
检查 webkit 检查器中的网络选项卡以确保所有图像都正在加载? 【参考方案1】:我的模型没有 UV 坐标,所以即使我导出了 UV,列表也是空的。这当然意味着无法应用纹理。从逻辑上讲,没有办法“计算”three.js 中的 UV 坐标。我在搅拌机中添加了 UV 数据,再次导出,它可以工作了。
【讨论】:
以上是关于加载了应用纹理材质的模型只是黑色,不知道如何调试的主要内容,如果未能解决你的问题,请参考以下文章
vary设定的贴图为啥显示不出来而且渲染之后只是单色而没有纹理
使用vue学习three.js之加载和使用纹理-加载DDSPVRTGA格式的纹理,使用纹理材质创建模型
Three.js 在通过 OBJMTLLoader 加载的对象上的多种材质