- 1 名前:名前は開発中のものです。 mailto:sage [2009/02/01(日) 12:38:10 ID:rVEgp4cM]
- タスクシステムについての議論、相談、質問、雑談などのスレです
part3 pc11.2ch.net/test/read.cgi/gamedev/1226199100/ part2 pc11.2ch.net/test/read.cgi/gamedev/1196711513/ part1 pc11.2ch.net/test/read.cgi/gamedev/1173708588/
- 308 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 22:58:14 ID:9yKZ63FM]
- >>305
は?ちょっと聞くけど 使わないで組んだこと1度でもあるの? >>307 頭悪すぎ まず、タスクシステム使わなきゃタスクって単語すらでない のに何が聞きたいの? タスクシステム使う前提で話してどーすんだよ 理屈でモノを考える力をどっかに捨ててきたのか?お前
- 309 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 23:00:15 ID:L1xVTjvz]
- >306
> 設計をどうこねくりまわしたってその数が減ることは物理的にないんだよw キサマの設計のクソさ加減は、>121見れば判るからwwwww
- 310 名前:名前は開発中のものです。 [2009/02/08(日) 23:00:40 ID:/7HQNkAm]
- >>304
いや、タコスシステムとやらを使わなくても書けるだろ タスコシステム使ったらどういう恩恵が得られるのかってーのに興味があるんだよ 普通の人々は 早くなるーだの、コードが短くなるーだの、読みやすくなるーだの、拡張しやすいーだの そういうことを聞いてるわけだ 書けるんだよ書けるんだよって、書ければいいのならHSP使った方が手っ取り早い
- 311 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 23:01:44 ID:PqcaRaMD]
- >>308
>まず、タスクシステム使わなきゃタスクって単語すらでない OSのマルチタスクってタスクシステムの話かな? タスクってのは「処理の単位」以上の意味は無いから ゲームに処理がある限り「タスク」は存在するんだけどね。
- 312 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 23:01:46 ID:DctRL+eT]
- ID:9yKZ63FMの主張は、「mediator」と一言言えば済む話に見えるけど
なんか違うことを言ってるんだろうか
- 313 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 23:02:42 ID:3SPyMiZ9]
- >>307
タスクとかいう言葉を何の定義もなく使うところがキモいです。 たとえば>>304を実現するのに普通の人はタスクなんて使わないので 管理の必要もないわけでさ。 と書こうとしたら>>308に書かれてた。
- 314 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 23:08:29 ID:150rW63B]
- >>306は、
マリオがクリボーに触れたときの処理と、ノコノコに触れたときの処理は別々に書くのか。
- 315 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 23:08:51 ID:PqcaRaMD]
- >>313
ギャラがやゼビウス時代の古典的ナムコタスクシステム(関数ポインタ+ワーク)や マルチコアのジョブ時間管理やりソース共有管理まで行うMTフレームワークレベルのものも 広義のタスクシステムなんだけど。 これらを一切使わずに>>304を実現できる普通の人っているのか? それとも何か特定の1つのタスクシステム実装についてのみ語っているのか?
- 316 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 23:15:44 ID:buJH1feo]
- >>315
オレはアンチじゃないけど 「広義のタスク」が何を指すのか不明では? >>49の「タスクとはすなわちフレームをまたいだ継続的処理の抽象化」を言ってる?
- 317 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 23:16:26 ID:rDw772wv]
- 広義の話するなら広義と書こうぜ。
収拾つかなくなるだろ。 古典的ナムコタスクシステム(関数ポインタ+ワーク) これをウンコを管理するウンコシステムと呼んで区別しよう。 話はそれからだ。 アンチが叩いてるのはこのウンコの部分なんだから。
- 318 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 23:17:51 ID:L1xVTjvz]
- >317
> 古典的ナムコタスクシステム(関数ポインタ+ワーク) 『コンテキスト保存によるフレーム間の継続性』が抜けてるぞ。
- 319 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 23:19:54 ID:VfZ7TaKb]
- >>310
トムヤムクンプロセッサってのは聞いたことしかないから、よく知らん。 結局、並列動作処理フレームワークの実装がブラックボックス依存なんじゃねえの、それって。 ブラックボックス依存で構わないんだったら、ネガキャンするなと言いたい。
- 320 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 23:23:26 ID:+Lu8guC0]
- とりあえず、描画タイミング、ゲームオブジェクトの移動、当たり判定なんかの処理は一定間隔で行いたい。
だから、単純なゲームのとあるシーンは以下のようになる。 while(1) { 描画 ゲームオブジェクトの移動 当たり判定 時間調整 } 次にタイトル画面を表示するシーンが欲しいなと思ったら、もう一つループを追加する while(1) { 描画(タイトル画面表示) キー入力 時間調整 } シーンの数だけループができた。 じゃあ、このループを一般化して、ハードコーディングではなく、外部からのスクリプト読み込みなどで 動的に生成できないかと悩んでみると、タスクシステム(っぽい何か)に行き着いた。
- 321 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 23:23:57 ID:DctRL+eT]
- >>318
ただのFSMではなくコルーチン&スケジューラが実装されていたのなら そう書いてもらったほうが分かりやすい
- 322 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 23:28:08 ID:xD+TYCTG]
- >>298
指標をいくつか決めて実装手法ごとに○×付け。一番○が多いのを使う。 これでいいんじゃね? どういった表現方法使ったってどうせ全部「データの受け渡し」であることには変わりない。 概念的には一つのことを実現しようとしてるだけ。 もし引数の概念が無い言語ならグローバル変数使わざるを得ないし、 グローバル変数の概念が無い言語なら引数使わざるを得ないかもしれない。 この辺の手法の差異なんて言語に左右されるような瑣末なこと。 C++ではたまたまいろいろな手法が利用可能だけども 概念的には「データの受け渡し」だけが目的なんだから、 CPU使用時間とかメモリ使用量とかソース可読性とかそういった瑣末な指標によって選択すればいい。 「C++におけるデータ受け渡しの実装手法はどれが一番概念的に優れてるか」とか悩むのは そもそも問いかけの選択からして間違ってる。どれも概念的には「データの受け渡し」で同一のもの。比較不可。 優劣が付けられるのは前述の瑣末な指標で比較した場合のみ。 C++がやれること多すぎて悩むの疲れたのならいっそもっと選択肢少ない言語に変えてみたら? Cとかに。わりと本気で。 #レスなげえ、俺きめえ。ごめんね
- 323 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 23:36:38 ID:buJH1feo]
- C縛りは問題の本質を考える上でいいと思うが
納得しない人たちもいると思う オレはC++大好きデザパタ大好きだが、自戒をこめてこの言葉を君たちに C++ はひどい言語だ。これは、多くの平均以下のプログラマーが使ってるために さらに輪をかけてゲロゲロになっていて、どうしようもないゴミが簡単に生産されるようになってる。 正直いって、C を選ぶ理由が C++ プログラマーを追っぱらうため *だけ* だったとしても、 それ自体、C を使う強力な理由になりうる。 -- Linus Torvalds
- 324 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 23:36:54 ID:VfZ7TaKb]
- 「ホットスーププロセッサ」・・・チッ、気取った名前付けやがって。
「タスクシステム」を批判できる立場にねーだろ。
- 325 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 23:42:17 ID:L1xVTjvz]
- >324
いやいや、作ったソフトにどんな名前をつけるかは作者の権利だ。 それについてどうこう言うのと、『タスクシステム』という名前についてアレコレ言うのは 違う気がするぞ。
- 326 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 23:44:14 ID:VfZ7TaKb]
- >>325
悪い、ちょい嫉妬しただけだ。 大人げなかったな。
- 327 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 23:46:18 ID:L1xVTjvz]
- いや、落ち着いて逝こうぜ。
- 328 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 23:48:32 ID:iemYL3IE]
- >>322
確かになー。 本当に悩むべきはそんなところじゃねーだろーっていつも頭では思うんだけど、 「もし理想のやり方が見つかれば、二度と悩まなくて済む」って甘い罠に取りつかれちゃうんだな。 つーかなんかタスクシステムに限った話じゃなくなってるな。 ↓こっちの話題だなすまん。 ゲームにおけるデータ構造・クラス設計・パターン2 pc11.2ch.net/test/read.cgi/gamedev/1211544659/
- 329 名前:名前は開発中のものです。 [2009/02/08(日) 23:49:52 ID:/7HQNkAm]
- タスクシステムとやらにこだわる人は
HSP使った方がいいよ、資源の無駄 かっこつけてC++なんて使う意味ないって 俺かっこいい超天才C++使いこなす俺超天才って言って 一ヶ月かけて作ったゲームも HSPなら三日で作れるから 所詮タスクシステムなんてその程度 DSL的アプローチとしてはHSPの方が有益 タスクシステムはうんこ うんこに指差してうんこって言って何が悪い これはうんこじゃないやいって言ったところで それはうんこだ うんこうんこ
- 330 名前:名前は開発中のものです。 mailto:sage [2009/02/08(日) 23:54:43 ID:L1xVTjvz]
- あぁ、ウンコが何か吠えているw
- 331 名前:名前は開発中のものです。 mailto:sage [2009/02/09(月) 00:03:05 ID:jAkDZVno]
- >>328
いっぺん表作っちゃえば二度と悩まなくて済むよ 処理時間短縮重視ならこれ、メモリ使用量極小を狙うならこれ、 とかって簡単に決定できる まぁ、大体PCならメモリとかCPUなんて潤沢に使えるから気にせず コードの可読性だけでさくっと決めていい気がするけど
- 332 名前:名前は開発中のものです。 mailto:sage [2009/02/09(月) 00:28:43 ID:xIvd3PJC]
- >>315
普通にできるだろ 馬鹿かお前大丈夫か? ていうか一度でも組んでみてから言ってくれよ つーか、お前、タスクシステム云々がどうとかそういうところこだわる前に プログラマとしてヤバイだろw
- 333 名前:名前は開発中のものです。 mailto:sage [2009/02/09(月) 00:54:39 ID:rrMBb3Sk]
- 実際HSPでもシューティングゲームぐらい作れるしな。
- 334 名前:名前は開発中のものです。 mailto:sage [2009/02/09(月) 01:34:23 ID:K+aHd4rk]
- HSPで済むならそれを使っておけばいいんだよ。
適材適所。
- 335 名前:名前は開発中のものです。 mailto:sage [2009/02/09(月) 01:44:30 ID:Tt5KtR55]
- >>315
なーにが広義のタスクシステムだ。バッカじゃねーの?このカッペ野郎 毎度毎度テメェの都合でローカル用語の解釈を変えてんじゃねー あと"ジョブ時間管理"とか訳のわかんねー用語を発明すんな お前いつもそんなふうに新しい用語をクリエイトしながら他人とお話しするの?
- 336 名前:名前は開発中のものです。 mailto:sage [2009/02/09(月) 07:48:20 ID:tQgf226p]
- >>320こ
タイトル画面や戦闘シーンは、相互依存がほとんどなく、インスタンス数もたかが知れてる。また処理パターンが仕様変更で変わる可能性がある。 そういう用途には、std::list<> に virtual void exec() だけ実装したクラスのインスタンスを入れておいて、定期的に呼び出してやれば良い。システムと呼ぶ程のモノじゃないがな。 一方、プレイヤーや敵キャラなどは、上の前提条件が成り立たない。相互依存が多く、処理も一度「移動、ヒット判定、死亡判定」と決めたら、まず変更しない。 困難なポイントが違うので、解決策も必然的に変わってくる。
- 337 名前:名前は開発中のものです。 mailto:sage [2009/02/09(月) 12:40:04 ID:Q7FeorJ2]
- >>336
これでFA。
- 338 名前:名前は開発中のものです。 mailto:sage [2009/02/09(月) 13:30:04 ID:DGIHyZBW]
- >>335
>あと"ジョブ時間管理"とか訳のわかんねー用語を発明すんな まだ君の頭では理解できないことかもしれないけど ”MTフレームワーク”でググって勉強してみれば意味が分かるかもね…
|

|