osl开放材质和透视贴图的使用

作者:炫云 2021-06-24

什么是OSL,可能很多人对该功能了解不深,今天小编就为大家带来关于OSL开放材质语言及相关配套透视贴图的分享。

OSL是一种小而丰富的语言,用于高级渲染器和其他应用程序中的可编程着色,非常适合描述材质,灯光,置换和图案生成。它最初是由Sony Pictures Imageworks开发的,用于其内部渲染器中,该渲染器用于故事片动画和视觉效果,并作为开源发布,因此可以被其他视觉效果,动画工作室和渲染软件供应商使用。现在,它已成为用于VFX和动画功能的事实上的标准着色语言,在整个行业中成为许多商业和工作室专有的渲染器。

OSL于2017年获得了奥斯卡技术成就奖。

 github项目链接:https://github.com/imageworks/OpenShadingLanguage

也许你看了上面的链接,还是不知道OSL是什么,其实简单来说就是一个写着色器的开源项目,你可以用它为3ds max编写各种各样的贴图节点,目前只支持贴图,不过已经非常强大,因为3ds max自带了100多个节点,并且这些节点还在增加,在3ds max2021还会增加更多有趣的节点,在2021还会支持引用 .ui文件。这将允许我们创建非常丰富的ui。

现在大部分人用osl比较多的地方就是店铺门窗内的效果,传统可能只使用一个自发光然后加一个位图的方式,现在利用OSL配合透视的、贴图就可以获得真实的效果。

那在实际3dsmax内是如何制作的呢,接下来小编给大家简单梳理下使用流程

1、准备:
需要两个osl控制贴图,贴图OSL-Values-File Name;
    ①渲染器控制,OSL代码SetFile.osl,选择对应渲染器的接口osl文件(默认在 Max安装路径下\OSL内),如Arnold、Blender、Coroana、Octane、vray各不同。
    ②贴图控制,OSL贴图参数File Name,挑一张场景图,普通或HDRI均可,如.hdr,.exr。

2、连接:
把②贴图控制的 File Name 节点 指定给①渲染器控制的 input_tex 通道;
再把①渲染器控制的 result 节点 指定给 VRay灯光材质的 灯光颜色通道;或Vr标准材质的自发光通道。
最后把VRay材质指定给模拟“房间”的面片。

3、调节参数:
现在已经可以渲染了,但可能是黑的,需要调节参数。
进入①渲染器控制,调节这里的参数

zUpAxis  z轴向上  --默认0
input_tex 输入纹理
textureFlip  上下翻转  --默认0(改1即可翻转)
textureFlop  左右翻转  --默认0
roomDepth  房间深度  --默认1
widthOverscan  宽度调节  --默认0
heightOverscan  高度调节  --默认0
enableMidground  添加对象  --默认0(改此值可以显示图片中不同“层次”的对象,如人物)
midgroundDepth  对象深度  --默认0.5
midgroundOffsetX  对象x轴偏移  --默认0
midgroundOffsetY  对象y轴偏移  --默认0
windowAspect  显示窗口  --默认0;改为1【最重要】
enableCurtains  显示窗帘  --默认0(改1即显示窗帘等窗边物体)

今天就给大家分享到这,希望能给大家带来帮助,如果觉得还可以可以给我点个赞,有任何疑问也可以在下面留言也可以直接到B站看更全面的相关视频:

B站链接:https://www.bilibili.com/video/BV1FK4y1K7kX