【Blender2.9】物理演算:ダイナミックペイント解説!

Blender

こんにちは!

Blenderの使い方や機能、ノウハウについてまとめているUEDAです。

自分のためのアウトプットの意味合いもありますが、読んだ方の参考になれば嬉しいです。

今回は〔ダイナミックペイント〕についてまとめていきます。

最初に簡単な使い方を説明して、その後は機能についてまとめています。

チュートリアルを行う中で、辞書的に使ってもらえるとよいのかなと思います!

ダイナミックペイントとは?

〔ダイナミックペイント〕とは、オブジェクトにリアルタイムで波や凹凸といった変位、塗料を塗られたようなペイントや、ウェイト情報を作成できる物理演算になります。

モディファイアーの一部でもあります。

〔ブラシ〕と〔キャンバス〕という2つの機能があり、組み合わせて使っていきます。

  • ブラシ ー オブジェクトがキャンバス上に効果を適用させる
  • キャンバス ー ブラシから効果を受けとる

正に名前の通りで、キャンバスにブラシで変化を与えることができます。

簡易的な使い方

まずは簡単にダイナミックペイントの使い方を見ていきましょう。

最初に〔ブラシ〕と〔キャンバス〕となるオブジェクトを準備します。

今回は〔ブラシ → ICO球〕で、〔キャンバス → 平面〕を使っていきます。

次にそれぞれに〔ダイナミックペイント〕を設定していきます。

右側の〔物理演算プロパティ〕から〔ダイナミックペンイント〕を選択します。

2つのオブジェクトに設定してください。

次に〔タイプ〕からそれぞれのオブジェクトを〔ブラシ〕と〔キャンバス〕に変更します。

変更すると下部に〔ブラシ/キャンバスを追加〕というボタンがあるので、選択してください。

キャンバスの準備

〔フォーマット:頂点〕を使用していきます。

他にも〔連番方式〕というのもあるのですが、詳しくは後述します。

〔フォーマット:頂点〕は、〔ブラシ〕のペイントを受け取るための頂点が必要になります。

頂点が少ないと粗い変化になってしまうので、ある程度滑らかに形状変化させたいので細分化していきます。

〔ディスプレイスメント〕などと同じような考え方ですね。

【Blender2.9】レンガ壁を作成~レンガテクスチャ・ディスプレイスメント・バンプ~
こんにちは! Blenderでの3DCG制作を勉強中のUEDAです。 Blenderを勉強して、アウトプット...

このくらい細分化してみました。

細分化方法について詳しくはコチラの記事でまとめているので、ぜひ読んでみてください!

【Blender2.9】細分化(分割)する方法まとめ:モデリングの基礎技術
こんにちは! Blenderの使い方や機能、ノウハウについてまとめているUEDAです。 自分のためのアウトプ...

これでひとまず準備は完了になります。

”Space”でアニメーションを再生しながら、ブラシのオブジェクトをキャンバス上で動かしてみましょう。

ブラシの動きに合わせて、キャンバスに波が発生しました。

簡単に使い方が分かったところで、それぞれの機能を詳しく見ていきましょう!

ブラシ

〔ブラシ〕の機能についてまとめていきます。

以下の4項目があり、それぞれに細かい設定項目があります。

  • 設定
  • ソース
  • 速度

設定

〔塗りの色〕は、ペイント時の色を設定できます。

〔アルファ〕は、ウェットマップ使用時の透明度を設定できます。

0.20
0.70

〔湿気〕は、ウェットマップを使用時のブラシの湿り気を設定できます。

値を下げると、水彩画の様に薄くなっていますね。

0.10
1.00

〔アルファ絶対値〕は、よく分かりませんでした。。

とりあえずデフォルトでも大丈夫そうなので、そのままにしておきましょう。

〔ペイント削除〕は、ブラシでペイントすることで既存のペイントを削除する効果を追加します。

チェックマークを付けることで有効になります。

簡単に言うと、ブラシを消しゴムとして利用することができるようになる機能ですね。

ソース

〔ソース〕は、ブラシの影響させる範囲を設定することができます。

ブラシに〔パーティクル〕を使いたい場合は、以下で紹介する〔パーティクルシステム〕の項目での設定が必要になってきます。

【パーティクルシステムの項目についてはコチラから!】

タイプの違う5種類があるので、塗り方の必要に応じて使い分けることができます。

  • メッシュボリューム
  • メッシュボリューム + 面境界
  • 面境界
  • オブジェクトの中心
  • パーティクルシステム

この5種類の項目内で共通する機能があるので、それらは先に紹介しておきます。

〔距離〕は、ソースのペイントによって定義した箇所からの影響範囲を調整できます。

〔減衰〕は、ペイントの減衰動作を設定することができます。

〔プロジェクト〕は、選択項目の方向からキャンバスにブラシを付けます。

メッシュボリューム

〔メッシュボリューム〕は、ブラシとキャンバスが交差しているすべての頂点に影響を及ぼします。

出典:Blender2.93マニュアル 物理学 ダイナミックペイント ブラシ

メッシュボリューム + 面境界

〔メッシュボリューム + 面境界〕は、〔メッシュボリューム〕の範囲にプラスして更に設定した距離に影響を及ぼします。

〔面境界の内側〕によって、メッシュボリューム内に影響を及ぼします。

〔負のボリューム〕は、ボリューム外にのみ影響を及ぼします。

面境界の内側\負のボリューム無効有効
無効
有効

面境界

〔面境界〕は、キャンバスに最も近いブラシの頂点から定義した距離に影響を及ぼします。

出典:Blender2.93マニュアル 物理学 ダイナミックペイント ブラシ

オブジェクトの中心

〔オブジェクトの中心〕は、ブラシの中心から定義した距離に影響を及ぼします。

出典:Blender2.93マニュアル 物理学 ダイナミックペイント ブラシ

パーティクルシステム

〔パーティクルシステム〕は、設定したパーティクルシステムをブラシとして使用することができます。

下部の〔パーティクルシステム〕の欄に、ブラシに設定したパーティクルを追加することで使用できます。

パーティクルは〔ソリッド半径〕と〔スムーズな減衰〕によって影響を範囲を定義することができます。

出典:Blender2.93マニュアル 物理学 ダイナミックペイント ブラシ

〔ソリッド半径〕は〔エフェクトソリッド半径〕、〔スムーズな減衰〕は〔半径をスムージング〕で設定することができます。

それぞれの値を変更して組み合わせることで、このように変化させることができます。

出典:Blender2.93マニュアル 物理学 ダイナミックペイント ブラシ

速度

〔カラーランプ〕でブラシの速度を調整することができ、それに基づいてその他の機能が作用するようです。

使い方がよく分からなかったので、分かり次第追記します。

〔波〕は、〔キャンバスタイプ:波〕の時にブラシが生み出す効果を設定できます。

〔タイプ〕には以下の4種類があります。

  • 深度変化 ー デフォルトの波作成タイプ
  • 障害物 ー 波と凸凹を作成
  • 力 ー オブジェクトの速度に依存した波を発生
  • 反射 ー 波を生成はしないが、すでにある波を反射

〔係数〕は、シミュレーションへの影響力を調整できます。

負の値も存在するので、影響を逆さまにすることも可能です。

1.00
-1.00

実際に負の値を使って、見栄えのよい船から発生する波を作成することができるようです。

〔波の制限〕は、波の影響が届く深さを制限する機能です。

キャンバス

続いて〔キャンバス〕の機能についてまとめていきます。

こっちの方が割とメインで調整って感じですかね。

  • 設定
  • サーフェス
  • キャッシュ
  • エフェクト
  • 初期色
  • 出力

設定

一番上に、キャンバスの表面設定のリストがあります。

右側のプラス・マイナスを選択することで、複数の表面設定を追加/削除することができます。

例えば上記の様に〔波〕と〔ディスプレイス〕を追加すると、どちらの効果も使用することができます。

それぞれの表面設定の有効/無効は、名前の右側にあるチェックボックスで行えます。

〔フォーマット〕には、〔頂点〕と〔連番画像〕の2種類があります。

  • 頂点 ー 頂点データによって動作して、キャッシュを用いて出力
  • 連番画像 ー 定義された解像度の画像を生成

〔アンチエイリアス〕は、ペイントのフチを滑らかにすることができます。

無効
有効

〔開始/終了フレーム〕は、シミュレーションを行うフレームの開始と終了を設定することができます。

〔サブステップ〕は、値を上げることでシミュレーションのフレーム間をより滑らかにすることができます。

ブラシの移動速度が速い場合に、値を上げると違和感を軽減することが可能ですよ。

サーフェス

〔サーフェスタイプ〕は、キャンバスの表面変化のタイプを変更することができます。

以下の4種類があります。

ウェイト
ディスプレイス
ペイント

詳しい機能や使い方については、後半でまとめていきます。

【サーフェスタイプの詳細まで読み飛ばす方はコチラから!】

共通する基本機能

〔ブラシコレクション〕は、設定したコレクション内のブラシのみ影響を与えるようにできます。

コレクションについて詳しくはコチラの記事でまとめているので、ぜひ読んでみてください!

【Blender2.9】コレクション機能を使いこなそう!
こんにちは! Blenderでの3DCG制作を勉強中のUEDAです。 Blenderを勉強して、アウトプット...

〔スケールの影響〕は、ブラシの影響力の強度を調整します。

〔半径〕は、ソースのタイプが面境界ブラシまたはパーティクルの範囲を調整します。

キャッシュ

シミュレーションのキャッシュは、アニメーションの再生と同時に行われます。

なので特別な操作や設定はいらないかと思われます。

また上手く使いこなせなかったので、分かり次第追記します。

このパネルは、現在、頂点フォーマットサーフェスでのみ表示されます。これを使用して、ポイント キャッシュを調整およびベイク処理できます。

出典:Blender2.93マニュアル 物理学 ダイナミックペイント ブラシ

出力

〔出力〕は、シミュレーションの結果を生成するための機能です。

画像の様にマップの名称部分が赤くなっている場合は、その名称のマップが生成できていないということです。

まずは生成するためには右側のプラスマークを押しましょう。

今回はデフォルト名で生成しましたが、分かりやすいように名前を変更するのがオススメです。

これで生成できました。

〔サーフェスタイプ:ペイント〕の場合は、キャンバスのシェーディングを以下のように繋げればペイントシミュレーションを確認することができます。

赤枠内に先ほど生成したマップ名を入れてください。

  • ペイントマップ ー ただのベタ塗りペイント
  • ウェットマップ ー ペイント部分にフェードアウト効果が追加
  • 頂点グループ ー ウェイトを追加するために必要

〔波〕は、波動をシミュレーションします。

境界を開放

〔境界を開放〕は、エッジでの波の反射を制御します。

オンの方がエッジでの反射が抑えられているので、波の混ざり具合が弱いです。

オン
オフ

時間尺度

〔時間尺度〕は、シミュレーション速度を調整する機能です。

シミュレーション結果に影響を与えることなく速度を変化させることが可能です。

1.00
1.50

速度

〔速度〕は、波の伝達速度を調整する機能です。

0.20
1.50

減衰

〔減衰〕は、波が消える速度を調整する機能です。

0.04
0.60

値を大きくすると〔力〕のようなシミュレーションになりました。使うことは多分ないと思いますが。。

ばね

〔ばね〕は、波の高さを調整する機能です。

1.00
0.01

小さい値だと、穏やかな水面といった感じですね。

スムーズ

〔スムーズ〕は、影響を与えるポイント間の滑らかさを調整する機能です。

シミュレーションで鋭いエッジが気になる場合は利用するとよいようです。

公式でデフォルト値が十分とのことなので、基本は気にしなくてもよいようですが。

デフォルト値は最も鋭いスパイクを取り除くのに十分なはずです。

出典:Blender2.93マニュアル 物理学 ダイナミックペイント ブラシ

0.10
5.00

ウェイト

〔ウェイト〕は、頂点ウェイトグループを生成します。

〔ウェイト〕は〔フォーマット:頂点〕のみで使用できます。

先ほど紹介した〔出力〕からマップを生成したら、〔ウェイトペイントモード〕で確認することができます。

消滅

〔消滅〕は、時間経過で変化を消滅する機能です。

〔時間〕は消滅するまでのおおよそのフレームを設定できます。

この時間が多きい程より早く効果を終了させることができるのが〔低速〕になります。

ディスプレイス

〔ディスプレイス〕は、ブラシの深さを出力します。

機能に関しては先ほどの〔ウェイト〕と同じく、〔消滅〕になります。

ペイント

〔ペイント〕は、塗料で塗る様子をシミュレーションします。

基本機能

ペイントの基本機能は〔消滅〕と〔乾燥〕になります。

2つに共通する点として、〔時間〕と〔低速〕があります。

〔時間〕は2つの効果が終了するまでのフレーム数になります。

この時間が多きい程より早く効果を終了させることができるのが〔低速〕になります。

〔消滅〕は、キャンバス上の変化を時間で消去する機能です。

〔乾燥〕は、キャンバス上の変化を時間で薄くする機能です。

エフェクト

〔エフェクト〕は、3種類の特別な効果を追加することができます。

広がり
液だれ
収縮

この3つに共通して、〔速度〕という項目があります。

これはそれぞれの効果を及ぼす速度を調整するパラメーターになります。

広がり

〔広がり〕は、ペイントした箇所から徐々に染み渡るような効果になります。

〔カラー〕では、複数色が混ざり合う程度を調整することができます。

液だれ

〔液だれ〕は、ペイントが重力やフォースフィールドの影響を受ける効果になります。

フォースフィールドについて詳しくはコチラの記事でまとめているので、ぜひ読んでみてください!

【Blender2.9】フォースフィールドについて解説:風や渦、磁場を実装しよう!
こんにちは! Blenderの使い方や機能、ノウハウについてまとめているUEDAです。 自分のためのアウトプ...

収縮

〔収縮〕は、ペイントした箇所から徐々に消えていくような効果になります。

初期色

〔初期色〕は、初期色を定義できます。

種類は以下の4種類があります。

  • なし
  • カラー
  • UVテクスチャ
  • 頂点カラー

できない?!

ダイナミックペイントが上手くいかない場合の対処法をまとめてみました。

原因別に4つあげたので、ぜひ活用してください!

  • キャンバスの頂点数が十分ではない
  • マップを生成していない
  • ノードを接続していない
  • アニメーションを再生していない
  • 保存後にレンダリング

キャンバスの頂点数が十分ではない

「キャンバスの頂点数が十分ではない」は、〔フォーマット:頂点〕を使っている場合に考えられます。

このタイプでは頂点データによって動作して、キャッシュを用いて出力しています。

なので頂点が多いほど、頂点データが多くなり滑らかな形状変化が可能になります。

キャンバスをしっかりと細分化できているか、確認してみましょう!

頂点数が多いと処理が重たくなるので、増やしすぎも注意です。

マップを生成していない → ノードを接続していない

この2つは関連しているので、一緒に説明していきます。

〔ペイント〕と〔ウェイト〕を使用している場合のみ考えられる原因です。

まず「マップを生成していない」は、〔キャンバス〕の〔出力〕から確認することができます。

上記の様に名称が赤くなっていると、マップが生成されていません。

デフォルトのままではできていないので、右側のプラスボタンを選択して生成しましょう。

このマップはシミュレーション結果を生成する機能があるため、必要不可欠です。

次に「ノードに接続していない」は、レンダリングが上手くいかない場合に考えられる原因です。

先ほどのマップは生成しただけでは、簡易的に確認することしかできません。

生成したマップをノードツリーに組み込む必要があります。

これは最低限のノードになるので味気ないですが、この間にノードを組み込むことでキャンバスのシェーディングを調整することができます。

〔ブラシ〕ではなく、〔キャンバス〕側のシェーディングに設定しましょう!

アニメーションを再生していない

ただブラシを動かすだけでは、ダイナミックペイントは動作しません。

画面下部(Layoutの場合)のタイムラインが動いていることが分かります。

この様にアニメーションを再生して初めて、キャンバスにブラシの動きが反映されます。

ダイナミックペイントは〔物理演算〕の一種なので、時間経過によって変化が起こります。

そのため他の物理演算同様に、アニメーションが必要なわけですね。

因みにキャッシュに関してはアニメーションの再生と同時に行われるので、特別な手順は必要ありません。

保存後にレンダリング!

「レンダリングが思っていた結果と違う!」なんて時は、保存していないのが原因かもしれません。

保存というのは、blenderファイル自体の保存です。

キャッシュがアニメーションと同時に行われるので、レンダリング前にベイクなんて必要がありません。

そのためレンダリングには最新のファイル情報が反映されます。

なので仕上がったら、一旦ファイルを保存して、レンダリングを行いましょう!

まとめ

機能が多いので、長くなってしまいましたね。

ダイナミックペイントを使う際にちょっと忘れたことなどに役立ててください!

とりあえずはチュートリアルをこなして、習得していきましょう。

コメント

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