enchant.jsの当たり判定不足を補う その1
2014 年 8 月 8 日 by 山平使いやすい和製ゲームエンジンenchan.jsですが、当たり判定がイケてないようです。
オフセットがない
画像に透過PNGを利用した場合等でも、元の矩形でしか判定できません。
過去に書いた記事ではオフセットを実装で考慮することを前提にしています。
特に矩形の角同士の衝突は、当たっていないように見えることが多いです。
回転を考慮してくれない
簡単にSpriteを回転させることができますが、組み込みの当たり判定は常に無回転状態での判定になります。
特に細長い矩形で回転が考慮されていないと、当たっていないのに当たる、当たっているのに当たらないことが増えてしまい、ゲームとして成立しません。
拡大・縮小を考慮してくれない
回転と同じく、Spriteの拡大・縮小も簡単なのですが、組み込みの当たり判定では考慮されません。
回転と同様、オリジナルのサイズから遠ざかるほど、見た目上ありえない衝突が発生してしまいます。
オフセットがないのもつらいのですが、回転や拡大を考慮しないのはもっとつらい気がします。
今回、スプライトを回転させたゲームを作ろうと思い立ったときに気付いたのですが、せめてドキュメントに書いてて欲しいと思います。
このままではゲームにならないので、対策を考えていきたいと思います。
タグ: HTML5, JavaScript, オープンソース