Unity到VRay的渲染方法

Unity可以说是应用广泛,功能全面的一个游戏引擎。在建筑可视化、三维模型展示等方面能够快速开发;有着不错的性能与效果。但是其渲染效果却有一定局限。

VRay则是在图形图像渲染领域有非常卓越的表现,有自己定义的材质灯光;渲染图片能够达到照片级别,VRay插件支持众多3D建模工具,比如3dmax、skecthup、autocad等主流建模工具。

BUT BUT BUT BUT BUT BUT BUT BUT BUT

VRay并不支持像Unity和UE4等一系列游戏引擎,好像游戏引擎多半也不需要VRay的支持。多数游戏引擎都有较好的渲染效果,其重点也不在能否得到照片级别的渲染效果。可是为了结合游戏引擎的可编程性以及VRay的渲染效果, We better do something。

实际上我们已经做了很多工作,我们已经能自己根据Unity程序设计的场景,在VRay渲染器中重现。

为了实现这个转换过程我们做的工作大概有下列内容:

1. 要自己能完全控制VRay渲染设置参数以及灯光参数

2. 要能通过Unity的设计添加模型到VRay场景

3. 将fbx模型制作成VRay模型

4. 解析VRay模型、添加到unity设计的场景中

5. 对Unity、3Dmax进行坐标系转换统一

6. 甚至你想对模型换贴图都可以

上面的效果图呢,放置模型的数据就如下面的json格式

"models": [
    {
        "name": "aolk_hbkq",
        "renderTransform": {
            "position": {
                "x": -0.290327072,
                "y": 0.2,
                "z": -3.05281746
            },
            "rotation": {
                "x": -90,
                "y": 30,
                "z": 0
            },
            "scale": {
                "x": 1.5,
                "y": 1.5,
                "z": 1.5
            }
        },
        "textureName": null,
        "texturePath": null,
        "vrscenePath": "/vrscene/",
        "polyList": null
    }
],

公告
本博客基于TinyBlog搭建,关注公众号CoderThing