我正在使用Three.js在WebGL中渲染Fallout 3对象。可以在here中找到用于类似对象渲染的JavaScript。大多数对象及其法线都可以正常加载...直到我尝试加载婆罗门时...



因此,如您所见,纹理和法线恰好可以导入到Blender中。但是,当我将NIF文件导出到WaveFront OBJ文件(与MTL文件耦合)时,它呈现为完全不可见。故意将错别字放在JPG或DDS文件路径的MTL文件中后,我发现它以白色婆罗门(没有纹理)呈现。我在这里是否缺少特定的导出设置(请注意,我之前已经导出了这些类型的对象)?渲染透明后有什么意义吗?可以在here中找到文件。

注意:不会引发与纹理未正确加载有关的错误。

最后,作为进一步参考,下面是尝试导出此被误解的生物时的外观:



感谢您的帮助,谢谢。

最佳答案

在.mtl文件中,所有三种材料的d值均为0。从解析.mtl文件的源代码中:

// According to MTL format (http://paulbourke.net/dataformats/mtl/):
//   d is dissolve for current material
//   factor of 1.0 is fully opaque, a factor of 0 is fully dissolved (completely transparent)

09-25 18:58