ページ 1 / 1
RPGにおけるフィールドやバトルの切り替えの設計
Posted: 2012年5月03日(木) 19:11
by takatwu
現在C++ DXライブラリでRPGを作成しています。
そこで少々つまずいていることがあるので質問させて頂きます。
タイトルやバトル、フィールドやメニュー画面等のシーン毎の切り替えについてですが
現在はシーンの切り替えはswitchを使用して切り替えています。
これが入れ子になってわかりづらくなって来ました。
複雑なプログラムでこのような処理を行う場合はどのような設計が良いのでしょうか?
C++にかぎらず設計についての資料が検索してもなかなか見つからないので質問させて頂きました。
よろしければ回答お願いします。
Re: RPGにおけるフィールドやバトルの切り替えの設計
Posted: 2012年5月03日(木) 19:30
by softya(ソフト屋)
私は関数で階層を分けてswitchで切り替えています。
1つの関数にswitchが沢山あると複雑ですが、それぞれ関数内に分離すればかなり整理できます。
私が前に書いていたRPG講座ですが参考になりますでしょうか。
「マイ 日記 • C言語交流フォーラム ~ mixC++ ~」
http://dixq.net/forum/blog.php?u=114&sd=a&c=2
Re: RPGにおけるフィールドやバトルの切り替えの設計
Posted: 2012年5月04日(金) 01:00
by dig
takatwu さんが書きました:現在C++ DXライブラリでRPGを作成しています。
そこで少々つまずいていることがあるので質問させて頂きます。
タイトルやバトル、フィールドやメニュー画面等のシーン毎の切り替えについてですが
現在はシーンの切り替えはswitchを使用して切り替えています。
これが入れ子になってわかりづらくなって来ました。
複雑なプログラムでこのような処理を行う場合はどのような設計が良いのでしょうか?
C++にかぎらず設計についての資料が検索してもなかなか見つからないので質問させて頂きました。
よろしければ回答お願いします。
私も作ってみてシーン切り替えが一番気になりました。switchだけでやるとかなり複雑化してしまうのです。
シーン切り替えは他にも使えそうですし、どうしても気になったので、私は「ゲームプログラマになる前に覚えておきたい技術」という本を買って読みました。
セガのプログラマの方が書いた本で、シーン切り替えについてサンプルが何個か載せてありました。そして、それは理にかなっており、参考になると私自身は思いました。
サンプルプログラムは確かサポートサイトで公開されているはずです。そちらのプロジェクトをダウンロードされてみてはいかがでしょうか?
(実力次第なのでしょうが本なしだとかなりの読解力が必要になると思います。)
以上ご参考なれば幸いです。
Re: RPGにおけるフィールドやバトルの切り替えの設計
Posted: 2012年5月04日(金) 15:56
by takatwu
ありがとうございます。
一応すでにswitchを関数でまとめていますが
現在キャラクターや背景の描画をそれぞれのシーン毎に処理していますので
そこからキャラクターの描画等を1つのクラスにまとめていこうかと思います。