Blenderで剛体(rigid body)の落下、衝突のシミュレーション
【概要】
剛体シミュレーションは、重力による落下や衝突をコンピュータ上で再現する技術である。Blenderでは、オブジェクトに物理演算プロパティを設定することで、リアルな物理シミュレーションを実現できる。剛体の設定は、物理演算プロパティからリジッドボディを有効にすることで行う。オブジェクトはアクティブとパッシブの2種類の設定が可能であり、アクティブは物理演算の影響を受けて動く物体、パッシブは位置が固定された物体として機能する。シミュレーションの結果は、スペースキーによりリアルタイムで確認でき、一時停止中はオブジェクトの位置や角度を調整できる。最終的な映像は、カメラ視野の調整を行った後、アニメーションのレンダリング機能を使用して高品質な映像として出力できる。
【目次】
【関連する外部ページ】
- 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)のオブジェクトを回転する.
- 剛体シミュレーションとアニメーションを実行するために,スペースキーを押す.
回転前と比較して,アニメーションの結果が変化する.
演習
次の手順でアニメーションをレンダリングする.「アニメーションのレンダリング」とは,一連の複数のフレームを一括でレンダリングすることである.
- スペースキーにより,アニメーションを一時停止する.
- 一時停止した後,下図のボタンをクリックして先頭のフレームにジャンプする.
- アニメーションのレンダリング(複数フレームの一括レンダリング)を実行する.
Ctrl + F12キーを押すか,「レンダー」メニューから「アニメーションレンダリング」を選択することにより実行できる.
- レンダリングが開始されるので,画面を確認し,終了を待つ.
- レンダリングが終了したら,確認のため再生する.
Ctrl + F11キーを押すか,「レンダー」メニューの「アニメーション再生」を選択することにより実行できる.
別ウインドウが開き,再生が開始される.