エンジン部分をいじる
こんにちは🍎
おかげさまで睡眠安定してきてだいぶ元気になってきました。(この調子で体調維持していきたいところ
この調子で順調に進みたいと思っていたところですが、ゲームエンジン側の実装の甘いところ出てきて作業しにくくなってきたのでがっつり手を入れてました。
・3D空間として描画していたのを完全に2D空間に
・当たり判定の回転対応
・テクスチャのピクセル書き換え対応
何かしらの表現の幅の余地として2Dを3D空間で描画してましたが(ビルボードでゲーム作りたいとかなど)、エフェクトなどの重なり合わせにZバッファの精度が問題になってきて描画が破綻することとかたまにあったので、もういっそのこと完全に2D描画にしようかなと思って切り替えることにしました。(とはいっても単位はピクセルじゃないですが…)
一応、もうすでに自前で描画ソートしているので、Zバッファを切って順に描画していくだけで行けましたがパーティクル系のエフェクトをおよそ99999くらいは重ねても問題なくなったので描画に関しての問題はとりあえずパスできたと思います。
次に、当たり判定の回転対応について。
これは最初からゲーム作ってるときに気になってたところで、これがないと当たり判定がおかしく見えるときあって(角と角がぶつかって大げさに当たるみたいな)、技術力不足で今まで難しかったけどベクトルの理解が進んで何とかできるようになりました。(数学大事)
それによってユニティで作ってた物も移植可能になったので、割と先が明るくなってきた感じ出てきました。
現状は当たり判定とるのみで地形などの押し戻しの判定は対応していませんが、こちらも将来的には何とかしたいと思うので継続して取り組んでいきたいです。
最後に、テクスチャのピクセル書き換えですが。
現状特に必須ではないんですが、これがないと画像としてアニメーションする水の表現とか+αの表現ができないのでついでに実装しておきました。
ちなみにこれがあれば会話キャラ絵のコピーを作ってそれに表情差分を書き込むとかもできるので、余計な表示バグも防げてお得なのであるに越したことはないかなと思います。
あとはレイキャストに不備あったのでそちらも回転対応に合わせて修正してました。
エンジン部分も実装しているのでなかなか順調ではないですがゆっくりでも頑張っていきたいです。