材质着色器 dgs_material 和 dielectric_material 实现不同的反射和折射物理模型。
dgs_material 材质着色器可以模拟镜子、亮光漆或塑料、各向异性的光泽材质(如拉丝金属)、漫反射材质(如纸张)、半透明材质(如磨砂玻璃)以及这些材质的任意组合。此着色器不能用作阴影着色器,因为阴影只能沿直光线进行计算,这与 DGS 材质的定义不相符。使用全局照明可以对 DGS 对象中处于部分阴影的对象进行照明。
color "dgs_material" ( color "diffuse", color "glossy", color "specular", scalar "shiny", scalar "shiny_u", scalar "shiny_v", scalar "transp", scalar "ior", array light "lights" integer "mode")
对于等向反射,请使用 shiny 参数,并保留参数 shiny_u 和 shiny_v 未定义。如果 shiny 参数未定义或为零,着色器将检查 shiny_u 和 shiny_v 是否已定义且为非零值,如果是,则计算各向异性反射。曲面 U 方向用作各向异性拂刷方向。
dielectric_material 着色器是基于物理的材质着色器,可用于模拟玻璃、水和其他液体等电介质。该着色器对电介质界面使用菲涅尔公式。这意味着,透射穿过表面的大多数光形成垂直入射方向的角,而被表面反射的大多数光形成掠射角,从而模拟了真实的电介质行为。该着色器还使用比尔定律吸收穿过介质的光。这意味着光在两个电介质材质表面之间透射时会发生指数衰减。
支持以下两种类型的电介质界面:电介质-空气模拟电介质材质与空气之间的界面,如玻璃-空气;电介质-电介质模拟两种电介质材质之间的界面,如玻璃-水。
若要实现物理校正模拟,请务必使用正确的表面界面。对一玻璃杯白兰地酒建模时,需要三个不同的界面:玻璃-空气、玻璃-白兰地酒和白兰地酒-空气。电介质材质使用表面的法线来区分界面任一侧上的介质。对于电介质-空气界面,法线指向空气。对于电介质-电介质界面,法线指向“外部”的电介质材质。若要使用电介质材质,模型法线必须正确定向,除非 ignore_normals 参数设定为 true。此着色器不能用作阴影着色器。
color "dielectric_material" ( color "col", scalar "ior", color "col_out", scalar "ior_out", boolean "ignore_normals" scalar "phong_coef", array lights "lights", integer "mode")
path_material 着色器实现路径光线跟踪。与分布式光线跟踪相反,对于每次光线碰撞,当使用路径光线跟踪时,至多一条光线被反射或折射。如果跟踪深度限制足够大,大多数间接照明效果会计算正确。但是,结果是噪波过多,且需要极高的采样数才能获得高质量的图像。
请注意,最终聚集和全局照明设置不会影响具有 path_material 的曲面:漫反射间接照明组件通过按照朗伯 (Lambertian) 分布式方向反射至多一条光线来计算。无 path_material_photon 着色器。若要实现渲染加速,应禁用最终聚集和光子发射。可能需要高于使用光子的场景中的跟踪深度设置。
color "path_material" ( color "diffuse", color "glossy", color "specular", scalar "shiny", scalar "shiny_u", scalar "shiny_v", scalar "transp", scalar "ior", array light "lights", integer "mode")
参数及其含义与 dgs_material 着色器的参数和含义相同。
Copyright © 1986, 2015 NVIDIA ARC GmbH. All rights reserved.