炎、煙、水、魔法
シミュレーションを持ってくれば、ゲームのエフェクトになります。PixorはBlender、EmberGen、Houdiniが書き出す.vdbファイルを、スプライトと同じパレットで、ループするピクセルアートの炎、煙、水に変えます。シミュレーションツールがなくても、Pixorには独自のエフェクトもあります。
上のフレームはすべてPixorによるものです。シミュレーションはBlenderでベイクし、出力されたまま、1フレーム1つの.vdbファイルとしてPixorで開きました。3つとも.vdbファイルとBlenderシーン付きで無料ライブラリにあります。
お使いのツールからのシミュレーション:OpenVDB
PixorはBlender(Mantaflow)、EmberGen、Houdiniが書き出す.vdbファイルを読みます:煙、炎、爆発、液体。密度、炎、熱、そしてちらつきを抑えるのに使う速度を見つけます。液体の表面は硬い縁を持つ中身の詰まったものとして描かれます。
- 1フレーム1ファイル:シーケンスの最初のファイル
fire_0001.vdbを開けば、Pixorが残りを再生します。 - Nフレームに1枚を使う:毎秒48フレームで書き出したシミュレーションが、スプライトの12フレームになります。
- 閉じたループ:最後のフレームを最初のフレームにクロスフェードするので、キャンプファイヤーやたいまつが途切れずに燃え続けます。
- スプライトサイズでも安定:256³のシミュレーションは読み込み時に1ピクセルあたり約1ボクセルまで縮小されるので、32pxの煙の柱もちらつかず、長いシーケンスでもかかるのは読み込み時間だけで、メモリーは使いません。
ほかのすべてと同じように描かれる
ボリュームはモデルと同じ画像の中に入ります。炎は手の前にあり、キャラクターは煙の中に立ちます。明暗の帯、パレット、クリーンアップは、ほかの面と同じようにボリュームを扱います。柔らかな縁はブレンドせず、ボリュームに固定されたパターンでディザリングするので、すべてのピクセルがパレット上に留まり、動いてもパターンが這い回りません。炎の熱い部分は光に関係なく熱い色で燃え、エミッションレイヤーは光る部分だけをエンジンに渡してブルームをかけられます。
手の中の炎、爆発の煙
ボリュームはボーンに運ばせることができ、たいまつの炎はすべてのクリップで手について行き、炎らしく直立したままです。またエフェクトに運ばせることもでき、爆発は自分の煙を、呪文は自分の炎を連れてきます。歩行サイクルの横に炎を置けば、炎のフレームは歩行のフレームと一致します。
シミュレーションツールがなくても:Pixor独自のエフェクト
内蔵のボリュームぽんと噴く、炎、雲、霧はシード付きノイズから作られるので、同じ設定なら必ず同じボクセルになります。さらに13種類のパーティクルエフェクト:爆発、ヒットスパーク、斬撃、魔法の炸裂、回復、ポータル、煙、砂ぼこり、炎のループ、雨、雪、ホタル、落ち葉。どれも3Dパーティクルから、あなたのルックとパレットで描かれます。ボーンに置くことも、クリップのヒットフレームに合わせることも、単体でレンダリングすることもできます。
pxr effect magic-burst --size 64 -o spell.png 水、波、天気
液体シミュレーションは表面として読まれます。池、湖、海岸には、ワールドの水ノードが、ループする波、岸沿いの泡、景色の映り込みを持つ水面を作ります。雨、雪、流れる雲の影、草をなびかせる風も段単位でループするので、最後のフレームは最初のフレームにつながります。ワールドを参照してください。
ライブラリの無料エフェクト
無料ライブラリのelementsは、そのままレンダリングにも学習にも使えるエフェクトです:炎、水、溶岩、稲妻、魔法。それぞれスプライトシート付き。シミュレーションのものには.vdbファイル、Pixorプロジェクト、シミュレーションするBlenderシーンが付いています。CC0。
コマンドラインで
# a simulation, 24 frames, one file in two, the last four faded into the first
pxr render - --volume fire_0001.vdb:1.5::24,2,4 -o fire.png
# a torch's flame in the hand, through every clip
pxr render hero.glb --volume flame:0.25:0,0.05,0@hand.r -o hero.png ボリュームについてのすべてはマニュアルにあります:ボリューム:煙、炎、液体。