- 1 名前:名前は開発中のものです。 [2010/10/01(金) 19:54:53 ID:ZGMtyIlk]
- タスクシステムで〜す。
- 144 名前:名前は開発中のものです。 mailto:sage [2011/09/11(日) 01:53:19.19 ID:b4z41GvT]
- タスクシステムを一般的に語るなら、要はCなどの構造化言語がgotoを封じたもんだから、それに代わる状態遷移方法が必要なわけ。
そこでメインループというものを一般化し、キー入力イベント、敵の動き、当たり判定などの処理のセットを入れ替えることで状態遷移を可能とした。 でもgotoと同じく各状態への遷移が自由なためにスパゲッティになりやすい。
- 145 名前:名前は開発中のものです。 mailto:sage [2011/09/11(日) 04:26:51.67 ID:ZZ/mHUa2]
- タスクシステマーのレベルが下がってきてるな。
そもそも、 update(){ task1(); task2(); }と処理を静的に書き並べていくことと、 実行時にタスクのリストを動的に生成して、逐次実行することに、 構造的な差はあまり無い。 ただ、後者は言語の持ってる型や制御構造といった機能を殺す。 アセンブラ時代に考えられたものだから、高級言語との相性は考えられてない。
- 146 名前:名前は開発中のものです。 mailto:sage [2011/09/11(日) 13:02:01.02 ID:YqmjwGNN]
- >>144 ご大層なもん作らんでも、ごく普通のステートマシンの実装法でいいだろ
- 147 名前:名前は開発中のものです。 mailto:sage [2011/09/11(日) 13:28:29.62 ID:b4z41GvT]
- >>146
ごく普通のステートマシンってなんだよ。 ifやswitchをメインに構成された状態遷移ならともかく、 関数やクラスのポインタを扱うstateパターンとか、ごく普通のステートマシンのことを タスクシステムと呼んでタスカーたちは崇め、奉ってるんだと思ったんだけど違うの?
- 148 名前:名前は開発中のものです。 mailto:sage [2011/09/11(日) 13:32:34.15 ID:ZZ/mHUa2]
- 全然違うね。
ステートマシンであることと、ごった煮リストであることは、なんら関係が無い。
|

|