竹林ソフト 2024/01/09 20:00

ねこ巫女籠城ゲーム開発(雑多な不具合の修正)

気になってた問題を修正していきます。

やったこと

斜めが移動先のときの経路が直線にならないのを修正する

このゲームは長方形グリッドで管理していて、グリッド間は8方向で移動できるようになっています。この仕様で例えば北東を目標にすると、その目標まで斜め方向に移動してほしいのですが「東に進み終えてから北に移動する」という動作になっていました。

確認したら、経路探索の実装で 2D 平面だったのを橋とかの立体交差を管理するために 3D にしたときの修正を間違えていました。具体的には Vector2Int の x, y を Vector3Int の x, z にするあたりが間違っていました。

↓ 修正後の動作

修正後の気付きについては、長方形グリッドの1辺が 2m と長めなので移動が「直線、斜め、直線、斜め」になると結構目立ちます。
これについては、移動経路を探索した後に直線移動に置き換えるとかすると改善できると思いますが、また後でどうにかします。

石垣の縁に斜面を作ってセーブしてロードするとおかしくなるのを修正する

↓ 石垣ブロックに接するように斜面を作ると

↓ セーブしてロードすると石垣ブロックが浮く

これはロード時に石垣ブロックを配置するときに地面の上に石垣ブロックを配置して浮いているように思えます。

石垣ブロック情報をセーブするときに高さ方向の位置情報も含めるようにして修正しました。

橋が地面にめりこんでしまうのを修正する

↓ こうなっていました。

調べたところ橋の高さ方向のオフセット計算まわりが間違っていました。

↓ 修正した結果

よいです。

フィールドの端が折れ曲がっているのを修正する

↓ 修正前のフィールド

プレイヤーから見えない箇所なので折れ曲がっていても関係ないのですが修正してしまいます。
確認したところ「長さが N の格子には頂点が N+1 個ある」のに N 個で処理していたのが原因でした。

まとめと今後の予定

いくつかの不具合を修正しました。どれもそこそこ小難しかったです。
次回は この雑多な不具合の修正を続けるか、もしくは橋の上をキャラが移動できない問題を修正しようと思います。がんばります。

月別アーカイブ

限定特典から探す

記事を検索