Blender 5.2 における煙シミュレーションと Cycles 描画
【概要】
Blender 5.2 の標準機能を用いて,煙のクイックシミュレーション(Quick Smoke)を作成し,Fluid モディファイア(流体・気体シミュレーション機能)でベイクした結果を Cycles レンダラーで描画する手順を解説する.Blender 2.82 以降では Mantaflow(物理ベースの流体・煙シミュレーションシステム)が標準のシミュレーションエンジンとして統合されており,追加のアドオンを用いることなく煙の生成から Cycles による描画までを行うことができる.
【目次】
【関連する外部ページ】
- Blender 公式マニュアル「Fluid」: https://docs.blender.org/manual/en/latest/physics/fluid/index.html
- Blender 公式マニュアル「Fluid Domain Settings」: https://docs.blender.org/manual/en/latest/physics/fluid/type/domain/settings.html
- Blender 公式マニュアル「Fluid Flow」: https://docs.blender.org/manual/en/latest/physics/fluid/type/flow.html
- Blender 公式マニュアル「Volume Rendering」: https://docs.blender.org/manual/en/latest/render/materials/components/volume.html
【サイト内の関連情報】
1. 前準備
Blenderは,3次元コンピュータグラフィックス・アニメーションソフトウェアである.3次元モデルの編集,レンダリング,光源やカメラ等の設定による3次元コンピュータグラフィックス・アニメーション作成機能がある.
メニューの日本語化を行っておくと使いやすい.「編集(Edit)→プリファレンス(Preferences)→インターフェイス(Interface)→翻訳(Translation)」で設定できる.
2. Quick Smoke による煙シミュレーションの作成と Cycles 描画
Blender 5.2 では,煙のシミュレーションは Fluid モディファイア(Domain(ドメイン:シミュレーション領域)と Flow(フロー:煙を発生させる物体)から構成される)によって実現される.Quick Smoke(クイック煙)機能を利用すると,選択したオブジェクトを Flow に設定し,それを取り囲む Domain を自動生成することができる.
- 3Dビューポート(3Dモデルを操作・編集する主要な表示領域)で,煙の発生源とする立体を選択する(Blender 2.8 以降ではマウスの左クリックで選択する)

上部メニューの「Object (オブジェクト)」から,「Quick Effects (クイックエフェクト)」→「Quick Smoke (クイック煙)」を選択する

- 「Quick Smoke (クイック煙)」エフェクト(視覚効果)が設定される.選択した立体が Flow オブジェクト(Flow Type: Smoke)に設定され,それを取り囲む立方体状の Domain オブジェクトが自動的に生成される.

- Quick Smoke が正しく設定されたことを確認するために,画面下部のタイムライン(時間軸)エディタにあるアニメーションの再生ボタンをクリックする.煙のエフェクトが表示される.

- 煙の表示を確認したら,メニューバーから「File (ファイル)」→「Save (保存)」と操作する.

- 名前を指定して保存する
* ベイク(シミュレーション結果を事前計算してディスクに保存する処理)を行う前にプロジェクトを保存しておく必要がある.保存していない状態ではキャッシュファイルの出力先が確定せず,ベイクが正しく実行されない場合がある.
- 3Dビューポートで Domain オブジェクト(Quick Smoke により生成された立方体)を選択する.
- 画面右側のプロパティパネルで「Physics(物理演算)」タブを選択する

- 「Fluid(流体)」設定の中で,Type が「Domain」,Domain Type が「Gas(気体)」に設定されていることを確認する(Quick Smoke により自動設定されている).
- 「Cache(キャッシュ:シミュレーション結果の一時保存領域)」セクションを展開し,「Type(キャッシュタイプ)」を既定の「Replay」から「Modular」に変更する.すると「Bake Data(ベイクデータ:シミュレーション結果のディスクへの書き出し)」ボタンが表示されるので,クリックしてシミュレーションを実行する.

Bake Data ボタンは Cache Type が「Modular」に設定されている場合に利用可能になる(既定の「Replay」では表示されない).より高精細な煙が必要な場合は,Bake Data の完了後に「Noise(ノイズ:ベースシミュレーションに詳細を追加する処理)」を有効化し,Bake Noise を実行する.
- シミュレーション処理中は,画面下部にプログレスバー(進行状況表示)が表示される.処理が完了するまで待機する.
- 処理完了後,Cycles で煙を描画するために,プロパティパネルの「Render(レンダー)」タブを選択し,「Render Engine(レンダーエンジン)」を「Cycles」に設定する.
Quick Smoke により Domain オブジェクトには自動的に Principled Volume(プリンシプルボリューム:物理ベースのボリュームシェーダ)を用いたマテリアルが設定されている.このシェーダはベイク結果に含まれる density(密度)属性を参照して煙を描画するため,追加のマテリアル設定は不要である.
- F12 キーを押すか,メニューから「Render(レンダー)」→「Render Image(画像をレンダリング)」を選択して,最終的な煙のエフェクトをレンダリングする.
- レンダリング結果に問題がなければ,再度「File(ファイル)」→「Save(保存)」でプロジェクトを保存する.
補足: Blender 2.82 以降,煙・炎のシミュレーションは Mantaflow ベースの Fluid システムに統一されており,それ以前のバージョンで使用されていた Smoke モディファイアおよび Cycles 用データ変換を目的とした外部アドオンは不要となっている.Cycles は Fluid Domain のベイク結果を直接ボリュームデータとして参照するため,Quick Smoke → Bake → Cycles の一連の操作のみで煙の描画が完結する.