RPGにおけるフィールドやバトルの切り替えの設計

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
takatwu

RPGにおけるフィールドやバトルの切り替えの設計

#1

投稿記事 by takatwu » 13年前

現在C++ DXライブラリでRPGを作成しています。
そこで少々つまずいていることがあるので質問させて頂きます。

タイトルやバトル、フィールドやメニュー画面等のシーン毎の切り替えについてですが
現在はシーンの切り替えはswitchを使用して切り替えています。
これが入れ子になってわかりづらくなって来ました。
複雑なプログラムでこのような処理を行う場合はどのような設計が良いのでしょうか?

C++にかぎらず設計についての資料が検索してもなかなか見つからないので質問させて頂きました。
よろしければ回答お願いします。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: RPGにおけるフィールドやバトルの切り替えの設計

#2

投稿記事 by softya(ソフト屋) » 13年前

私は関数で階層を分けてswitchで切り替えています。
1つの関数にswitchが沢山あると複雑ですが、それぞれ関数内に分離すればかなり整理できます。

私が前に書いていたRPG講座ですが参考になりますでしょうか。
「マイ 日記 • C言語交流フォーラム ~ mixC++ ~」
http://dixq.net/forum/blog.php?u=114&sd=a&c=2
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

dig
記事: 59
登録日時: 13年前

Re: RPGにおけるフィールドやバトルの切り替えの設計

#3

投稿記事 by dig » 13年前

takatwu さんが書きました:現在C++ DXライブラリでRPGを作成しています。
そこで少々つまずいていることがあるので質問させて頂きます。

タイトルやバトル、フィールドやメニュー画面等のシーン毎の切り替えについてですが
現在はシーンの切り替えはswitchを使用して切り替えています。
これが入れ子になってわかりづらくなって来ました。
複雑なプログラムでこのような処理を行う場合はどのような設計が良いのでしょうか?

C++にかぎらず設計についての資料が検索してもなかなか見つからないので質問させて頂きました。
よろしければ回答お願いします。
私も作ってみてシーン切り替えが一番気になりました。switchだけでやるとかなり複雑化してしまうのです。
シーン切り替えは他にも使えそうですし、どうしても気になったので、私は「ゲームプログラマになる前に覚えておきたい技術」という本を買って読みました。
セガのプログラマの方が書いた本で、シーン切り替えについてサンプルが何個か載せてありました。そして、それは理にかなっており、参考になると私自身は思いました。

サンプルプログラムは確かサポートサイトで公開されているはずです。そちらのプロジェクトをダウンロードされてみてはいかがでしょうか?
(実力次第なのでしょうが本なしだとかなりの読解力が必要になると思います。)

以上ご参考なれば幸いです。

takatwu

Re: RPGにおけるフィールドやバトルの切り替えの設計

#4

投稿記事 by takatwu » 13年前

ありがとうございます。

一応すでにswitchを関数でまとめていますが
現在キャラクターや背景の描画をそれぞれのシーン毎に処理していますので
そこからキャラクターの描画等を1つのクラスにまとめていこうかと思います。

閉鎖

“C言語何でも質問掲示板” へ戻る