[表示 : 全て 最新50 1-99 101- 2chのread.cgiへ]
Update time : 05/10 01:27 / Filesize : 92 KB / Number-of Response : 197
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

タスクシステム総合スレ part3



1 名前:名前は開発中のものです。 mailto:sage [2008/11/09(日) 11:51:40 ID:+pjnJyQQ]
タスクシステムについての議論、相談、質問、雑談などのスレです

part2 pc11.2ch.net/test/read.cgi/gamedev/1196711513/
part1 pc11.2ch.net/test/read.cgi/gamedev/1173708588/

147 名前:130 mailto:sage [2008/11/26(水) 23:23:39 ID:QqsnFsqJ]
>「タスクシステム=FSM」を披露したのはルサンチマン君のID:SCRh4oL7ただ一人だ。
これは順番が違う。同じレスを指してると思うんだけど、

(1)「タスクシステム=FSMだ」という発言があった。
(2) そのあとに >>41で「原始的なFSMモデルのジョブ制御」という発言があった

ので、同一人物か同じ立場の人間が批判的な意味で FSMという単語を使ってるのかな?と思ったんだよ。意味合いは違うようだけどFSMという用語を使うレス自体が少なかったからそこは勘弁。

その上で、ゲーム上のオブジェクトの振る舞いをFSMモデルで捉えることはできるだろうけど、それは配列で構成されたゲームについても言えることで、タスクシステム(実装)批判につなげるのはおかしいんじゃないの?と皮肉ったつもりだったのよ。


148 名前:130 mailto:sage [2008/11/26(水) 23:28:25 ID:QqsnFsqJ]
ただまあ、タスクシステム(ジョブコンでもいいや)の適用範囲とか実装上の問題点と
か、そういう流れになってくれると嬉しいんで、「これで終わりにしてほしい」という
のも正直なところ。だからピンダッシュに反応しすぎた俺も悪い。もうだまっとく。


149 名前:名前は開発中のものです。 mailto:sage [2008/11/26(水) 23:53:44 ID:wcFZ5Gxi]
>>139>>137のお話について横から首突っ込んで初学者向けにポエムを書いてみるか

実際の処理速度を語るとき、ランダムアクセスといったら、メモリアドレスを基準にしたランダムアクセスという話も当然絡んでくる
データ構造上の順番(連結リストなら繋がれた順番)を基準にしたらリニアアクセスだよ、といってもメモリアドレスを基準にしたら
ばっちりランダムアクセスになっていました、という状況も当然あり、この場合は処理する要素数と要素サイズと実装対象によっては
べらぼうなペナルティを受けたりする。ので

>>リストは単純に舐めるだけでも遅い
>誤り。「単純に舐める」=シーケンシャルアクセスに有意差はない。

これは状況ごとにプロファイラなりアナライザにかけて検証してみないと分からないというツマラナイ結論に帰結する
ので

>とにかく、初学者は「どっちが勝ち」みたいな議論に振り回されないこと。
>ぶっちゃけ実際に動かしてみて問題がないなら、なんであれそのやり方は正しい。

だよな

(続く)

150 名前:名前は開発中のものです。 mailto:sage [2008/11/26(水) 23:55:50 ID:wcFZ5Gxi]
(続き)
ただし、連結リストを>>2のように使う場合と、ジョブの種類別に配列でデータを固めてる場合(※)を比較すると、前者は不利な状況に追い込まれる
>>2は何でもかんでもごった煮の連結リストでおまけに各要素は好き勝手にジョブを指定してくる。プライオリティ(?)とかいう変数を何に使うのか
知らないがこれでソートされてようが各要素で毎度毎度サブルーチンのアドレス(関数ポインタ)経由でジョブを実行させている
つまりハードウェアにとっては要素ごとに何のジョブを実行するのか予測が難しい。どのジョブが実行されるにせよ、その内容が大して代わり映え
のない超単純な数値積分であれば、分岐予測で速度を稼ぐハードウェアにとっては嫌がらせに近い仕掛けであり、ブチ切れる可能性が高い

○万のパーティクル(数千の通常弾に数千の煙に数千の閃光に数千のフラグメント)を撒き散らす物量ゲーとかなら、そういう要素には
>>2ではなくジョブの種類別に配列でデータを固めて一括処理するほうが速度が出やすくなる。
趣味プログラマであれば、今様のゲーマー仕様PCで実験してみればすぐに確認できる

(※)この手の配列厨コードは、Zソートを回避するあるいはCPUによるZソートを回避する色んな工夫とセットになる。
単純な加算合成だけでなく、アルファブレンドなしアルファテストのみテクスチャに描いてグレア処理して合成とか色々

151 名前:名前は開発中のものです。 mailto:sage [2008/11/27(木) 00:37:08 ID:q61URdTy]
>要素ごとに何のジョブを実行するのか予測が難しい

その辺は面白い、つか考えてなかったな。
以前、ビデオキャプチャしたYUY2をP4-2.4GHzでソフトRGB変換する、ってのをやってて、
30万ピクセルをfloat演算して1フレーム8msec.程度でで処理できてたから、いまさら数万の
オーダーでがたがたいうなよって思ってたけど、言われてみれば配列のシーケンシャル
処理に近いんで、キャッシュの効かなそうな処理なら、どのくらいで処理してるのか確
認すべきだな。


152 名前:名前は開発中のものです。 mailto:sage [2008/11/27(木) 00:57:00 ID:q61URdTy]
>プライオリティ(?)とかいう変数を何に使うのか 知らないが

これはメリットというより必要悪に近いんじゃないかな。ゲーム上のオブジェクトを
動的に生成するタイプのタスクシステムだと、処理順が不定になってしまうので、
プライオリティという形で処理順を明示できるようにしてある、みたいな。
そこまでして処理順を確定しないといけないような場面があるのかどうかは
ちょっとわからん。初心者なもんで。


153 名前:名前は開発中のものです。 mailto:sage [2008/11/27(木) 05:33:57 ID:d1RPtk1Q]
処理順は固定じゃないと駄目なんだよ
壁当たりの判定を保持するような物体の当たりチェックは
普通の物体のチェックより後にやらないと
簡単にすり抜けが発生してしまう

俺、当たりのチェックだけはタスクシステム使ってようが
直書きしたほうが安全な気がする

154 名前:名前は開発中のものです。 mailto:sage [2008/11/27(木) 06:07:57 ID:qLIfWPBB]
プライオリティについては>>2のWhite PaperとLogician Lordでは
リストに連結されたタスクの中身が何なのかを示すために使われてる。
例えばここだな。

web.archive.org/web/20041012012504/www.hh.iij4u.or.jp/~peto/Games/task_03.html
>あらかじめ、優先度とタスクワークの構成を決めておきます。優先度は、例えば次のようになります。
> * 0x1000: ジョイスティックの入力解析
> * 0x2000: 自機の制御
> * 0x3000〜0x3fff: 敵の制御
> * 0x4000〜0x4fff: 背景の制御
> * 0x5000: キャラクタ表示

一つのリストに纏めようとするからプライオリティなんてものが必要になる。
必要悪どころかはっきり悪だと言ってあげるよ。
この仕様だとタスクを増やすたびに追加すべき位置をサーチしなければならない。
またタスクの中身を知るために優先度を確認していかなければならない。

enemyはenemyリストに、backgroundはbackgroundリストに入れりゃいいんだよ。
別に配列でもいいが。

155 名前:名前は開発中のものです。 mailto:sage [2008/12/01(月) 12:21:06 ID:+Gl5Bh4T]
ピンキーネット所属の藤松みこを最初の辞職に追い込んだは
フリーで湯沢と言うビデオカメラマン(元アートハウスゴン社員)から陰部に指を挿入されたことが原因だ!。

当時現役だった彼女にはショックな出来事で事務所とメーカー巻き込んで大騒ぎ。
カメラマンは土下座しただけで金銭は請求されなかったのは何故か疑問だったが…。
(意外と優しい事務所だったりして…。)

普通は事務所から脅され賠償金を請求され業界追放に追いこまれるだろう!

ちなみにセクハラ事件でカメラマンの追放まで追い込んだ領家ゆあの前事務所とは雲泥の差だ。

また普段から公私混同するカメラマンとして有名だし次回彼の標的になる10代のアイドルが気になるところだ。




156 名前:名前は開発中のものです。 [2008/12/01(月) 13:32:33 ID:zCQmgzIM]
ttp://www.page.sannet.ne.jp/hirasho/diary/diary0811.html#30

>タスクシステムについて触れられてない、とか書かれているのを見つけた。
>何それ?おいしいの?直感的でない、変に抽象化されてデバグしにくい、実行順がコードの形で書かれておらずメンテしにくい、
>等々、どう考えてもあれが有効な場面があるとは思えない。使っている人を問いつめたことがあるが、結局利点は出てこなかった。
>一つ考えられるとすれば、独立性をきちんと保って各タスクを書いていればマルチスレッド対応がしやすそう、ということくらいか。
>しかし、どうせ複数タスクから同一のクラスインスタンスを参照してたり、妙なシングルトンやらグローバル変数を見てたり、
>依存関係が不適切なためにスケジューリングが複雑化したりするに違いなく、本当にマルチスレッド実行していい状態にあることを保障するのは容易ではない。
>よほど訓練されたチームでなければそんなことをする気にはまるでならない。


157 名前:名前は開発中のものです。 mailto:sage [2008/12/01(月) 19:17:54 ID:JLnsfkv1]
だからタスクシステムなんて聞くのは2chだけだって
ここの信者だけだよ威勢がいいのw
だって現場で聞いたことないもんw

158 名前:名前は開発中のものです。 mailto:sage [2008/12/01(月) 21:32:13 ID:igKS/Zf4]
大手ならどこでも通じる

159 名前:名前は開発中のものです。 mailto:sage [2008/12/01(月) 22:17:35 ID:JLnsfkv1]
>>158
そしたら下請けに流れてきてもおかしくないじゃん

160 名前:名前は開発中のものです。 mailto:sage [2008/12/01(月) 23:06:38 ID:/JTH9VCP]
俺は自分からは使わんが、他社の2回くらい見たぞ?
もちろん>>2そのままじゃなかったが、ネットでよく聞くから増えてんじゃね

つーかさー、NDSのサンプルよく読んでみろよ・・・
現場で見たことないって騒いでるやつはDS開発やったことないのか?

161 名前:名前は開発中のものです。 mailto:sage [2008/12/02(火) 01:05:14 ID:68pyN8gN]
サターンしかやったこtない

162 名前:名前は開発中のものです。 mailto:sage [2008/12/02(火) 08:48:36 ID:2eboyQhG]
俺は、据え置き型ばっかり


163 名前:名前は開発中のものです。 mailto:sage [2008/12/02(火) 17:21:35 ID:2m2wCEKn]
ttp://www.page.sannet.ne.jp/hirasho/diary/diary0812.html#2
ひらしょ氏、今日の日記でも検討してるな。

いずれにしても銀の弾丸じゃないのは当然として、鉛の弾丸かどうかは微妙なところか。
否定派のつもりはないけどね俺。

164 名前:名前は開発中のものです。 mailto:sage [2008/12/02(火) 19:37:52 ID:RctAWrR8]
>>163
いいなこの人
説明に難しい言葉を使わないようにしてるし
ちゃんと人に伝えようという文章に好感が持てる

165 名前:名前は開発中のものです。 mailto:sage [2008/12/02(火) 20:12:02 ID:VDtsWa1y]
たしかに
タスクシステムとは可搬性と再利用性に優れた素晴らしいシステムなんです
とか繰り返してた人たちの話よりよっぽど分かりやすい



166 名前:名前は開発中のものです。 mailto:sage [2008/12/03(水) 02:05:13 ID:lPaxGufd]
ひらしょ氏の日記見て来ますたw

つか、ヒープのフラグメント避けるためにサイズの違うデータでも固定長メモリ確保するとか
俺が学生時代にごくナチュラルに作ったものだが・・・。メモリプールという言葉の存在すら知らないまま。
まずさ、ゲームで使われている技術なんて、3Dやら除けば全然大したことがなくて
独自性などどこにもなということを認識するべきじゃなかろうか。とりわけ今となっては。

> だからタスクシステムなんて聞くのは2chだけだって

昔のアマゲ周辺でそれなりに聞いたかな。某よっしん氏等も使ってた記憶が。
ただ、言葉は聞くけど実体は人それぞれという類のものだよね。
オブジェクトをリストで繋げて更新ルーチンへのポインタ保持してるだけで
俺がガンダムだって言っても、言葉の定義なんかないんだから自由なわけだしさ。
実際、昔言ってたタスクシステムもその程度の代物でしかなかったと思うんだよ。

そうだな、それでも、C++がまだ使われていなかった頃はそれなりに画期的、というのもちげーな
「ああこうすればいいのか」と人を感心させられる程度のものではあったかもしれない。
ひとつのテクニックとして名前をつけて呼ぶ価値があったと思うよ。10年以上前の話。

でも、今となってはこんな普通にC++で書けば自然にできるようなことをシステムなんてとても呼べないし、
それでもタスクシステムという名前にこだわってる人は、もっと高度な何かを語ってると思うんだが

何それ?っていうか、要らんよねぶっちゃけというか、コード見せれ、というか

俺としては、C・アセンブラ時代に言ってたタスクシステムが、ものすごいタイムラグを経て、
一部のアマチュアに、おかしな形で伝わってしまっただけじゃね?と思っているのだが。
もしそうだとすれば、素人を混乱させる有害情報でしかないので火消しが必要なレベルだと思う。

そうでないなら、とにかくコード見せて。

167 名前:名前は開発中のものです。 mailto:sage [2008/12/03(水) 02:14:33 ID:Smp60beT]
>164は>165を指してるんだよね。
pc11.2ch.net/test/read.cgi/gamedev/1036512390/860-862

168 名前:名前は開発中のものです。 mailto:sage [2008/12/03(水) 03:28:15 ID:uVk3FrZq]
そのスレ読んだ
LGPLを含むEXEがLGPLに感染してるなんてライセンス文読めば一目瞭然のことを
何とか超解釈で否定しようとしてる子が定期的に出没していて
その理屈は違くね?という人達が理詰めで外堀から確実に徐々に埋め立ててる
そんな感じ?

物事をひん曲げて解釈したがる人を諭すには
駄目押し気味でもああいうのも有効かなとはおもた

169 名前:名前は開発中のものです。 mailto:sage [2008/12/03(水) 11:42:42 ID:YzqEx1FO]
>>167
あのスレのレスは三行でまとめて欲しい

>>168
あのスレごちゃごちゃしすぎてて、自分で何書いたかさえ忘れる

ところで、感染しないライセンスなんて無いよ。例えパブリックドメインであっても。
結合したら二次著作物なんだから。

170 名前:名前は開発中のものです。 mailto:sage [2008/12/03(水) 12:08:41 ID:1jatayxx]
>>169
二次利用に縛りをかけないライセンスは存在する。

ていうか、パブリックドメインとは、だれのものでもない存在だから、
二次著作物とかそういう縛りもない、はず。

171 名前:名前は開発中のものです。 mailto:sage [2008/12/03(水) 12:59:17 ID:YzqEx1FO]
>>170
うーん、有名どころで二次利用に縛りをかけないライセンスを見たことないけどな。
少なくとも「本ライセンス文書を同封しろ」と書いてある。

パブリックドメインに関しては著作権者が権利放棄してるから、利用に縛りはないだろうけど。

172 名前:名前は開発中のものです。 mailto:sage [2008/12/03(水) 13:23:37 ID:6uS+aRN8]
>>169-170
おまえらあっちのスレでやれ。
>>168
むしろ逆効果にしか見えないのだが、
前スレで釣り宣言してたからそれで狙い通りなのだろう。

173 名前:名前は開発中のものです。 mailto:sage [2008/12/03(水) 13:25:50 ID:ls+0FiDV]
三次利用以降に縛りをかけない事、という縛りをかけてるものはあるな

174 名前:名前は開発中のものです。 mailto:sage [2008/12/04(木) 00:21:20 ID:J8DrEDup]
数年前のとある同人STGのメイン関数。趣味だから何も考えてないね。仕方ないね
int _tmain(int argc, _TCHAR* argv[]){
  boost::shared_ptr<GAMEENV> gameenv(new GAMEENV);   //D3D,SOUND,INPUT,USERDATA,etc
  boost::scoped_ptr<SCENE> logo(new LOGO(gameenv));    //ロゴ画面
  boost::scoped_ptr<SCENE> demo(new DEMO(gameenv));   //デモ画面
  boost::scoped_ptr<SCENE> title(new TITLE(gameenv));    //タイトル画面
  boost::scoped_ptr<SCENE> config(new CONFIG(gameenv));  //コンフィグ画面
  boost::scoped_ptr<SCENE> stage1(new STAGE1(gameenv)); //ステージ1
  (…中略…)
  boost::scoped_ptr<SCENE> stage8(new STAGE8(gameenv)); //ステージ8
  boost::scoped_ptr<SCENE> ending(new ENDING(gameenv));  //エンディング
  logo->Run();                              //ロゴ画面再生
  try{
    while(1){
      demo->Run();                         //デモ画面再生
      switch(title->Run()){                     //タイトル画面再生
      case TITLEOPTIONTYPE_GAMESTART:         //ゲームスタート
        try{ //STAGEEXCEPTIONTYPE_GAMEOVERという例外を投げるまでゲーム続行
          stage1->Run();stage2->Run();stage3->Run();stage4->Run();
          stage5->Run();stage6->Run();stage7->Run();stage8->Run();
          ending->Run();                     //エンディング画面再生
        }catch(STAGEEXCEPTIONTYPE){;}break;       //GAMEOVER例外投げてきた
      case TITLEOPTIONTYPE_CONFIG:            //オプション画面再生
        config->Run();break;
      }
    }
  }
  catch(GAMEEXCEPTIONTYPE){;}catch(...){return EXIT_FAILURE;}//糞ゲーだからやめるらしい
  return EXIT_SUCCESS;
}

175 名前:名前は開発中のものです。 mailto:sage [2008/12/04(木) 00:28:18 ID:J8DrEDup]
_tmainじゃなくて_tWinMainだったかな。よくおぼえてないや
各シーンはいわゆるベタベタの配列厨コード。元HSパーだから仕方ないね
でもメモリもGPUリソースもジャブジャブ使いまくったおかげで
見た目はバリバリのイケイケになったよ。動作も軽快だったよ。自惚れだね



176 名前:名前は開発中のものです。 mailto:sage [2008/12/04(木) 02:00:33 ID:yi3zavJ4]
>>174
たのむ
なにが言いたいのか最後に書いてくれ

俺が気になるのは、メインループが本当に必要なのかどうかだな
タスクシステムも、それ以外のC++コードでも、なんでメインループ作るん?いらなくね?
普通に書けばいいじゃん(普通ってなによ)

177 名前:名前は開発中のものです。 mailto:sage [2008/12/04(木) 02:16:23 ID:vVwN1TZ0]
stage1->Run()はstage1が終わるまで返ってこないんだろ。
いずれにせよゲームなんて毎フレームの同じ処理の繰り替えしなんだから
どこぞかにループは存在するのが当たり前だと思うが。

178 名前:名前は開発中のものです。 mailto:sage [2008/12/04(木) 02:16:58 ID:iyneYGG1]
>>176が言う普通ってどんなコードなんだろうね

179 名前:名前は開発中のものです。 mailto:sage [2008/12/04(木) 03:27:17 ID:yi3zavJ4]
あーすまん
メインループはどんなプログラムにもあんね

なんかさ、1フレームごとに回るループを作るやり方と
作らないやり方(あちこちでupdateする)について
急に気になって言ってみたんだが
やっぱどっちでもいい気がしてきたからいいや

180 名前:名前は開発中のものです。 mailto:sage [2008/12/04(木) 04:04:02 ID:BYcsjOha]
スレッド作るにしろなんにしろ
どこかでスケジューラが回ってるがな

181 名前:名前は開発中のものです。 mailto:sage [2008/12/04(木) 10:56:55 ID:vVwN1TZ0]
>>179
> 作らないやり方(あちこちでupdateする)について
> 急に気になって言ってみたんだが

それは使ってるフレームワークが裏でループ回してupdate()呼んでるんだろ。
あるいは割り込み駆動の可能性もあるが。


182 名前:名前は開発中のものです。 [2008/12/04(木) 22:22:51 ID:wPvA+LuT]
>>175
>見た目はバリバリのイケイケ
気になるな。

183 名前:名前は開発中のものです。 mailto:sage [2008/12/05(金) 00:50:08 ID:Vt/x/8eI]
>>176
>たのむ
>なにが言いたいのか最後に書いてくれ

地域担当の教団勧誘員に>>174を見せると彼の顔はみるみる青ざめ、ついには目を背けてしまいました。
ただごとでない様子を感じ取った私は恐る恐るその訳を尋ねました。すると彼はおずおずと耳元で囁くのです。
「それはいけない。凶兆が見えます。そのようなものを作っていては遠からず仏罰が下るでしょう。南無妙法蓮華」
>>174は彼らの"先生"の教義に反する、知性体として恥ずべきお猿さんコードなのだそうです。私は狼狽してみました。
幼少の砌よりツクラーにしてHSPerである私の深層に眠る劣等感の残滓の存在をESPで見抜いたのか、彼は目を細め
「安心なさい。今からでも間に合う。私共のように三宝(  *  )に帰依なさい。そうすれば必ず道は開けますよ」
と仏様のような微笑みを湛えながらビール券とこの案内状をくれたのです

184 名前:名前は開発中のものです。 mailto:sage [2008/12/05(金) 00:51:18 ID:Vt/x/8eI]
>>183続き
(∀・ *)【三宝】…■松浦本■やね本■逆引き本
┌──────────────────────────────────────────┐
│ 【集会のご案内】                                                       │
│   タスクシステム(>>2)こそ失われた聖杯、伝説の神器、至高のオーパーツ、現代のエクスカリバー  |
│   私どもの教団では、身も心も何もかも唯一無二のリンクリストに捧げることで驚きのTCBがプライ  |
|  オリティすることをお約束します。奮ってご参加ください                                |
│  タスクシステム総合スレ part3                                              |
│  pc11.2ch.net/test/read.cgi/gamedev/1226199100/l50                           │
|                                                                  |
| 【社説】反動分子の煽動記事に惑わされてはならない                                  |
|  diary.imou.to/~AoiMoe/2008.12/early.html#2008.12.02                         |
|  d.hatena.ne.jp/naoya2k/20081201                                     |
|  qo.sakuratan.com/2008/07/24/タスクシステムのこと。/                        |
|  万物を支配するは唯一無二のリンクリストをおいて他に無く、秩序をもたらすはTCBのプライオリテイのみ。|
|   この崇高なる輪廻転生の法を冒涜し踏み躙る邪教徒共はママの愛情が足りなかったに違いない。 .|
|  敬虔なる信徒諸君は彼らの妄言に惑わされることなく修行に励みたまえ。そして最終解脱者となっ.|
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

ビール券に弱い僕は誘われるままホイホイとこのスレにやって来たんだね

185 名前:名前は開発中のものです。 mailto:sage [2008/12/05(金) 03:20:55 ID:JyB7wu71]
そろそろタスクシステム総合スレじゃなくて
ゲームシステム総合スレに名前変えね?
>>2を使ってる人は皆無なわけだし



186 名前:名前は開発中のものです。 mailto:sage [2008/12/05(金) 04:47:21 ID:U4VbVISL]
いや、ここ隔離スレだから…

187 名前:名前は開発中のものです。 mailto:sage [2008/12/05(金) 05:37:33 ID:lg/+bi94]
>>185
あー、ゲームシステム総合とか間抜けたスレタイいちいち考えなくていいから
既存スレちゃんとあるんで。こっちでは撲殺天使の人もあっちでは普通だから

ゲームにおけるデータ構造・クラス設計・パターン2
pc11.2ch.net/test/read.cgi/gamedev/1211544659/l50

既存スレからタスクシステムを隔離するためにこのスレは作られたんで
このスレが誘蛾灯として機能するにはこのスレタイは好都合この上ないんで
悪いけどお前が思ってる以上にそこそこ需要あるんだわ

>>2を使ってる人は皆無なわけだし

は?お前が憤死しても代わりは幾らでも湧いてくるから心配しなくていいって


188 名前:名前は開発中のものです。 mailto:sage [2008/12/05(金) 09:54:30 ID:bKzmksBZ]
やね本はプレミア付く程のレア物

189 名前:名前は開発中のものです。 mailto:sage [2008/12/06(土) 00:08:37 ID:AlgIGpgY]
>>166
何がいいたいかわからん。動的インスタンスリスト巡回アップデートwの具体的なメリットデメリットを指摘すればいいんじゃないか?
ttp://www.issei.org/
そのひらしょ氏の本を手伝ったらしいPGさんのブログ。タスクシステムらしきソースがある。
問い詰めた知人てこのひとかな?
例えば>>174をタスクシステムで書いたとして、単純に比較すればそりゃ
>直感的でない、変に抽象化されてデバグしにくい、実行順がコードの形で書かれておらずメンテしにくい
コードだと思うんだよ。んで、それでも使いたいメリットあるのか?て話だよな。

俺は本職のゲーム屋さんじゃないんで失礼かもしれないが、わかりにくいところもあるけど、
結構融通が利いて便利かもと思ったよ。
ためしにプロトタイプを作ってて、「ここで一発エフェクトが欲しいな」と思ったところで、new してリストにつなぐだけで動くってのはちょっと感心した。

あと、メインループ周りを作ってしまえば、そこをいじらなくても別のゲームが作れるのは
なれれば安心感があるな。
ただ、万人にお勧めできるかつと、それはちょっと難しいかもとは思う。


190 名前:名前は開発中のものです。 mailto:sage [2008/12/06(土) 00:15:03 ID:+2mVCqZ1]
>>189
>ためしにプロトタイプを作ってて、「ここで一発エフェクトが欲しいな」と思ったところで、new してリストにつなぐだけで動くってのはちょっと感心した。
これホントは動かないのが普通なんだよ
裏でグローバル変数でつながってるからnewするだけで動くように見えるだけ
可能でしょ?そういうの?
本来あるべき手続きを見た目見えなくするもんだから
後で「え?そんなところと関係あるの?」っていう部分がボロボロ出てくる

結果これ以上ないデスマになる

191 名前:名前は開発中のものです。 mailto:sage [2008/12/06(土) 00:28:23 ID:AlgIGpgY]
>>190
レス早すぎるだろw
>後で「え?そんなところと関係あるの?」っていう部分がボロボロ出てくる

そういう不安は、まあ、あるな。自分が把握していられる範囲ならともかく、
「3日前のコードは他人のコード」な人(俺だ)とか。

>裏でグローバル変数でつながってるから
これ、このスレでよく批判の対象になってるけど、俺が見た範囲では
それぞれ listはprivateにしたり一応保護する工夫をしているように見えるけど
「オブジェクト同士が相互参照できるならグローバルと同じで無意味」ってこと?


192 名前:名前は開発中のものです。 mailto:sage [2008/12/06(土) 03:37:13 ID:+2mVCqZ1]
>>191
タスクシステム云々ってよりグローバル変数の駄目な理由そのものじゃん

193 名前:issei mailto:sage [2008/12/06(土) 07:28:54 ID:wah4ZAkA]
>>189
> タスクシステムらしきソースがある。
どこに?

私は、いまどきのハードウェアならタスクシステムは捨てて、役割ごとに std::list<> なり
配列なり作った方が良いと思ってる。

www.issei.org/blog/archives/000225.html

194 名前:名前は開発中のものです。 mailto:sage [2008/12/06(土) 11:22:47 ID:r2noZKmJ]
>>193
名前欄入れてらっしゃるけど、ご本人様で?

そのエントリによると、新人研修でタスクシステムのようなものを教えてる
ところは実在するわけですかね。

195 名前:名前は開発中のものです。 mailto:sage [2008/12/06(土) 12:02:44 ID:+2mVCqZ1]
散々タスクシステムを崇拝してきた人間も
ひらしょーさんの「なにそれ?」で完全に散ったなw



196 名前:名前は開発中のものです。 mailto:sage [2008/12/06(土) 12:40:25 ID:r2noZKmJ]
入門を脱したばかりの奴が入門記事を書く悪循環に、
ちょうどタスクシステムがはまっていた感はあったな。
CodeZineとか。






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<92KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef