- タスクシステム
145 :名前は開発中のものです。[sage]:2011/09/11(日) 04:26:51.67 ID:ZZ/mHUa2 - タスクシステマーのレベルが下がってきてるな。
そもそも、 update(){ task1(); task2(); }と処理を静的に書き並べていくことと、 実行時にタスクのリストを動的に生成して、逐次実行することに、 構造的な差はあまり無い。 ただ、後者は言語の持ってる型や制御構造といった機能を殺す。 アセンブラ時代に考えられたものだから、高級言語との相性は考えられてない。
|
- タスクシステム
148 :名前は開発中のものです。[sage]:2011/09/11(日) 13:32:34.15 ID:ZZ/mHUa2 - 全然違うね。
ステートマシンであることと、ごった煮リストであることは、なんら関係が無い。
|
- タスクシステム
152 :名前は開発中のものです。[sage]:2011/09/11(日) 20:21:21.31 ID:ZZ/mHUa2 - 副作用を許すような、普通のプログラム、普通のプロセス、普通のゲーム、は、
それ自体がステートマシンそのものだろ。ごった煮リストであるかどうかは関係ない。 ごった煮リストってのは、型関係なく、単一リストに何でもかんでも入れてる状態。 たとえ型や種類ごとに綺麗に整理整頓して分けてリストに入れていたとしても、 ステートマシンはステートマシンだわな。
|
- タスクシステム
153 :名前は開発中のものです。[sage]:2011/09/11(日) 20:33:46.30 ID:ZZ/mHUa2 - >>149
タスクシステムは全てのタスクを単一リストで管理するけど、 それを複数リストに分けろと言っているだけなんだから、 これが可能であることは、プログラマなら誰でも分かるわな。 タスクシステムで書かれてないゲームも多いぞ。 とくに海外製のゲームなんかはベタで書かれていることが多い。 気になるんだったら、探してみたら? というか、何かリストで管理しようとしたとき、 型ごとにコレクトしていくのって、割と普通じゃないか? 型によっては木構造とかで管理したいかもしれないし。 画一的に全てを同じタスクリストで管理ってのはどうかと。
|
- タスクシステム
164 :名前は開発中のものです。[sage]:2011/09/11(日) 23:50:22.61 ID:ZZ/mHUa2 - 俺に言わせりゃ、actorなんか使うのはアホだけど、
それでも、フレームワークが社外製で、 メインループを触ることが出来ないっつーんなら、仕方ない。 ちょうどOSのウィンドウやドライバがそうなっているようにな。 新しいアプリやドライバ書く度にカーネル触って再コンパイルってわけにはいかないからな。 どうしてもコールバック前提の非同期処理になる。 だから、メインループ部に改変不可なフレームワークを導入するのはお勧めできないな。 メインループはゲームに合わせて自分で書いたほうがよい。 描画エンジンやサウンドエンジンや物理エンジンは外部ライブラリに任せてしまえば良いけどね。
|