oceanShader/海洋(纹理)

 
 
 

“海洋”(Ocean)纹理可用于模拟某个范围内的水浪图案,从浴盆中的小规模波浪到大规模的汹涌海浪。设计旨在作为置换贴图而使用。

作为置换进行应用之前,在指定着色器的对象上禁用基于特征的置换。这样除设置了置换之外,也设置了一个凹凸节点,可用于保持较低的三角形数量。若要查看波浪运动,请为“时间”(Time)属性设定动画。使用“Perlin”噪波和受“时间”(Time)属性驱动的正弦波浪,内部(程序)定义该纹理。

“海洋”(Ocean)着色器可模拟颜色随着海洋效果的灯光和观察角度而发生更改的方式。

海洋属性(Ocean Attributes)

比例(Scale)

控制大小(以米为单位),使其与 UV 中 0 到 1 纹理空间相对应(适用于默认的纹理放置设置)。

时间(Time)

使用该属性为“海洋”(Ocean)纹理设定动画。可以对“时间”(Time)属性设定关键帧,以控制场景中海洋纹理的速率和变化量。该值表示给定比例值时水面的秒数。在“时间”(Time)框中键入表达式 "= time",以便创建出与比例相对的、大致正确的动画速率。

风 UV (Wind UV)

控制波浪移动的(平均)方向,从而模拟出风的效果。该项表示为 UV 纹理空间中的 U 值和 V 值。

注意

“风 UV”(Wind UV)设定动画将导致运动不太自然,所以应避免对其设定动画。

波速率(Wave Speed)

定义波浪移动的速率。该选项缩放用于确定波浪移动的输入时间。

“波速率”(Wave Speed)值为 1.0 时,Maya 将以 Maya 单位和“比例”(Scale)属性共同确定的比例,为开放的海洋波浪创建正确速率。例如,如果比例为 10 且波速率为 1,则 1 个单位就表示 10 米,并且波浪以正确速率进行移动。

若要冻结波浪,请使速率为零。

无法使用该属性随时间变化更改速率。需要改为在“时间”(Time)属性上更改动画。

观察者速率(Observer Speed)

“观察者速率”(Observer Speed)通过移动模拟的观察者来取消横向的波浪运动。这类似于相对于风向为纹理的“UV 偏移”(UV Offset)设定动画。

“观察者速率”(Observer Speed)值为 1.0 时,主波似乎没有移动,因为查看器与波浪以相同的速率移动。次波仍将相对于主波进行移动。

频率数(Num Frequencies)

控制“最小波长”(Wave Length Min)“最大波长”(Wave Length Max)之间插值频率的数值。

注意

该值越高,该纹理计算所要花费的时间越长。

如果该值并非整数,则已创建频率的数值就是化整的值,但附加频率的振幅将与余数成比例(例如,余数为 0.25 时振幅为 8.25);这样即可平滑地为该属性设定动画。

波方向扩散(Wave Dir Spread)

根据风向定义波方向的变化。

如果为 0,则所有波浪向相同方向移动。

如果为 1,则波浪向随机方向移动。

风向不一致加上波浪折射等其他效果就将导致波方向的自然变化。

最小波长(Wave Length Min)

控制波的最小长度(以米为单位)。这是波长的最大值或最小值。

最大波长(Wave Length Max)

控制波的最大长度(以米为单位)。这是波长的最大值或最小值。

波高度(Wave Height)

相对于波长控制波浪大小。

图表的左侧边表示波长最短的波浪,图表的右侧边表示波长最长的波浪(由“最小波长”(Wave Length Min)“最大波长”(Wave Length Max)确定)。

如果值为 1.0,则波高度为长度的一半。

如果图表是水平线,则所有波浪高度相同且与长度成比例。请参见设定流体属性渐变

选定位置(Selected Position)

该值表示渐变上选定标记的位置(介于左侧的 0 和右侧的 1 之间)。

选定值(Selected Value)

表示渐变上选定位置的值。若要更改该值,请向上或向下拖动标记点,或在该框中键入值。

插值(Interpolation)

控制曲线上位置标记之间值的混合方式。默认设置为“线性”(Linear)

无(None)

值之间没有插值。

线性(Linear)

使用线性曲线对值进行插值。

平滑(Smooth)

沿钟形曲线对值进行插值,以便曲线图上的每个值都可控制它周围的区域,然后快速地混合到下一个值。

样条线(Spline)

使用样条曲线插值,并将相邻位置标记都列入考虑,以便产生更为平滑的过渡。

波湍流(Wave Turbulence)

控制不同波频率的湍流数量。

图表的左侧边表示波长最短的波浪,图表的右侧边表示波长最长的波浪(由“最小波长”(Wave Length Min)“最大波长”(Wave Length Max)确定)。

对于值 1.0,波浪运动将在定义频率处完全紊流。

对于每个波频率,湍流波浪的组件都由多个该频率的正弦波浪组成。这是最消耗计算量的属性。将其设为 0 将显著加快渲染,尽管这对于暴风雨或起风水面的模拟而言很重要。“波峰”(Wave Peaking)属性仅影响湍流波浪层,所以无论该值是否为零,“波峰”(Wave Peaking)属性都不会产生影响。

有关创建曲线的详细信息,请参见设定流体属性渐变

波峰(Wave Peaking)

控制整个波频率范围中浪尖形成的数量。“波峰”(Wave Peaking)将模拟边到边的波浪晃动,与上下运动相对。该属性的“波湍流”(Wave Turbulence)必须非零才能有效果,因为其仅应用于湍流波浪。

该属性值非零时,执行的噪波函数计算更多,因此计算速度将受到影响。

有关创建曲线的详细信息,请参见设定流体属性渐变

波高度偏移(Wave Height Offset)

(仅适用于着色器)海洋总体置换上的简单偏移。上纹理时,该选项适用于添加自定义波浪和船尾迹。

泡沫发射(Foam Emission)

控制生成的超出“泡沫阈值”(Foam Threshold)的泡沫密度。“泡沫发射”(Foam Emission)值将输出到 outFoam 属性,该值可用于定义分层泡沫着色器的不透明度。

泡沫阈值(Foam Threshold)

控制生成泡沫所需的“波振幅”(Wave Amplitude)以及泡沫持续的时间。

泡沫偏移(Foam Offset)

在所有位置添加一致的泡沫。当您需要添加自定义泡沫纹理时,该选项非常有用。

凹凸模糊(Bump Blur)

定义在计算着色凹凸法线中使用的采样的分离(相对于最小波长)。值越大,产生的波浪越小、波峰越平滑。

地平线过滤器(Horizon Filter)

基于视图距离和角度增加“凹凸模糊”,以便沿海平线平滑或过滤抖动和颤动。地平线过滤器默认为 1.0。

颜色模式(Color Mode)

(仅适用于纹理)选择输出到颜色通道的内容,规格化“波高度”(Wave Height)“泡沫”(Foam)“波浪”(Waves)“泡沫”(Foam)(蓝绿色的“波高度”(Wave Height)具有白色泡沫)。

公用材质属性

水颜色(Water Color)

定义曲面的基本颜色。

泡沫颜色(Foam Color)

定义泡沫层的颜色。模拟泡沫的一部分可能将视为潜在水中,这种情况下,颜色将与材质颜色混合。

透明度(Transparency)

控制材质的透明度和不透明度。黑色表示完全不透明(默认),白色表示完全透明。可将其设定为二者之间的任何级别。也可以逐通道地控制透明度;例如,如果将其设定为红色,则仅红通道为透明。

注意

如果该材质具有镜面高光(例如,“Phong”“Blinn”着色器),透明度的设置就不会影响高光。因此,如果尝试通过为透明度属性设定动画来使对象消失,则可能也需要为镜面高光属性设定动画。

折射率(Refractive Index)

定义光线穿过对象时的弯曲光线的数量。该属性仅适用于材质部分或完全透明(请参见“透明度”)、折射处于启用状态(请参见“折射”)且使用“光线跟踪”(Ray Tracing)进行渲染(在“渲染设置”(Render Settings)中设定)的情况。

如果“折射率”(Refractive Index)设定为 1.0,则灯光穿过对象时不会发生弯曲。以下是其他一些有用的“折射率”(Refractive Index)值:空气:1.0,水:1.33,汽油:1.45,水晶:2.00,玻璃:1.5,冰:1.309,石英:1.6,红宝石:1.77,青玉:1.77,盐:1.54,酒精:1.329,翡翠:1.57,聚苯乙烯:1.55。

注意

如果使对象成为透明,则仅当“在折射中可见”(Visible In Refractions)属性处于启用状态时,才能通过折射看到对象。

白炽度(Incandescence)

使材质显现为乳白色,如同其自身在发光一般(例如,熔岩或发出磷光的苔藓)。例如,植物物质上白炽度的轻微触动可以使植被看起来像活的一样。

默认情况下,颜色为黑色且不会对曲面产生影响。

注意

尽管白炽度使曲面似乎在发光,但曲面实际上不会作为场景中的光源。

请参见辉光

环境色(Ambient Color)

默认情况下“环境色”(Ambient Color)为黑色,这意味着它不会影响材质的总体颜色。当环境色变得更明亮时,将通过使材质颜色变亮和混合两种颜色来对材质颜色产生影响。

如果场景中存在环境光,则这些灯光的颜色和亮度将用于控制贡献到材质最终颜色的环境色的量。

漫反射(Diffuse)

控制场景中从对象散射的灯光的量。大多数材质将吸收一些照射到材质上的灯光,并散射其余灯光。

波谷阴影(Trough Shadowing)

使波谷中的漫反射颜色更暗。该选项可模拟更明亮波峰处的某些照明条件,从而散射灯光。该属性适用于波浪颜色处于蓝绿色范围内的情况。

半透明(Translucence)

模拟漫穿透半透明对象的灯光。这意味着当灯光照在对象一侧上时,另一侧将部分照亮。可用于如云、毛发、头发、大理石、玉、蜡、纸、树叶等效果。

如果“半透明”(Translucence)设定为 0(默认),则没有灯光能透过对象显示。如果设定为 1,则所有灯光都将透出。

半透明聚焦(Translucence Focus)

模拟穿过半透明对象的灯光在多个前进方向上进行散射的方式。类似于树叶的薄对象或类似于云的小密度对象往往更多地是在一个前进方向上进行散射。

“半透明聚焦”(Translucence Focus)为 0.0 时,半透明灯光向所有方向进行散射。当聚焦值提高时,半透明灯光将在更多的灯光方向上进行散射。这将使树叶背光侧的辉光多于面光侧。聚焦值较高时,可穿过半透明对象查看光源附近的光晕或辉光。

半透明深度(Translucence Depth)

定义可使半透明衰退为无的对象穿透深度。

“半透明深度”(Translucence Depth)为 0 时,半透明度不会随着灯光穿过对象的移动距离而发生衰退。

镜面反射着色(Specular Shading)

镜面反射度(Specularity)

控制镜面高光的亮度。该值为镜面反射颜色的倍增。

偏心率(Eccentricity)

控制镜面高光(热点)的大小。

镜面反射颜色(Specular Color)

定义材质上镜面高光的颜色。高光反射的最终颜色是“镜面反射颜色”(Specular Color)和灯光颜色的组合。

通过将“镜面反射颜色”(Specular Color)调亮或调暗,可以控制对象上高光反射的亮度。

提示

若要使材质更类似于塑胶,请将白色作为镜面反射颜色。若要使材质更具有金属质感,请使镜面反射颜色更接近于曲面颜色。

反射率(Reflectivity)

使用“反射率”(Reflectivity),使对象像镜子一样反射灯光。

如果希望材质完全不反射,则将其设定为 0。增加该值以使反射更亮。请注意,反射越亮,基础曲面的颜色隐藏越多。只有当存在反射贴图或进行“光线跟踪”(Ray Tracing)时,该属性才有意义。

以下是一些有用的“反射率”(Reflectivity)值:

汽车颜料:0.4,玻璃:0.7,镜子:1.0,铬:1.0

注意

如果进行“光线跟踪”(Ray Tracing),并且希望场景中的其他对象在反射中可见,则这些对象的“在反射中可见”(Visible In Reflections)属性必须处于启用状态(默认)。

环境(Environment)

定义简单天空,以便使用渐变固定环境反射。渐变左侧为天空顶部,右侧为天空底部。有关详细信息,请参见环境

辉光(Glow)

辉光强度(Glow Intensity)

控制辉光(材质附近灯光的微弱光晕)的亮度。“辉光强度”(Glow Intensity)默认为 0,这意味着没有辉光添加到材质。增加“辉光强度”(Glow Intensity)时,辉光效果的表观大小将增加。

“辉光强度”(Glow Intensity)在两个重要方面与“白炽度”(Incandescence)属性不同:

蒙版不透明度(Matte Opacity)

使用蒙版(Alpha 通道或遮罩)进行渲染时,本区域中属性将控制该流体在蒙版中的显示方式。如果要合成渲染图像,该选项非常有用。

蒙版不透明度模式(Matte Opacity Mode)

选择 Maya 对“蒙版不透明度”(Matte Opacity)值的使用方式。

不透明度增益(Opacity Gain)

基于对象的透明度计算蒙版值,然后乘以“蒙版不透明度”(Matte Opacity)值。使用“不透明度增益”(Opacity Gain),可以为“蒙版不透明度”(Matte Opacity)的值设定动画,以便以后合成时更改对象的总体透明度。

匀值蒙版(Solid Matte)

流体的整个蒙版设定为“蒙版不透明度”(Matte Opacity)属性的值。除正常计算的蒙版值将忽略以支持“蒙版不透明度”(Matte Opacity)设置之外,该选项与“不透明度增益”类似。如果对象上存在透明区域,则将在蒙版上忽略这些区域中的透明度。不希望背景透过透明区域显示时,使用该设置将对象与透明区域合成。

黑洞(Black Hole)

“蒙版不透明度”(Matte Opacity)值将被忽略,并且此流体的所有蒙版都被设定为透明。当在场景中使用替换几何体替代以后将合成的背景图像中的对象时,可使用此选项。您的替代对象将在蒙版中“打一个洞”。这将允许计算机生成的其他几何体从替代对象的后面通过。当稍后前景和背景合成时,结果就将是正确的,而背景对象将透过“黑洞”区域进行显示。

“蒙版不透明度”(Matte Opacity)默认值为 1,因此默认情况下“匀值蒙版”(Solid Matte)“不透明度增益”(Opacity Gain)没有效果。

蒙版不透明度(Matte Opacity)

“蒙版不透明度”(Matte Opacity)“蒙版不透明度模式”(Matte Opacity Mode)共同使用,以影响该流体蒙版(Alpha 通道或遮罩)的计算方式。

光线跟踪选项(Raytrace Options)

折射(Refractions)

启用“折射”(Refractions),以便在使用“光线跟踪”(Ray Tracing)进行渲染时,使材质折射灯光。除非“折射率”(Refractive Index)设定为大于 1.0 的值,否则无法看出差异。(有关详细信息,请参见“折射率”(Refractive Index)属性。)“折射”(Refractions)默认处于禁用状态。

折射限制(Refraction Limit)

光线深度限制。

阴影衰减(Shadow Attenuation)

“伪折射焦散”(Fake Refraction Caustics)

“阴影衰减”(Shadow Attenuation)使中心处的透明对象阴影更亮,从而模拟灯光的聚焦。值为 0 将产生恒定强度的阴影,值为 1 将产生聚焦在中心的阴影。

反射限制(Reflection Limit)

反射光线深度限制。

镜面反射度(Reflection Specularity)

当处理光线跟踪的反射光线时,控制镜面组件的贡献(当视为镜像反射时的镜面贡献)。