ゲームにおけるデータ構造・クラス設計・パターンat GAMEDEV
ゲームにおけるデータ構造・クラス設計・パターン - 暇つぶし2ch636:名前は開発中のものです。
07/09/28 00:23:32 l1EYGW9S
>>635
多少制約がつくけど、Cスタックを保存・切り替えできればスタックフル VM でも
コルーチンは実装できます。

ただ、どうやってもポータブルなコードにはならないし、C++ 例外の実装方法に
よっては問題出るから、お勧めしないけど。

637:名前は開発中のものです。
07/09/28 01:10:11 iJmhMBkl
>>636
スタック切り替えてまでやるかw
猛烈に処理系依存なコードになりそうだな

638:名前は開発中のものです。
07/11/17 17:10:37 iMK/PWng
戦闘シーンの進行管理をするクラスって、どういう名前にしたらいいんだろう?
BattleManagerかな…でもManagerは使うなって話もあるし。

639:名前は開発中のものです。
07/11/17 17:27:39 tjJHhoDY
>>638
Manager 使うなって話は、つまり「管理」というあいまいな言葉を使うなって話。
「戦闘シーンの進行管理をするクラス」の役割を見直さずに名前付けだけ考えてても
無意味。

640:名前は開発中のものです。
07/11/17 17:45:31 iMK/PWng
>>639
レスありがとう

そう、今プログラム素人の子と話してたんだけど、
漠然と「場」みたいなもので考えるから名づけに迷うんであって、
相撲の行司みたいなのがいると仮定して、
そいつに戦闘の進行管理をさせればいいんじゃない?
という意見をもらった。

そこでまた、「戦闘の進行」っていう、時間を伴ったものを、
その「行司」の中に持たせちゃっていいのかなと迷うんだけど、
その辺りは割り切っちゃったほうがいいの?

OOPド素人丸出しでごめん

641:名前は開発中のものです。
07/11/17 17:53:06 3LkIon8X
戦闘シーン関連の処理に関して、俺が抱いてるイメージとしての「管理」から考えると
そのManagerが関連する他のクラスに処理を分配して、それを仲介するようなクラスだとMediatorあたりになるんじゃなかろうか
俺が作ってた「Manager」は上記のものがさらにFacadeの役割も果たすってのが多かった
デザパタから借りてるだけで正解とはとても言えんけど、「Manager」よりはマシかな…と

642:名前は開発中のものです。
07/11/17 18:09:05 tjJHhoDY
>>640
> そいつに戦闘の進行管理をさせればいいんじゃない?

それじゃ何も解決しないでしょ。「管理」という役割が同じなままなんだから。

「管理って、実際のところ何するの?」と問い、「あれして、これする」っていう
もっと具体的な単位に分解できれば、「あれするクラス」「これするクラス」に分割する
ことが考えられる。それらを組み合わせたものを「戦闘シーン」というクラスにすることも
考えられる。

どうしても「管理」としか呼べないんなら、それを Manager と名付けること自体には
何の問題も無い。

「戦闘の進行」と「行司」という切り分けができるなら、前者を Advance() なんていう
関数、後者を Rule とかいうクラスにすることが考えられる。 Advance() は Rule に
従って処理をする、って感じね。具体的な状況がわからないんで、全然ダメかも
しれないけど。

643:名前は開発中のものです。
07/11/17 18:34:11 2u92yTvZ
SceneManagerとか定番だな

644:名前は開発中のものです。
07/11/17 18:35:34 JxWacONa
javaの立場が・・・

645:名前は開発中のものです。
07/11/17 20:30:54 /rbqSJ11
class Referee
{
public:
  Referee(const class Rule& current_rule);

  const bool judge(const class Battle& current_battle);
  void bribe(const int price);

  inline void win(void) { URLリンク(youtube.com) }
};


646:名前は開発中のものです。
07/11/17 21:45:56 K5pYaEDh
>>644


647:名前は開発中のものです。
07/11/18 06:00:26 D4743XwF
使うなとは誰もいってないよ

648:名前は開発中のものです。
07/11/18 07:27:13 mDvA2is2
>>642
俺の場合、Manager って名前は使っちゃうな。ただし Manager クラスで
何でもかんでも処理せずに、分割できるところは別のクラスに切り出して
Manager クラスに集約する。

Facade やね。

649:名前は開発中のものです。
07/11/20 01:41:42 Xv2CgjLa
さっきからしょぼいBGMのループがひどいな
2ループもすりゃ十分だろ

650:名前は開発中のものです。
07/11/20 02:00:34 B+/JlwAo
>>649
何に対して言ってるのか

651:名前は開発中のものです。
07/11/20 06:51:02 x6OdnLNb
B・・・・・GM・・?

652:名前は開発中のものです。
07/11/24 17:27:35 5kPj3Eca
シューティング作ってて、敵のクラスと自機のクラスを分けちゃったけど、わけない方がスマートだったかなあ


653:名前は開発中のものです。
07/11/24 17:36:40 BsLqDTe0
>>652
一部同じインターフェースを持つことはあるだろうけど、普通に考えてまったく同じクラスに
なるとは思えない。

654:名前は開発中のものです。
07/11/24 19:10:43 XdMXhxj/
自分は敵1と敵2とかでもわけてる

655:名前は開発中のものです。
07/11/24 21:09:45 vFIasKer
>>654
そりゃ、作るゲームにもよるな。キャラクター数少なくて差異が大きい場合には
クラス分けるが、RPG のように数が多いと基本1クラスでデータ駆動にする。

656:名前は開発中のものです。
07/11/24 22:25:37 Y480fdwm
>>652
何シューティングか知らないが、
よくある2Dのシューティングなら自機と敵機で違う処理したほうが、
当たり判定の最適化しやすそうだな。
(同じ基底クラスから派生させるとかいう話はおいといて、


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch