Blenderで剛体(rigid body)の落下、衝突のシミュレーション
【概要】
剛体シミュレーションは、重力による落下や衝突を計算し、物体の動きを求める機能である。Blenderでは、オブジェクトの物理演算プロパティでリジッドボディを有効にすることで設定する。タイプにはアクティブとパッシブがあり、アクティブは物理演算により動くオブジェクト、パッシブは動かないオブジェクトである。シミュレーションの結果は、スペースキーによる再生で確認でき、一時停止中はオブジェクトの位置や角度を変更できる。結果は、カメラ視野を調整したうえで、アニメーションのレンダリングにより連続したフレームとして出力できる。
【目次】
【関連する外部ページ】
- Blenderの公式ページ: https://www.blender.org/
【サイト内の関連情報】
前準備
Blenderは,3次元コンピュータグラフィックス・アニメーションソフトウェアである.3次元モデルの編集,レンダリング,光源やカメラ等の設定による3次元コンピュータグラフィックス・アニメーション作成機能がある.
メニューの日本語化を行っておくと使いやすい.「編集(Edit)→プリファレンス(Preferences)→インターフェイス(Interface)→翻訳(Translation)」で設定できる.
剛体シミュレーションの例
剛体シミュレーションは,重力による落下や衝突を物理法則に基づいて計算する機能である.剛体とは,力が加わっても形が変わらない物体のことである.Blenderでは,物理演算の機能を使って,計算結果をアニメーションとして得ることができる.
演習(1)
次の手順で,Blenderを用いて剛体シミュレーションを行う.
- Blenderファイルをダウンロードする.
次のリンクをクリックし,ファイルを手元のパソコンに保存する.
- ダウンロードが終わったら,そのファイルをBlenderで開く.
- 下側のアニメーションウインドウを大きくする.
- シミュレーションとアニメーション再生を行うために,スペースキーを押す(タイムラインの再生ボタンでも実行できる).
剛体シミュレーションが始まる.
- シミュレーションとアニメーション再生を一時停止するために,もう一度スペースキーを押す.
- 一時停止した後,下図のボタンをクリックして先頭のフレームにジャンプする.
- アニメーションが一時停止し,先頭のフレームになっていることを確認する.
一時停止しているときは,オブジェクトを移動できる.
シーン内の球のオブジェクトを移動する.移動は次の手順で行う.
まず,シーン内の球のオブジェクトを左クリックする.球のオブジェクトが選択された状態になる.
「移動」をクリックする.
マウス操作により,球のオブジェクトを移動する.
球の位置が確認できないときは,マウスの中ボタンを押しながらマウスを動かす.視点全体が回転するので,角度を変えながら配置を確認する.
スペースキーを押し,シミュレーションとアニメーション再生を実行して結果を確認する.球の初期位置を高くすると,落下により速度が大きくなるため,衝突後のオブジェクトの動きも大きくなる.
剛体シミュレーションの制作
ここでは,Blenderで新規のシーンから開始し,オブジェクトを配置して剛体シミュレーションの設定を行う.
剛体シミュレーションの作成とプレビュー
次の手順により,立方体と平面を配置し,剛体シミュレーションを行う.
- 新規にBlenderを起動する.
- 起動時に立方体(Cube)のオブジェクトが配置されている.これをそのまま使用する.
立方体(Cube)のオブジェクトは削除しない.
- 平面(Plane)のオブジェクトを追加する.
- 追加した平面(Plane)のオブジェクトを拡大する.
平面のオブジェクトを選択し,拡大縮小ツールを使う.
平面を大きくする.
- 追加した平面(Plane)のオブジェクトを移動して,立方体(Cube)のオブジェクトの下に配置する.
平面のオブジェクトを選択し,移動モードにする.
平面が立方体の下になるように移動する.
マウスの中ボタンを押しながらマウスを動かすと,視点全体が回転する.角度を変えながら,オブジェクトの配置を確認する.
- 剛体シミュレーションの設定
- 立方体(Cube)のオブジェクトを選択する.
マウスの左クリックで選択する.
- プロパティの画面で「物理演算プロパティ」のボタンをクリックする.
- 立方体(Cube)のオブジェクトについて,剛体シミュレーションの設定を行う.
「リジッドボディ」をクリックする.
- 次に,平面(Plane)のオブジェクトを選択する.
マウスの左クリックで選択する.
- プロパティの画面で「物理演算プロパティ」のボタンをクリックする.
- 平面(Plane)のオブジェクトについても,剛体シミュレーションの設定を行う.
「リジッドボディ」をクリックする.
- 平面(Plane)のオブジェクトは落下させないため,「タイプ」で「アクティブ」を「パッシブ」に変更する.
- 立方体(Cube)のオブジェクトを選択する.
- 剛体シミュレーションとアニメーションを実行するために,スペースキーを押す.
- シミュレーションとアニメーション再生を一時停止するために,スペースキーを押す.
カメラ視野の調整
表示を確認しやすくするために,カメラ視野の調整を行う.
- 最初に,スペースキーによりアニメーションを一時停止する.
一時停止した後,下図のボタンをクリックして先頭のフレームにジャンプする.
- カメラをビューにロックする.
サイドバーで設定する.サイドバーの表示は,3DビューポートでNキーを押すことで切り替わる.「ビュー」のタブで「カメラをビューにロック」をチェックする.
設定が終わったら,再度Nキーを押してサイドバーを閉じる.
- 3Dビューポートのビューを,カメラ視野に変更する.
カメラ視野と作業視野の切り替えは,メニューの「ビュー」→「カメラ」で行う.ナビゲーションコントロールや,テンキーの0キーでも切り替えられる.
- これにより,カメラ視野を動かすと,カメラも動くようになる.
カメラ視野の平行移動:Shiftキーとマウスの中ボタンを押しながらマウスを動かす.
カメラ視野の回転(原点を基準):マウスの中ボタンを押しながらマウスを動かす.
演習
- スペースキーにより,アニメーションを一時停止する.
- 一時停止した後,下図のボタンをクリックして先頭のフレームにジャンプする.
- 立方体(Cube)のオブジェクトを上方に移動する.
- 剛体シミュレーションとアニメーションを実行するために,スペースキーを押す.
このように,オブジェクトの位置を変えると,アニメーションの結果が変わる.
演習
- スペースキーにより,アニメーションを一時停止する.
- 一時停止した後,下図のボタンをクリックして先頭のフレームにジャンプする.
- 立方体(Cube)のオブジェクトを回転する.
- 剛体シミュレーションとアニメーションを実行するために,スペースキーを押す.
回転前と比べて,アニメーションの結果が変わる.
演習
次の手順でアニメーションをレンダリングする.「アニメーションのレンダリング」とは,一連の複数のフレームを一括でレンダリングすることである.
- スペースキーにより,アニメーションを一時停止する.
- 一時停止した後,下図のボタンをクリックして先頭のフレームにジャンプする.
- レンダリング結果の保存先とファイル形式を確認する.
プロパティの画面の「出力プロパティ」で設定する.初期設定では,連続した画像ファイルとして保存される.動画ファイルとして保存するときは,「ファイルフォーマット」で「FFmpeg動画」を選ぶ.
- アニメーションのレンダリング(複数フレームの一括レンダリング)を実行する.
Ctrl + F12キーを押すか,「レンダー」メニューから「アニメーションレンダリング」を選ぶ.
- レンダリングが始まるので,画面を確認し,終了を待つ.
- レンダリングが終わったら,確認のため再生する.
Ctrl + F11キーを押すか,「レンダー」メニューの「アニメーション再生」を選ぶ.
別ウインドウが開き,再生が始まる.