タスクシステム総合スレ part9at GAMEDEVタスクシステム総合スレ part9 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト69:名前は開発中のものです。 10/01/01 04:27:38 4JKBI3JG では、状態が独立している場合にはコルーチンが有効かというと、実はそうでもない。 なんでかっていうと、状態が独立しているのなら、初めからプログラムはそんなに複雑にはならないから、 ベタで書いても大したこと無いから。 同期の粒度が大きければコルーチンは便利かもしれないけど、 一フレーム毎に同期を取るゲームでは無用かな。 70:名前は開発中のものです。 10/01/01 08:12:20 PCKniPZB 古典タスクシステムの メリット: 多数のFSMを逐次実行するための一手段になる 簡単な古典TS(>>2の「最も基本的なTCBの構造」だけで済むTS)ならコードはシンプル MVCのMとCが分離されているため、タスクシステム(C)を実装すれば、 後は動的に実行される関数(M)の実装に専念できる デメリット: 逐次実行するFSMの数が少ないならわざわざ使う必要が無い 各TCBのワーク領域割当に苦労する ワーク領域を動的確保にする場合はガベージコレクトの問題が出る 簡単な古典TSには、TCB間の情報・イベント伝達や、親子関係を持たせる機能などが無い これらを実装しようとすると、気持ち悪いコードになる可能性が高い (TCBの逐次実行がウリなのに実行順序を無視したり、グローバル変数にアクセスしたり) 設計・実装にプログラマの良し悪しが出る TCBから呼ぶ関数内でMVCのMとVを分離せず書くと、今時のプログラミングでは混乱しやすい (特に、直接API(DirectX等)や、APIが比較的剥き出しになっているラッパーライブラリを使う場合) 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch