Blender Cycles渲染材质:体积着色器
2017-12-23 本文已影响298人
f41af751bacf
体积渲染用于类似于火、烟、雾、玻璃吸收光的渲染效果,或不能单独被表面网格所表现的效果。
模拟玻璃的吸收效果,可把表面着色器和体积着色器都添加上。
Cycles支持3种体积着色器节点,对特殊光穿越体积物体,和它之间的交互作用进行了建模。
体积着色节点效果图1. Volume Absorption(体积吸收)
- 吸收部分穿过物体内部的光线
- 效果用于黑烟、彩色玻璃中
- 有点像透射BSDF节点,可以让光线部分被阻挡、部分透过。
2. Volume Scatter(体积散射)
- 让穿过物体的光线在碰到粒子后散射到其他方向
- 各项异性值决定了光更多的向哪个方向散射
- 0值让光向所有方向散射(跟漫射BSDF节点很像)
- 负值让光逆向散射更多
- 正值让光前向散射
- 这个节点可以做白色烟雾或者云的效果
3. Emission(自发光)
- 散射可以让物体从内部发射灯光
- 这种情况可以模拟火焰效果(之前做蜡烛光的时候也用了这个)
密度(Density)
所有的体着色器都有一个密度定义。密度决定了光线有多少需要跟体积进行交互,得到吸收或者散色,还有多少会直接穿透。要模拟烟雾的时候你需要指定一个密度场来说明体积的哪些地方烟比较多(密度大于0),哪些地方是没有烟的(密度等于0)。
密度越高,单位体积内的粒子越多,这样光线与更多粒子碰撞,被吸收或者被打散,而不是直接透射出体积。
density变化体积材质(Volume Material)
和表面着色器交互(Interaction with the Surface Shader)
一个材质可以包含表面和体积着色器,或者择其一。比如,玻璃、水、冰的材质
当需要将光部分吸收和部分穿透表面的时候,在表面上混合玻璃(glass shader)或光泽着色器(glossy shader)。
玻璃材质烟雾(Smoke)
通过Cycles来创作烟雾材质是比较棘手的,然而以下图片提供一些不错的步骤指导。
烟雾和火焰材质