我在3ds max中创建了一个照片般逼真的场景。我想使用WebGl和three.js在Web上渲染场景。为了获得使用mental ray渲染器在3ds max中创建的逼真效果,我尝试将光照贴图从3ds max烘焙到JPEG文件,然后将three.js中的对象映射到纹理(导出的JPEG)文件。但是three.js中的效果似乎已经延伸,并且没有正确定位。我的方法首先是正确的吗?如果是,可能是3ds Max的UV映射有问题吗?如果可能的话,请提供一些链接,以便在烘焙时在3ds max中正确映射UV,如果这是问题。
另外,我是否需要使用任何自定义着色器来获得此类效果? (如果这个问题看起来很愚蠢,我真的对着色器一无所知)
提前致谢。
答案 0 :(得分:1)
我强烈建议使用THREEjs导出器: https://github.com/mrdoob/three.js/tree/dev/utils/exporters/max
我在使用任何内置导出选项的Maya和其他程序时遇到了很多麻烦。面部缠绕,紫外线和其他东西看起来很漂亮。出口商有帮助。
一旦你完成了这个,还需要记住一些事情 - THREEjs只允许每个几何体有两组UV。一个用于地图,凹凸贴图,置映贴图等,另一个用于光照贴图。因此,如果这两个UV集最终彼此不同,您可能需要交换您指定为地图的那个以及哪个作为光照贴图。
将一个小提琴与你到目前为止的结果联系起来,我们可以提供更多帮助。我唯一能推荐的是使用THREEjs导出器而不会看到你正在使用的代码。
答案 1 :(得分:0)
3ds Max的导出器已从官方的Three.js回购中删除,您应该使用glTF格式。有关glTF兼容Max出口商的列表,请参阅此官方页面: https://github.com/KhronosGroup/glTF