今週の進捗:7月2週目
ルーターの調子が悪くて記事の更新が遅刻してしまいました...
日付はずれますが、7/14(土曜日)に書いた前提で今週の報告をします。
今週はマップシステムを大幅に変更を加えました。
見かけ上はそこまで変化はないので地味な作業ですが、仕様の自由度が上がってバグが発生率が下がるので割と重要な作業です。
マップの保存形式の変更
先週書いたとおり、同じエリア内の部屋を全部1つのマップにまとめました。
画面は全く変化がないのでスクショは省きますが、初期配置座標が(25540,2112)になってエリアの左上からの座標として全部扱うことになりました。
それに伴って既存で実装していたスクロール、敵の配置、アイテムの配置、ボス戦開始~終了処理を変更しました。
敵の行動制限
今まで敵が画面外にいても、ロードされた瞬間から自由に行動していました。
しかし、それでは広大なマップでは敵の配置が大きく変化するため一度画面に映るまで静止するようにしました。
追尾型の敵を実装する際にも適しており、各個撃破がしやすくなりました。
エリアの色分け
探索するエリアは1つではないのでエリアによって表示される色を変えました。
下記のスクショの通り、一定区間内は同じ色で表示されます。
マップツールの環境移行
←DXライブラリ版 OpenSiv3D版→
今までマップツールはDXライブラリ、ゲームはSiv3Dで作っていました。
しかしDXライブラリはツールを作成するのに適しておらず、マップ設計もしにくい状態でした。
というわけで使用するライブラリをOpenSiv3Dに変更しました。
これはSiv3Dの後継版で機能や書き方も一部異なりますが、GUIやクリック判定などツール作成に適しているので、より使いやすいツールを作ることができます。
今までキーボード操作でしかできなかったエリア編集がマウスでも行うことができるようになりました。
マップ編集画面も現在改良中なので、来週もマップツールの改良をしたいと思います。
最後に
マップの結合方法の変更が終わり、ほぼ準備完成したように見えますね。
ただ、ボリュームを広げるのに重要なエリア間移動で今苦戦しています。
これさえ実装できれば一通りマップを探索することができるので最後の難関だと思って頑張っています。
DXライブラリ→OpenSiv3Dの移行も4時間程度で終わった新しいライブラリにも大分慣れてきました。
こちらは表向きには出さないものなので作りこまなくてもいいですが、マップ編集の作業時間は増える見込みなので後の効率化に繋げることができます。
ゲーム本体の制作と並行して進めていければいいなと思います。