物理エンジン

3Dゲームを作っていると、どうも動きが硬かったり、髪がパリパリで全然リアルじゃないと思ってくる。

髪の毛を揺らすだけだったら、髪の毛にボーン入れて揺らせたモーションを作って反映させるとできるけど、キャラが方向転換したり、敵に吹っ飛ばされたりしたときのことを考えると一つ一つ作るのはあまりにも無駄な時間になる。

こういう時は物理エンジンを使おう、物理エンジンはいくつか種類があって用途に合わせて使い分けよう。

無料でオープンソースなのはBulletという物理エンジンだ!オープンソースというのは、プログラム丸見えってこと。UnityとかはどのようにUnityが作られているのかが見えないようにプログラムをオープンしていない。でもBulletはどのように作ってるのか全部わかる、自分で改装もできます。

実際使ってみると、物体の動きが結構遅く見えたりするかもしれない。重力加速度を現実と同じ9.8毎秒にしてもなんかゆっくり物体が落ちたりするかもしれない。その理由は、その物体がめちゃくちゃおっきいからだと思う。物理エンジンに最適な物体の大きさがちょっと大きいので、東京タワーが倒れても、遠くから見てたらゆっくり倒れているように見えるのと同じで、計算は合っているけど、ゆっくりに見えるのだ。

なので、物理エンジンを使って、散らかった部屋を作るときは、モデラーにちゃんと1の基準はセンチメートルなのかメートルなのかちゃんと伝えておこう。