今回はBlenderで火花(スパーク)の作り方をご紹介していきたいと思います。火花以外にも水しぶきや、線香花火に使えるなと思っています。
※2020/04/07追記
本記事の内容は一部のノードがEeveeではサポートされていません。そのため、本記事の内容を再現する場合はレンダーモードをCyclesにして行ってください。
詳細は参考記事(追記)をご覧ください。
参考記事
作った時のツイートがこちら
動画見ながら作っていたけど、なかなか色々なところで使えそう。
— 智G (@tomohikog12) 2019年2月23日
水しぶきに使えるかなと思っていたけど、どっちかというと線香花火かな? pic.twitter.com/gEMyVZf7b0
火花(スパーク)の作り方
メッシュの用意
この火花を出しているのはパーティクルです。しかし、そのパーティクスを出すためにはメッシュが必要になってきます。
今からその火花を出すためのメッシュを用意していきたいと思います。
まずは上図のように厚さのない円柱を作ります。注意として、このメッシュはとても小さくしておいてください。
なぜなら、このメッシュが大きいとパーティクルの出ているところが丸見えで、火花が散っているように見えなくなるためです。
その後、円の両面を削除し、4分の3くらいメッシュを削除してください。
これは後々パーティクルの飛ぶ範囲、つまり火花の拡散角度になるため後々調整が必要になる項目です。
あとは細分割曲面をモデイファイヤーから追加しておいてください。ビュー:2、レンダー:2くらいで問題ないと思います。
・メッシュはパーティクルが出てくるだけの場所なのでできる限り小さく
・メッシュのある部分から火花がでるので、拡散角度の調整はメッシュで
パーティクルの用意
次にパーティクルを追加していきます。まず始めに先ほど作った円柱型のメッシュにパーティクルシステムを追加します。変更するところは主に、放射と速度となります。
まず始めに放射についての説明をしていきます。
この放射の中で一番重要な項目は寿命です。この寿命が投げれば長いほど、パーティクルがつまり火花が長く光り続けるということになります。
本記事や参考動画では15にしていますが、長いや短いと感じたら、ここを変更することで火花の光る時間を制御することができます。
その下にあるランダムも、これが0のままだと全ての火花が一定の時間で消えるということになり不自然極まりない状態になるので、高く設定しておくことをおすすめします。
次に速度について説明します。
ノーマルはパーティクルの拡散初速度です。なので、ここの値を下げれば火花はそこまで拡散せず、上げればとても長い距離まで拡散するようになります。なので、ここも調整したい箇所になります。
・放射の寿命で火花の光り続ける時間を決定
・放射のランダムで火花の光り続ける時間をランダムに
・速度のノーマルで火花の拡散初速度を決定
Blender 基本的なパーティクルの使い方 - TomoGのごちゃまぜ倉庫
パーティクルに使うメッシュを作成
次にこの火花用のパーティクルに使うメッシュを作成していきたいと思います。これは通常の球体やICO球でいいと思います。
あまりハイポリにすると一気に重たくなるため、できる限りローポリにしておいてください。
本記事ではICO球を使って上図のようになっています。
床を作る:蛇足
ここの章は蛇足です。なくてもいいという方は無視してください。
火花が散る時に床が基本的にあると思います。本章ではその床を作りたいと思います。
ただ平面を伸ばして、上図のようにコリジョンを付けただけのもになります。これで火花が床に散らばるようになると思います。
ちなみに、これで前章で作ったパーティクルに使ったICO球を隠すということもできます。もしこの床を作らない場合はICO球をカメラに映らないところに移動させておいてください。
パーティクルの設定
次に先ほど作ったICO球をパーティクルに設定していきます。
レンダー項目でタブをオブジェクトに設定し、オブジェクトに自分で作ったパーティクル用メッシュを設定してください。
下のサイズとランダムサイズでは基本的に上図の値で問題ないと思います。
サイズとは火花の基本的なサイズを表します。そのため、火花が全体的に大きい・小さい時などはこの値を変更してください。
ランダムサイズとは火花のサイズをランダムにする値です。この値が0のままだと、全ての火花が同じ大きさという不自然なものができるので、必ず変更しておいてください。
・レンダーのサイズはパーティクル自体のサイズを決定
・レンダーのランダムはパーティクルのサイズのランダム差を決定
マテリアル設定
ここからやっと火花だと実感できるような設定をしていきます。ここで微調整をしたいのは分かりますが、少しお待ちください。
最後より微調整しやすい状態にしてから微調整していきたいと思いますので。
マテリアルを設定するのは、本記事ではICO球、パーティクルに使用したメッシュになります。
火花のマテリアルとしては上図は全体図となっています。そこまで複雑ではありませんが、少し説明が必要だと思うので、説明していきます。
まずは左半分です。
パーティクル情報の経過時間と寿命が数式の除算に繋がっています。
これは経過時間 / 寿命ということで時間が経過すればするほど値が変化していくというものになっています。
まずこれをカラーランプに使用し、経過時間によって色を変更しているという仕組みになっています。
次に右半分です。
放射の値は要調整ですが、先ほどのカラーランプの経過時間による色をここで放出しています。
それと同時に時間が経てば経つほど、透過BSDFの強くでていくため、見た目は火花が消えていくように見えるというわけです。
Blender ノードエディタの使い方02【基本的なレンダリング】
微調整
これで火花の作り方自体は終了となります。しかし、最初に作った時などは特に調整が必ず必要になってきます。
そこで調整しやすいよう画面を真っ暗にしていきたいと思います。
どのオブジェクトでもいいのですが、選択すると上図のような位置にカラーがあると思います。ここを真っ黒に設定すると、より火花が目立って見えるようになると思います。この状態で調整をすると、より分かりやすいと思います。
調整する値等は、本記事の見出しの最後にあるPointを見ていくと分かりやすいと思います。
モーションブラーの追加:蛇足
以上で火花の作り方自体は完了となります。
しかし、写真風に仕立てたりする場合はどうも物足りないかと思います。なので、一番最初に貼った画像のようにするために、モーションブラーを追加していきたいと思います。
上図の位置にあるモーションブラーにチェックを入れるとモーションブラーを火花に付けることができます。
そしてモーションブラーを追加した結果が最初にも表示した上図のようなものになります。
カスタマイズ例
上図のようにコンポジットノード配置をしたら、結構綺麗になったので火花をコポジットノードでいじくるのも楽しいかなと思います。
この時モーションブラーは切っておいてください。
いじくった結果は上図となります。
Blender ノードエディタの使い方03【コンポジットノード・最終調整】
できない場合の対処法
パーティクル情報が取れない
参考記事(追記)でご紹介しているように、執筆段階(2020/4/8)のEeveeではパーティクル情報が対応されていないようです。
そのため、本記事の内容を再現する場合はレンダーモードをCyclesにして行ってください。
色が変わらない
色が変わらない場合は、マテリアルビューではなくレンダービューで確認してください。
レンダービューにする方法は、3DView上の右上に上図の赤線部分のアイコンを選択することでレンダービューにすることができます。
分かりやすい参考サイト
同じ動画を参考していたのに加え、要素を追加しているので、これ以上を作りたい方はこちらもおすすめとなります。
参考記事(追記)
今回の記事は以上となります。お疲れ様でした。