boku2Dを開発中。
サイト上でゲーム作ったり、サイトのコンテンツ自体をゲームっぽくしたりするJavaScriptライブラリ。
box2Dには足元にも及ばない、俺得ライブラリ。
以前にも同じようなエンジンを作って、スーパー正男っぽいのをJavaScriptで再現していたのだけども、あまりにもコードが見てられないので新しく作り始めた。
HTMLからデータを取り込む機能を少々強化したり(jQueryを入れてあるとgood)、ベクトルオブジェクトを使ったりしてる。
基本的にこちらが提供するのはエンジンだけで、描画は自前で処理してもらおうと考えているが、DOMを使っている場合はライブラリで提供された関数を使うのもよし。
一から作り直したので仕様も、前よりはすっきりしたはず。
ちょっとリアルっぽさを出すために、物理の知識を入れたりして調子に乗ってる。
Thanks to その1 誰もがやりたいパーティクルの衝突
ただ、複数の物体が同時にぶつかるなどの状況になると、衝突判定がおかしくなってしまう。
(ここでも確認可能)
これは前に作ったエンジンと同じで、どうやら僕の頭じゃ解決できないらしく、物理エンジンの勉強でもしようかと思考中。
傾きをつけることもできそうだと考えたが、box2DJSで試したところ、傾きがあるとゲームとして使う際に問題がありそうだと思われたため、あえて入れていない。
今後
とりあえず衝突判定をもっと正確にできるようにしようと考え中。
本を見ても解決できそうにないので、他の物理エンジンのコードを読むのがいいかなと思っている。
JSで使える物理エンジンといえば、@technohippy様がActionScriptからJavaScriptに変換なされたbox2DJSなので、まずはそれを読むことにする。
もう少しやる気が出れば、最新のbox2Dをライブラリなしで変換しようとするかもしれない。
あくまでこれは俺得ライブラリ。