【Blender】動くマテリアルを作ろう|ノードアニメーション入門

記事内に広告が含まれています。

Blenderでは、シェーダーノードにアニメーション的な変化を与えることで、水の波紋・炎・流れる模様などを表現できます。この回では、ノードだけで動きを作る方法を基本から解説します。


ノードアニメーションの基本:動かすための原則

ノード単体では「動き」は持っていません。しかし、「時間に応じた値」を入力することで、動きのあるマテリアルを作ることができます。

✅ よく使うノード

ノード名用途
Value値のスライダー。時間による変化を加えるベース
Math加算・乗算などで時間制御を調整
Mapping座標変化による模様の移動
Sine / Wave Textureリズムや周期表現に最適
ColorRamp動きの色変化を調整するために使う

アニメーションのための「時間」を得る方法

1. ドライバーを使う(初心者向け)

Valueノードの値に「#frame / 50」のような数式を入力すれば、入力欄が紫色になりフレーム数に応じて値が自動更新されます。

入力例:
#frame / 50 → 1秒に約1の値が進む(24fps~30fps基準)

2. Keyframe(キーフレーム)を使う

  • Valueノードを右クリック→「Insert Keyframe」
  • タイムラインに沿って値を変えてアニメーション

使用例①:模様が流れる水面

Texture Coordinate(Object) → Mapping(Locationに Value ノード) → Noise Texture → ColorRamp → Base Color
  • MappingノードのX軸のLocationValueノードを接続
  • Valueノードに「#frame / 50」などのドライバー式を入力

これだけで、水が流れるような模様の動きが作れます。


使用例②:炎やエネルギーの動き

[Noise Texture](3D) → [ColorRamp] → [Emission]
  • Noise TextureZ軸Valueノードで変化させる
  • ColorRampで赤→オレンジ→黄色のような炎グラデーションを表現

応用:Emissionに Multiply をかけて強度をアニメーションさせることで、揺らぎ表現も可能


使用例③:波紋・リング状の動き

[Wave Texture(Rings)] → [Mapping](Z軸アニメーション) → [ColorRamp] → [Base Color]
  • Wave Textureの Ringタイプ を使用
  • Mappingのスケールや位置に変化を加えることで波紋の広がりを再現

裏技:Object Infoノードの「Random」出力でオブジェクトごとに動きの差をつける

複数のオブジェクトに同じマテリアルを使っても、「ランダム性」+「Value」や「Time」連動で一体感あるアニメーションが作れます。


注意点:Eeveeでは動かない表現もある

  • 一部の時間依存ノードは Cyclesでのみ反映される
  • 特に Shader to RGB(トゥーン表現)などはEeveeで要検証

まとめ

シェーダーノードを動かすポイントは「時間」と「位置」の操作です。
単に色を変えるだけでなく、波打ち・点滅・スライド・模様の揺れなどの効果も作れるため、エフェクト系やアニメ風表現でも役立ちます。


オススメ書籍

コメント

タイトルとURLをコピーしました