Box2D使い始め
もう衝突判定とか、速度調整とか面倒くさくなったので、物理エンジンに頼って見ようかと思っています。
で、とりあえず簡単で速くて、開発が続いているBox2Dを使ってみることにしました。
チュートリアルをちまちまこなしながら、実プロジェクトで利用することを考えています。
IOや画面描画には特定プラットフォームやライブラリに依存しないように書いているのに、ビックリするぐらい物理エンジンに頼る部分についてはベタ書きしちゃっていることに気がつきました。
- オブジェクトの座標・速度・加速度の設定
- 上の時間変遷
- 衝突検出時の動作
ここら辺のコードが随所にころがってしまい、はっきりいって改修がげんなりするぐらい大変。
Box2Dを使いながらここらへんの処理の何を抽象化するのか夢想してみよう。
たぶんインターフェースに何が必要か考えるだけでも、Box2Dを勉強する価値はありそう。