Blender で剛体(rigit body) の落下、衝突のシミュレーション

要約】 剛体シミュレーション(重力や衝突による物体の動きを物理法則に基づいて計算する技術)は,重力による落下や衝突をコンピュータ上で再現する技術である.Blenderでは,オブジェクトに物理演算プロパティを設定することで,リアルな物理シミュレーションを実現することができる.剛体の設定は,物理演算プロパティからリジッドボディ(変形しない物体として扱うための設定)を有効にすることで行う.オブジェクトはアクティブとパッシブの2種類の設定が可能であり,アクティブは物理演算の影響を受けて動く物体,パッシブは位置が固定された物体として機能する.シミュレーションの結果は,スペースキーによりリアルタイムで確認することができ,一時停止中はオブジェクトの位置や角度を調整することが可能である.最終的な映像は,カメラ視野の調整を行った後,アニメーションのレンダリング(3Dデータから2D画像を生成する処理)機能を使用して高品質な映像として出力することができる.

目次

  1. 前準備
  2. 剛体シミュレーションの例
  3. 剛体シミュレーションの制作

サイト内の関連ページ

関連する外部ページ

前準備

Blender のインストール

Blender のインストール

メニューの日本語化(インターフェースの表示言語を日本語に設定すること)を行っておいた方が使いやすい.Blender 4では「編集」→「設定」→「インターフェース」→「翻訳」で言語設定が可能である.

Blender の基本操作のまとめ

サイト内の関連ページ

剛体シミュレーションの例

剛体シミュレーション(Rigid Body Simulation)は,重力による落下,衝突など,物理法則に従った物体の動きをコンピュータで再現する技術である.剛体とは,外力が加わっても形状が変化しない理想的な物体のことを指す.Blenderでは物理演算エンジンを使用して,リアルな物理現象をアニメーションとして簡単に作成することができる.

演習(1)

次の手順で,Blenderを用いて,剛体シミュレーションを行ってみなさい.

  1. Blender ファイルをダウンロード

    次のリンクをクリックし,ファイルを手元のパソコンに保存する.

    c6.blend

  2. ダウンロードが終わったら,そのファイルを Blender で開く.
  3. 下側の,アニメーションウインドウを大きくしておく
  4. シミュレーション+アニメーション再生を行うために,スペースキーを押す(「Alt+A」も使用可能)

    剛体シミュレーション(物理演算に基づく物体の動き)が始まる.

  5. シミュレーション+アニメーション再生を一時停止するために,もう一度 スペースキー.
  6. 一時停止したら,下図のボタンをクリックして,「先頭のフレームにジャンプ」する
  7. いま,アニメーションは一時停止し,先頭のフレームになっている.

    一時停止しているときは,オブジェクトの移動ができる.

    シーンの中の球のオブジェクトを移動する.移動は次の手順で行うことができる.

    まず,シーン内の球のオブジェクトを左クリックする. 球のオブジェクトが選択された状態になる.

    移動」をクリックする.

    マウス操作により,球のオブジェクトを移動できる.

    球がどこに行ったか分からないとき.マウスの中ボタンを押しながらマウスを動かすと,全体が回転する.いろいろ角度を変えながらチェックする.

    スペースキーを押して,シミュレーション+アニメーション再生して,結果を確認する. 最初の球を高くするほど,衝突したときのオブジェクトの移動が大きくなる

剛体シミュレーションの制作

ここでは,Blenderで,空のシーンから開始して,オブジェクト(3D空間内の物体要素)の配置などを行いながら,剛体シミュレーションの設定を行う.

剛体シミュレーションの作成とプレビュー

次の手順で,立方体と平面を配置し,剛体シミュレーションを行うことができる.

  1. 新しくBlender を起動する
  2. 起動すると,立方体(Cube) の立体がある.そのまま使う.

    * 立方体(Cube) の立体は消さない

  3. 平面(Plane)のオブジェクトを追加
  4. いま追加した平面(Plane)のオブジェクトを拡大しなさい,

    平面のオブジェクトを選び,拡大縮小(スケール)ツール.

    平面を大きくする.

  5. いま追加した平面(Plane)のオブジェクトを移動して, 立方体(Cube) のオブジェクトのにあるようにする.

    平面のオブジェクトを選び,移動モード.

    平面は,立体の下になるように移動する.

    マウスの中ボタンを押しながらマウスを動かすと,全体が回転する.いろいろ角度を変えながら,オブジェクトの配置をチェックする.

  6. 剛体シミュレーションの設定
    1. 立方体(Cube) のオブジェクトを選択

      マウスの左クリック

    2. プロパティの画面で,「物理演算プロパティ」のボタンをクリック
    3. 立方体(Cube) のオブジェクトについて,剛体シミュレーションの設定を行う.

      リジッドボディ (rigid body) 」をクリック

      「リジッドボディ」は「剛体」という意味である.

    4. 今度は,平面(Plane) のオブジェクトを選択

      マウスの左クリック

    5. プロパティの画面で,「物理演算プロパティ」のボタンをクリック
    6. 平面(Plane) のオブジェクトも,剛体シミュレーションの設定を行う. 「リジッドボディ (rigid body) 」をクリック
    7. 平面(Plane) のオブジェクトは,落下させたくないので, 「タイプ」のところで, 「アクティブ」(物理演算の影響を受けて動く設定)を 「パッシブ」(位置が固定されて動かない設定)に変える.
  7. 剛体シミュレーションとアニメーションを行うために,スペースキーを押す
  8. シミュレーション+アニメーション再生を一時停止するには スペースキー

カメラ視野の調整

見やすくするためにカメラ視野の調整を行う.

  1. 最初に,スペースキーにより,アニメーション一時停止する.

    一時停止したら,下図のボタンをクリックして,「先頭のフレームにジャンプ」する

  2. カメラをビューにロック

    サイドバー(3Dビューポートの右側に表示される追加設定パネル)で行う. サイドバーの表示は,3Dビューポートで「n」キー.「ビュー」のタブで「カメラをビュー」(「カメラをロック」)をチェックする.

    * 終わったら,もう1度「n」キーを押して,サイドバーを閉じる.

  3. 3Dビューポートのビューを,カメラ視野(カメラビュー)に変える

    ビューのカメラ視野(カメラビュー),作業視野(作業ビュー)切り替えは,メニューの「ビュー (View)」→「カメラ (Camera)」でできる.ナビゲーションコントロール(画面右上の視点操作ツール)でもできる.テンキーの「0」,または「Numpad 0」キーでも切り替え可能である.

  4. すると,「カメラ視野(カメラビュー)」を動かすと,同時にカメラも動くようになる
    • カメラ視野の自由な移動: SHIFTキーとマウスの中ボタンを押しながらマウス移動
    • カメラ視野の自由な回転(原点を基準): マウスの中ボタンを押しながらマウス移動

演習

  1. スペースキーにより,アニメーション一時停止すること.
  2. 一時停止したら,下図のボタンをクリックして,「先頭のフレームにジャンプ」できる.
  3. 立方体(Cube) のオブジェクトを,上の方に移動する.
  4. 剛体シミュレーションとアニメーションを行うために,スペースキーを押す

    以上のように,オブジェクトの位置を変化させることにより,アニメーションが変化する.

演習

  1. スペースキーにより,アニメーション一時停止すること.
  2. 一時停止したら,下図のボタンをクリックして,「先頭のフレームにジャンプ」できる.
  3. 立方体(Cube) のオブジェクトを,回転する
  4. 剛体シミュレーションとアニメーションを行うために,スペースキーを押す

    回転する前とは,アニメーションが変化する.

演習

次の手順でアニメーションをレンダリングしてみる

「アニメーションのレンダリング」とは,一連の複数のフレームを一括レンダリングすることである.

  1. スペースキーにより,アニメーション一時停止すること.
  2. 一時停止したら,下図のボタンをクリックして,「先頭のフレームにジャンプ」できる.
  3. アニメーションのレンダリング(たくさんのフレームの一括レンダリング)

    CTRL キー + F12キー(同時押し)または「レンダー」メニューから「アニメーションをレンダリング」を選択することもできる

  4. レンダリングが始まるので,確認する.終了を待つ.
  5. レンダリングが終了したら,確認のため再生してみる

    CTRL キー + F11キー(同時押し)(「レンダー」メニューの「レンダー画像/アニメーションを再生」を選択することもできる)

    別ウインドウが開いて,再生が始まる.