【问题标题】:JSON Blender exporter doesn't export mirror/reflectivity value of materialsJSON Blender 导出器不导出材质的镜像/反射率值
【发布时间】:2016-03-05 10:52:29
【问题描述】:

我正在使用 Blender 中的 Three.js JSON 导出器插件来导出一个基本的测试模型,然后将其加载到三个.js 中。

json 可以很好地加载模型,但是我在一些材料上添加的“镜像”值没有显示在模型上。

我已经看到了这个问题 (Blender mirror modifier doesn't export mirrored half) 和其他几个问题,包括three.js git 上的一些线程,但似乎没有解决这个问题。

谢谢!

【问题讨论】:

    标签: json three.js blender


    【解决方案1】:

    我认为您指的是两个不同的“镜像”属性。镜像修改器在选定的轴或偏移对象上复制和反转几何体。您正在谈论的镜子(反射率)需要光线追踪渲染器,因此它在 webGL 中不可用。

    紧随其后的是向您的材质添加一个 envmap/cubemap,这会产生您的模型反映其环境的效果。为此,您需要做两件事。

    这是一个例子:

    1. 确保您的材质具有反射率值。
    2. 确保您的材质具有 envmap。

    在上面的示例中,我是这样做的:http://novak.us/labs/UmDemo/

                var path = "textures/images/blurredRoom_";
                var format = '.jpg';
                var urls = [
                        path + 'px' + format, path + 'nx' + format,
                        path + 'py' + format, path + 'ny' + format,
                        path + 'pz' + format, path + 'nz' + format
                    ];
    
                var reflectionCube = THREE.ImageUtils.loadTextureCube( urls );
                reflectionCube.format = THREE.RGBFormat; 
    
    
                UMLogo.children[0].material.envMap = reflectionCube;
                UMLogo.children[0].material.reflectivity = 0.6;
                UMLogo.children[2].material.envMap = reflectionCube;
                UMLogo.children[2].material.reflectivity = 0.6;
    

    希望对你有帮助。

    【讨论】:

    • 嗨,我相信这正是我所追求的。非常感谢!
    猜你喜欢
    • 2015-03-26
    • 2015-05-13
    • 2014-12-03
    • 2016-02-16
    • 2017-11-29
    • 2018-05-19
    • 2023-03-20
    • 2016-09-23
    • 2015-09-01
    相关资源
    最近更新 更多