Blenderのドミノづくりで盛大にはまったので情報共有

Blenderでドミノを作ろうと思ったら盛大にはまってしまったので、Blenderのドミノづくりで困ったことや、気づきなど情報を広めたいと思います。

Blenderでドミノをつくるには

まずはBlenderでどのようにしてドミノをつくるか書いておきたいと思います。

  • Blenderでドミノをつくるには物理演算(Physics)の理解が必要
  • キューブオブジェクトに(剛体)RigidBodyをつけておく
  • 発火するためのオブジェクトはAnimatedにチェックをつけておく必要あり。

Blenderでドミノをつくるには、物理演算を知って入れば簡単につくることができます。ところが他のサイトを見る限り、一部の人はこだわってドミノをつくっているものの、作成過程で苦労したことなど、痒いところの情報がまったくありませんでした。

ドミノはシンプルですが、実際につくってみると苦労します。ドミノのアドオンがあるとの情報もありますが、今回はいちから作っていく際に苦労したことや困ったことなどの情報を共有したいと思います。

Blenderのドミノづくりで困ったことや苦労したこと

Blenderでドミノをつくるときに困ったことや苦労したことを書いておきます。

  • ドミノが揺れてしまい、最終的には勝手に倒れる
  • 実際にドミノを倒してみると動きがおそい
  • ドミノの厚さが薄いと勝手に倒れてしまう。
  • なぜか角度の違いで倒れなくなる(同じ厚さでも角度が違うと勝手に倒れない)

ドミノが揺れて勝手に倒れる

Blenderでドミノオブジェクトをつくるときに、スケールを小さくしてしまうと、オブジェクトの厚みが薄くなるので、ドミノが勝手に倒れる現象がおきてしまいます。Blenderは風などをシミュレートしているのかとおもいきや、そのような設定はありませんでした。

RigidBodyには摩擦なども設定できるのですが、摩擦を強くしても揺れはおさまらず、最終的にドミノが倒れてしまいます。これを防ぐにはオブジェクトに一定の厚みをもたせるしかありません。

ドミノが倒れる速度がおそい

現実世界のドミノは軽快に倒れていくはずなのですが、Blenderで普通にドミノをつくると、倒れる速度がおそくなります。さきほどの見出しで解説した、オブジェクトが勝手に倒れてしまう現象を解決するために厚みをふやすと、今度はオブジェクトの動きがおそくなってしまうのです。

ドミノをはやく倒すにはプロパティパネルのSceneタブにいき時間の進み方を決定するSpeedを増やす必要があります。
screenshot 20190113 1903

ドミノ揺れの検証。倒れるか倒れないかの値をさがすのは困難

次の画像は、デフォルトのcubeオブジェクトのおおきさをy方向にスケールさせたものを並べています。
Blender ドミノ検証
これはy方向にスケールさせたもの(0.15~0.1)を左から順番に並べています。手前と奥のオブジェクトでは角度が違います。

検証結果は動画にしておきます。SceneのSpeedを10にして検証しています。スピードをはやくすると、勝手に倒れる速度もあがります。時間は1000フレームまでで検証しています。

結果としてわかったことは、倒れるか倒れないかのギリギリの値をさがすのではなく、絶対に倒れないような余裕をもったスケールにする必要があります。ドミノオブジェクト転倒のギリギリの値はそもそも検証が安定しません。

Blenderでうまくドミノづくりするコツまとめ

Blenderのドミノづくりはオブジェクトが勝手に倒れてしまうので、倒れないように余裕をもって厚みを大きくする必要があります。オブジェクトを大きくすると、今度は倒れる速度がおそくなるので、SceneのSpeedを増やします。以上がドミノづくりのコツまとめになります。

ここでは解説しませんが、カーブモディファイアを利用して曲線上にドミノを配置することもできるようです。検証に疲れたので、レンダリングされたドミノ倒し動画は作っていませんが、Blenderでドミノづくりをやっている人は結構多いので検索してみるのもよいかと思います。

簡易ドミノ作成動画

Blenderで簡易的にドミノを作成する動画をつくったのでのせておきます。

使用テクニックは以下のようなものです。

  • snap → オブジェクトを接地させることができる
  • Arrayモディファイア
  • Editモード時ショートカットp→ オブジェクトの分離(by loose parts)
  • Objectモード時Shift + Ctrl + Alt + c→ カーソルをそれぞれのオブジェクトに