以下是在当前分层包中实现的常规基础现象。
此现象混合光泽和漫反射,两者都使用相同的染色。
declare phenomenon color
"mila_mix_reflective" (
color "tint" default 0.7 0.7 0.7 1.0,
# Glossy
scalar "glossy_weight" default 0.5, #: min 0 max 1
scalar "glossy_roughness" default 0.4, #: min 0 max 1
scalar "direct" default 1.0, #: min 0 max 1
scalar "indirect" default 1.0 #: min 0 max 1
)
...
version 1
end declare
此现象在漫反射顶部放置一层光泽,两者都使用相同的染色。使用菲涅耳折射率定向加权光泽层,以确定方向相关权重。
declare phenomenon color
"mila_layer_reflective" (
color "tint" default 0.7 0.7 0.7 1.0,
# Glossy
scalar "glossy_weight" default 0.5, #: min 0 max 1
scalar "glossy_roughness" default 0.4, #: min 0 max 1
scalar "ior" default 1.4, #: min 1 max 20 softmax 2
scalar "direct" default 1.0, #: min 0 max 1
scalar "indirect" default 1.0 #: min 0 max 1
)
...
version 1
end declare
此现象混合光泽和漫反射,两者都使用相同的染色。添加各向异性控制和漫反射粗糙度,优于光泽粗糙度。
declare phenomenon color
"mila_mix_reflective_aniso" (
color "tint" default 0.7 0.7 0.7 1.0,
# Glossy
scalar "glossy_weight" default 0.5, #: min 0 max 1
scalar "glossy_roughness" default 0.4, #: min 0 max 1
# Additional Glossy
scalar "anisotropy" default 1.0,
scalar "aniso_angle" default 0.0,
integer "aniso_channel" default -1,
# Diffuse
scalar "diffuse_roughness" default 0.0, #: min 0 max 1
scalar "direct" default 1.0, #: min 0 max 1
scalar "indirect" default 1.0 #: min 0 max 1
)
...
version 1
end declare
此现象在漫反射顶部放置一层光泽,两者都使用相同的染色。使用菲涅耳折射率定向加权光泽层,以确定方向相关权重。为光泽反射添加各向异性控制,为漫反射添加粗糙度。
declare phenomenon color
"mila_layer_reflective_aniso" (
color "tint" default 0.7 0.7 0.7 1.0,
# Glossy
scalar "glossy_weight" default 0.5, #: min 0 max 1
scalar "glossy_roughness" default 0.4, #: min 0 max 1
scalar "ior" default 1.4, #: min 1 max 20 softmax 2
# Additional Glossy
scalar "anisotropy" default 1.0,
scalar "aniso_angle" default 0.0,
integer "aniso_channel" default -1,
# Diffuse
scalar "diffuse_roughness" default 0.0, #: min 0 max 1
scalar "direct" default 1.0, #: min 0 max 1
scalar "indirect" default 1.0 #: min 0 max 1
)
...
version 1
end declare
此现象在漫反射顶部放置一层光泽,但是仅漫反射使用染色。使用菲涅耳折射率定向加权光泽层,以确定方向相关权重。
declare phenomenon color
"mila_layer_reflective_plastic" (
color "tint" default 0.7 0.7 0.7 1.0,
# Glossy
scalar "glossy_weight" default 0.5, #: min 0 max 1
scalar "glossy_roughness" default 0.4, #: min 0 max 1
scalar "ior" default 1.4, #: min 1 max 20 softmax 2
scalar "direct" default 1.0, #: min 0 max 1
scalar "indirect" default 1.0 #: min 0 max 1
)
...
version 1
end declare
此现象为车漆类型的材质提供基础油漆层。它在可以在边缘更改颜色的漫反射顶部放置一层带有油漆碎片的光泽。在此基础上使用光泽或镜面反射组件,根据需要放置尽可能多的透明涂层。
declare phenomenon color
color "mila_layer_reflective_paint"
(
color "tint" default 0.8 0.1 0, #diffuse color
scalar "edge_weight" default 0.0,
color "edge_color" default 0 0 0, #diffuse color at grazing angles
scalar "edge_color_bias" default 1.0,
scalar "glossy_weight" default 0.2,
color "glossy_color" default 0.8 0.1 0,
scalar "glossy_roughness" default 0.6,
scalar "flake_weight" default 1.0,
color "flake_color" default 1 1 1,
scalar "flake_roughness" default 0.4,
scalar "flake_scale" default 0.05,
scalar "flake_density" default 0.8,
scalar "flake_strength" default 0.2,
integer "flake_type" default 3, #: enum "distortion1:distortion2:distortion3:cellular1:cellular2:cellular3"
integer "flake_cell_style" default 0, #: enum "edgy:circular"
scalar "flake_circle_size" default 0.3,
scalar "direct" default 1.0,
scalar "indirect" default 1.0
)
...
version 1
end declare
此现象在光泽透射顶部放置一层各向异性光泽反射,两者都使用相同的染色。使用菲涅耳折射率 (ior) 定向加权光泽反射层,以确定方向相关权重。为光泽反射和透射添加各向异性控制,并为透射重定向(折射)使用相同折射率。
declare phenomenon color
"mila_layer_transmissive" (
color "tint" default 1.0 1.0 1.0 1.0,
# Glossy
scalar "reflective_weight" default 1.0, #: min 0 max 1
scalar "roughness" default 0.4, #: min 0 max 1
scalar "ior" default 1.5, #: min 0 softmin 1 max 10 softmax 2
# Additional Glossy
scalar "anisotropy" default 1.0,
scalar "aniso_angle" default 0.0,
integer "aniso_channel" default -1,
# Transmission reuses ior, roughness, anisotropy
scalar "direct" default 1.0, #: min 0 max 1
scalar "indirect" default 1.0 #: min 0 max 1
)
...
version 1
end declare
指定吸收与最大距离时,此现象层使用染色作为最大距离颜色在光泽透射顶部放置一层光泽反射。使用菲涅耳折射率 (ior) 定向加权光泽反射层,以确定方向相关权重。
declare phenomenon color
"mila_layer_transmissive_distance" (
color "tint" default 1.0 1.0 1.0 1.0,
scalar "max_dist" default 2.0, #: min 0 softmax 5
# Glossy
scalar "reflective_weight" default 1.0, #: min 0 max 1
scalar "roughness" default 0.4, #: min 0 max 1
scalar "ior" default 1.5, #: min 0 softmin 1 max 10 softmax 2
# Transmission reuses ior, roughness, anisotropy
scalar "direct" default 1.0, #: min 0 max 1
scalar "indirect" default 1.0 #: min 0 max 1
)
...
version 1
end declare
此现象在镜面反射透射顶部放置一层镜面反射,两者都使用染色。使用菲涅耳折射率 (ior) 定向加权镜面反射层,以确定方向相关权重。使用相同的折射率来确定透射重定向(折射)。
declare phenomenon color
"mila_layer_transmissive_clear" (
color "tint" default 1.0 1.0 1.0 1.0,
# Specular
scalar "reflective_weight" default 1.0, #: min 0 max 1
scalar "ior" default 1.5, #: min 0 softmin 1 max 10 softmax 2
scalar "direct" default 1.0, #: min 0 max 1
scalar "indirect" default 1.0 #: min 0 max 1
)
...
version 1
end declare
此现象将漫反射与次表面散射结合起来,并且简化了对次表面散射的控制。染色应用于漫反射以及前面和后面的散射染色。前面和后面的颜色应用于灯光散射的方式。scale_conversion 可以影响散射颜色使用的距离。默认距离值为 20 个单位,但是比例转化会影响该距离。
declare phenomenon color
"mila_mix_subsurface_scatter" (
# diffuse
color "tint" default 0.7 0.7 0.7 1.0,
scalar "roughness" default 0.0,
scalar "diffuse_weight" default 0.1, #: min 0 max 1
# scatter
scalar "front_weight" default 1.0,
color "front_color" default 1.0 0.5 0.25,
scalar "back_weight" default 1.0,
color "back_color" default 1.0 0.5 0.25,
scalar "back_depth", # unassigned (zero) means "same as radius"
scalar "sampling_dist_mult" default 2.0,
scalar "scale_conversion" default 1.0,
integer "resolution" default 1,
#
scalar "direct" default 1.0, #: min 0 max 1
scalar "indirect" default 1.0 #: min 0 max 1
)
...
version 1
end declare
此现象将漫反射与漫反射透射结合在一起。染色同时应用于反射和透射。
declare phenomenon color
"mila_mix_translucent" (
color "tint" default 0.7 0.7 0.7 1.0,
scalar "roughness" default 0.0, #: min 0 max 1
scalar "diffuse_weight" default 0.1, #: min 0 max 1
#
scalar "direct" default 1.0, #: min 0 max 1
scalar "indirect" default 1.0 #: min 0 max 1
)
...
version 1
end declare
此现象将三个光泽反射组件结合在一起。染色应用于所有反射组件。每个组件都具有互相独立的权重和粗糙度。
declare phenomenon color
"mila_mix_glossy_reflection" (
color "tint" default 1.0 1.0 1.0 1.0,
#
scalar "weight1" default 0.3, #: min 0 max 1
scalar "roughness1" default 0.3, #: min 0 max 1 #
scalar "weight2" default 0.3, #: min 0 max 1
scalar "roughness2" default 0.4, #: min 0 max 1 #
scalar "weight3" default 0.4, #: min 0 max 1
scalar "roughness3" default 0.5, #: min 0 max 1 #
scalar "direct" default 1.0, #: min 0 max 1
scalar "indirect" default 1.0 #: min 0 max 1
)
...
version 1
end declare
此现象在头发结合光泽反射、透射/透明度和其他光泽反射组件集时对它进行建模,以便在头发中建模主反射 (R)、透射 (TT) 和次反射 (TRT)。染色应用于从次反射产生的颜色,因为该组件对进入发股的灯光进行建模,从而弹离内部表面并重新透射出头发。将该颜色的一半距离计算 (sqrt) 用于透射颜色。主反射不会被染色。主反射和次反射通过移动进行扩散,表示应用于这些组件的法线移动。
declare phenomenon color "mila_layer_hair" (
color "tint" default 0.6 0.4 0.1,
scalar "shift" default 0.15,
scalar "r_weight" default 1.0, # multiplied by 1.55 ior directional
scalar "tt_weight" default 0.4,
scalar "glint_weight" default 0.6,
scalar "direct" default 1.0, #: min 0 max 1
scalar "indirect" default 1.0 #: min 0 max 1
)
...
version 1
end declare