前回にステージ選択の実装に必要な仕様変更要件について見ていきました。
引き続き、今回はステージの設計について見ていきたいと思います。
コンテンツ
以前の設計について
大雑把にゲームを進行する上での機能と処理をまとめる以下の通り。
かなり機能もりもりですね。
ゲーム進行の処理は複雑になりがちですが、これは少しできること盛り過ぎで保守性が最悪になる未来が見えますね。
これでは機能の追加以前の問題ですのでこの処理の改修について見ていきたいと思います。
設計の見直し
どのみちステージ選択のため、ランダムポップと固定ポップの使い分けができなければいけないので
それも合わせて設計していきたいと思います。
機能がもりもりでしたが、ゲームメインの方は、
- ゲームパートの進行
- シーンの切り替え
- サウンド再生
等、最低限の機能だけまとめ、あとはステージデータとして設計したいと思います。
その設計が以下のようになります。
画像サイズが大幅に長くなり、手続きが複雑化しましたが。
一つ一つの機能が圧倒的にシンプルになりました。
ここで重要な点は新しいルールのステージを追加する場合、ゲームの根幹部分である
「ゲームメイン」を触ることなく「ステージベース」を継承して作ることで必要最低限の労力で実装することができます。
まだ固定ポップアップのステージは構想段階ですが、現在の段階で後のように分割しておくことで、
実装に時間をかけずに、面白さとボリュームの追加に時間を追加していくことができるようになります。
まとめ
大雑把ですが制作しているゲームについての設計について記載しました。
今回は自作ゲームのシューティングゲームですが。
設計の仕方自体は全てのゲーム、というよりプログラミング全般で役に立つことですので覚えていて損はないでしょう。
コメントを残す