マテリアル ノードを使用して、生きているように見えるマテリアルを作成します。 このエフェクトを作成するには、マテリアル ノードを設定し、Main Material ノードの World Position Offset 入力に接続します。
ダイナミックなマテリアルを作成するには、次の手順を実行します。
新しいマテリアルをメッシュの「Material」フォルダに作成し、「Moving_Mesh」と名付けます。
プレビュー ウィンドウで球体を平らなサーフェスに変更します。
次のノードを追加します。
3 X Multiply ノード
Sine ノード
VertexNormalWS ノード
Add ノード
Time ノード
TextureSample ノード
TextureSample ノードを使って、バッジ テクスチャを [Details (詳細)] パネルで、サンプルに追加します。
Texture Sample ノードの RGB 入力からドラッグし、Main Material ノードの Base Color 入力に接続します。
VertexNormalWS ノードからドラッグして、1 番目の Multiply ノードの A 入力に接続します。
1 番目の Multiply ノードからドラッグして、2 番目の Multiply ノードの A 入力に接続します。
2 番目の Multiply ノードからドラッグして、Main Material ノードの World Position Offset 入力 に接続します。
Texture Sample ノードの R 入力 (UV チャンネルの赤入力) からドラッグし、1 番目の Multiply ノードの B 入力に接続します。
マテリアルの特定カラーでの動きに注目するため、どのカラー チャンネル (R、G、B) からもつなげることができます。
Time ノードからドラッグして Sine ノードに接続します。
Sine ノードからドラッグして Add ノードの A 入力に接続します。
Add ノードからドラッグして、3 番目の Multiply ノードの A 入力に接続します。
Add ノードの値を「1.0」に変更します。
Multiply ノードの値を「10.0」に変更します。
Sine ノードを展開し、Period の値を「10.0」に変更します。
3 番目の Multiply ノードからドラッグし、2 番目の Multiply ノードの B 入力 に接続します。
赤チャンネルですべての頂点を乗算処理することにより、そこに赤を含むカラーの部分が移動します。ただし完全に赤である部分や、色が何もない部分は除きます。 VertexNormals は Time と Sine ノードで乗算され、正弦波に応じて赤チャンネルが時間で変動します。
赤チャンネルの正弦波の長さは、Add ノードにより -1.0 と +1.0 間の数値に決まり、3 番目の Multiply ノードで 10 倍に乗算されることで、頂点の方向で、動く量を決定します。
3 番目の Multiply ノードの数値を大きくすると、マテリアルで赤チャンネルの動きが大きくなります。
光で色を作る場合、赤、緑、青を混ぜると白色光になります。 そのため、メッシュの白の部分も移動します。
メッシュで移動する量は、メッシュの頂点の数で決まります。 したがって、低ポリゴン メッシュでは 2、3 の頂点のみが移動しますが、複雑なメッシュでは多くの頂点が動き、メッシュで大きなエフェクトを生み出します。