やっぱり衝突判定ってすげー大変だね…。
一朝一夕でなんとかなるもんじゃないわ。
物理エンジン使っちまうか本気で考えたんだが、Bulletだと衝突判定だけ切り出して使えるみたい。ODEだとそれは難しそうだ。
ゲームだと物理演算までしてくれる必要はないんで*1、衝突判定だけ取れるのはいいね。ドキュメントが分かりづらいがサンプルを見ればなんとかなる。
しかし、自分で組んだことも無いのにいきなりライブラリ使ってしまうってのもなぁ。ある程度組んで理解できて、でもめんどいからライブラリ使おうねってならともかく。
しかし自分で組むのはすげー大変…。
あ、そうか。3Dだから大変なのか。今作ってるゲームは2Dでいいじゃん…。
それはともかく、フォント描画ができた。 SDLは通さないけど、とは言えFreeType2でビットマップにしてそれをOpenGLに渡せる形にして描画するだけだから速くは無さそうだな。
まあ速くなくともwxRubyのGLCanvasとかでも描画できるのと、あとフォントをファイルからじゃなくてメモリから読めるので書いた意味はあるんだよね。
*1 いや、使ってもいいけど無効にしたい場所もあるし、どっちにしろ今回はいらない
まだなのか…。
早くて今年中になんとか、という感じかね。
前から変わった点としては浮動小数点テクスチャが標準になるのとDXT圧縮が標準になること*1、GLSLで#includeが使えるのとgl_〜の変数がcommonブロックとやらに入ること、らしい。
gl_〜がcommomブロックを通してアクセス、っていうのは構造体に入るってことなのかな? だとするとCgとかHLSLにちょっぴり近くなるのか? だとすると嬉しいが。GLSLの文法おかしかったもんね。
要求がかなり上がってるわりに最新の機能は使えないという大分微妙な物になってるな。
まあべつに最新の機能はいらないんだけど、要求が高いから仕様が出てから実装が出揃うまでかなりかかりそうなのが気掛りだぜ。Intelとか。
*1 えーと、S3TC圧縮って特許の問題があったんじゃなかったっけ?