「マサオ消し」公開
「マサオ消し」をゲームアツマールさんで公開しました!
マサオ消しと言いつつ、偽マサオ君を消すブラゲです。タイトル詐欺では!?
ちょっと処理の負荷が高いので、PCやスマホの性能によっては重くなるかもしれません。お気を付けください。
画面はこんな感じです。
ざっくりすぎる制作経緯
最初アツマールさんのバカゲー企画に出せるかなーとAkashic Engineでいじっていたのですが、間に合いそうにないのと何かこれじゃない感で頓挫しまして、それはそれで置いといて、他のゲームにできるかなとまたいじっていたわけですね。サンプル眺めるだけでも楽しいAkashicn Engineです。自力部分はどこに。
それでAakashic Engineで物理演算ライブラリのBox2dWebが使えると知り、サンプル流用で物理演算ワールド面白いなーといじってるうちに、マサオ君落としてみるかーとなり、反発させて遊び、そこで床に落ちたら反発力なくなると何か面白そう、となり、そしたら石になるということにしてみよう、となり、うんぬんかんぬんでああなりました。省略が雑だ!
という感じで、今回ベースの部分は私が作ったのですが、ゲームとして公開できるまでの形に整えてくれたのは、毎度kazaさんです。しっちゃかめっちゃかなコードから、余計な処理を省いてくれて、負荷も下げてくれて、めっちゃ綺麗にしてくれて、ゲームバランスも検討してくれて、ランキングとリトライも入れてくれて、アツマールさんで公開してくれました。究極ありがたし。ありがとうkazaさん。私はどこを作ったんだ!?(謎)
スコアとしては、普通の偽マサオ君フルコンが最大値です。ただ石偽マサオ君を効率良くカブで消せても高得点は狙えるので、貯めた石偽マサオ君を一気に消してフゥ↑↑↑なったりして、お楽しみいただければ嬉しいです。
akashic-box2メモ
覚書的なメモです。
- エンティティに物理演算設定したbodyを結びつけることで、bodyの衝突による影響をエンティティに反映させることができる。
- bodyを削除するとエンティティが見た目上残っていてもすり抜ける。
- Akashic Engineのv2ではエンティティにanchorを指定しない場合座標は左上、回転は中央となるが、v3ではすべて左上になるので、anchor指定せずにv3にすると、body影響による回転の軸が左上になってしまう。かといってanchorを中央にすると座標がずれる。v3を使う場合は、anchorにnullを指定して、v2で未指定にした場合の挙動を再現するしかなかった。
- つまりとりあえずanchorはnull。
- これ何か上手くやる方法あるんですかね。
- userDataを指定しない場合、エンティティのidが入る。後からエンティティを指定して動かしたい場合、これを利用するのがいいかもしれない。
- この辺の衝突したbodyのエンティティを指定する方法とか、接触から石連鎖する方法とか、サンプルを魔融合させた感じなので、サンプルありがたし。
公式情報まとめ
- akashic-box2d
- akashic-box2dの利用方法
- Box2D(Box2DWeb)へのパッチの適用
- 無限ループに陥る不具合の修正パッチは、大量に動かす場合当てた方が処理が軽くなる気がする。
- Box2D(Box2DWeb)へのパッチの適用
- akashic-box2dのサンプル
- v3に対応。
- Akashicサンプルカタログ
- このページの下の方の「物理演算」がつよい。ただv3に対応していない気もする。