ここでは、レイヤ パッケージに現在インストールされている一般的なベース フェノメナについて説明します。
このフェノメナは、光沢反射および拡散反射を混合します(両方とも同じティント カラーを使用)。
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
このフェノメナは、拡散反射レイヤの上位に光沢反射レイヤを設定します(両方とも同じティント カラーを使用)。光沢のあるレイヤは、方向依存ウェイトを決定するフレネル IOR を使用して一方向にウェイト付けされます。
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
このフェノメナは、拡散反射レイヤの上位に光沢反射レイヤを設定します(両方とも同じティント カラーを使用)。光沢のあるレイヤは、方向依存ウェイトを決定するフレネル IOR を使用して一方向にウェイト付けされます。光沢反射の異方性コントロールと拡散の粗さを追加します。
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
このフェノメナは、拡散反射レイヤの上位に光沢反射レイヤを設定しますが、ティント カラーを使用するのは拡散のみです。光沢のあるレイヤは、方向依存ウェイトを決定するフレネル IOR を使用して一方向にウェイト付けされます。
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)のフレネル インデックスを使用してディレクショナル ウェイトを設定することにより、方向依存ウェイトを決定します。光沢反射と光沢透過の両方の異方性コントロールを追加し、透過の方向転換(屈折)に同じ 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)のフレネル インデックスを使用してディレクショナル ウェイトを設定することにより、方向依存ウェイトを決定します。透過の方向転換(屈折)を決定する場合も同じ 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
このフェノメナは 3 つの光沢反射コンポーネントを組み合わせます。ティント カラーはすべての反射コンポーネントに適用されます。各コンポーネントには、他と異なるウェイトおよび粗さが設定されています。
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)をモデル化します。ティント カラーは二次反射によって得られるカラーに適用されます。なぜなら、このコンポーネントは内側サーフェスからヘア ストランドに入り、ヘアから戻る光をモデル化するためです。透過カラーには、このカラーの半分の距離の計算値(平方根)が使用されます。一次反射はティントされません。 一次および二次反射は、シフト(これらのコンポーネントに適用される法線シフト)を行うことによってスプレッドされます。
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