2ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

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

1 :名前は開発中のものです。:2009/12/13(日) 18:11:06 ID:ESt66YNz
タスクシステムについての議論、相談、質問、雑談などのスレです

part8 http://pc11.2ch.net/test/read.cgi/gamedev/1250678891/
part7 http://pc11.2ch.net/test/read.cgi/gamedev/1241670786/
part6 http://pc11.2ch.net/test/read.cgi/gamedev/1238725539/
part5 http://pc11.2ch.net/test/read.cgi/gamedev/1234977661/
part4 http://pc11.2ch.net/test/read.cgi/gamedev/1233459490/
part3 http://pc11.2ch.net/test/read.cgi/gamedev/1226199100/
part2 http://pc11.2ch.net/test/read.cgi/gamedev/1196711513/
part1 http://pc11.2ch.net/test/read.cgi/gamedev/1173708588/


・タスクと呼ばれる実装は、非常に多岐に渡ります
 古典タスクシステムについての話題は「>>2」と明示してください
 そうでない場合はカスタム版であることを明示してください

・人を憎んで言語を憎まず

2 :名前は開発中のものです。:2009/12/13(日) 18:12:02 ID:ESt66YNz
古典タスクシステム(このスレでは「>>2」と呼ぶ)

White Paper - Programming
http://homepage3.nifty.com/moha/programming.html

タスクシステム
http://www5f.biglobe.ne.jp/~kenmo/program/task/task.html

CodeZine:本格的なシューティングゲームを実現するタスクシステム(タスクシステム,シューティング,ゲーム)
http://codezine.jp/a/article.aspx?aid=297

Logician Lord … 【コンピュータゲームのからくり】
※ウェブアーカイブのキャッシュ
http://web.archive.org/web/20041009222313/www.hh.iij4u.or.jp/~peto/Games/games_top.html

タスクシステムのご先祖の「ジョブコン」は
http://game.2ch.net/gamedev/kako/1006/10061/1006184421.html の 810

3 :名前は開発中のものです。:2009/12/13(日) 18:12:48 ID:ESt66YNz
http://ja.wikipedia.org/wiki/%E8%A3%B8%E3%81%AE%E7%8E%8B%E6%A7%98
あらすじ
新しいシステムが大好きなゲームプログラマの元に、二人組の詐欺師が
プロのゲーム開発者という触れ込みでやって来る。
彼らは何と、馬鹿や自分にふさわしくない仕事をしている者にはメリットが
理解できない不思議なシステムを紹介してくれるという。
プログラマは大喜びで紹介されたとおりに実装する。
他のプログラマにメリットを聞かれた時、自分がこれまで慣れ親しんだ
コードを正当化してくれるはずのメリットが説明できない。プログラマは
うろたえるが、そのシステムを自慢げに見せた後輩プログラマたちの手前、
本当の事は言えず、ありもしないメリットから目をそらさせるため
「馬鹿には理解できない」と言い続けるしかない。後輩は後輩で、自分には
メリットが理解できないもののそうとは言い出せず、空気を読んで目をそらす。
プログラマはメリットもないシステムに増築を重ねて開発終盤に臨む。
火消しプログラマも馬鹿と思われてはいけないと同じようにそのシステムを
使い続けるが、その中のまだ空気を読めていなかった新入りが、こう叫ぶ。
「このシステム邪魔だよ!」

4 :名前は開発中のものです。:2009/12/13(日) 18:14:08 ID:B/jUv0aI
バカ
せっかく落ちて静かだったのに建てるなよ
また老害どもがわいてくるだろ

5 :名前は開発中のものです。:2009/12/13(日) 23:35:21 ID:ESt66YNz
結局TCBって何ですか?

6 :名前は開発中のものです。:2009/12/14(月) 12:03:07 ID:4O6ySVIv
タスク コントロールド バカ

7 :名前は開発中のものです。:2009/12/16(水) 11:04:06 ID:xdGPQ5DT
Typical Confused Baka

8 :名前は開発中のものです。:2009/12/27(日) 11:07:32 ID:5uEpkCFD
タスクシステムなんて"僕の思ってるようには"使えないよ!
って坊やがまだわいてこないな

前スレで懲りたか?

9 :名前は開発中のものです。:2009/12/27(日) 11:11:55 ID:xrzG6Rdu
>>8
タスクシステムのメリットを理解できてる?
自分の言葉で言い表せる?

10 :名前は開発中のものです。:2009/12/27(日) 11:41:36 ID:5uEpkCFD
>>9
詳しく説明されてる例がいくらでもあるのに
「自分の言葉」じゃなきゃダメな理由は何?

>>2 のリンク先読んで理解できないってのなら
「リンク先のここがわからないんで教えてください」
って素直に聞けばいいのに。

11 :名前は開発中のものです。:2009/12/27(日) 11:47:05 ID:xrzG6Rdu
>>10
言い訳乙w

12 :名前は開発中のものです。:2009/12/27(日) 12:12:27 ID:5uEpkCFD
「わからないところがわからない」って勉強のできない小学生みたいだな。
で、「僕のわからないところを見抜いて僕にわかるように説明しろ」と

すまんがエスパーじゃないので無理だwww

坊やがゲーム専門学校の生徒でこっちが講師なら仕事だからやるけど
掲示板でゆとり相手にタダでそんな労力期待されてもねぇ

13 :名前は開発中のものです。:2009/12/27(日) 14:41:21 ID:xrzG6Rdu
> 「わからないところがわからない」って勉強のできない小学生みたいだな。
> で、「僕のわからないところを見抜いて僕にわかるように説明しろ」と

妄想に対してレスとかw

タスクシステムのメリットを理解できてる?
自分の言葉で言い表せる?

こんなカンタンなことから逃げるなよw

14 :名前は開発中のものです。:2009/12/27(日) 16:03:36 ID:5uEpkCFD
すまんがタスクシステム程度の何が理解できないのかわからん。
>>2 見りゃ想像つくだろ、ってのはレベル高すぎなのか?

出来ない子の気持ちがわからなくてすまんなぁ

って、まぁ想像はつくんだけどね。
足し算できない子供が「足し算勉強するメリットおしえろよ!」
って言う理屈はww

15 :名前は開発中のものです。:2009/12/27(日) 16:24:32 ID:xrzG6Rdu
また逃げてるプw
タスクシステム程度のメリット説明が、
そんなに難しいこととは思わなかったよw
>>2読め? 結局お題目を朗読するしかないのか?w

16 :名前は開発中のものです。:2009/12/27(日) 16:30:20 ID:5uEpkCFD
>>15
リンク先にメリット、デメリットが明記されてるけど
どのメリットがわからないんだい?

坊やがどのメリットが理解できないのか教えてくれないと
エスパー以外には答えられないよwww

17 :名前は開発中のものです。:2009/12/27(日) 16:33:54 ID:xrzG6Rdu
>>16
> どのメリットがわからないんだい?

ため息しかでねぇなw

タスクシステムのメリットを理解できてる?
自分の言葉で言い表せる?

お前にこれが問われているだけのことw

18 :名前は開発中のものです。:2009/12/27(日) 16:39:51 ID:5uEpkCFD
こっちは坊やの先生じゃないからさ
オーダーメードのレクチャーしてくれなんて甘えられても困るな。

丁寧に図解つきで馬鹿でもわかるように説明されてるページがあるのに
それすら理解できない見所の無い馬鹿に、掲示板で教え導いてくれる
親切心のある人がいると思ってるのかい?ゆとり君www

19 :名前は開発中のものです。:2009/12/27(日) 16:40:42 ID:xrzG6Rdu
おやおやw 結局逃げですかw

20 :名前は開発中のものです。:2009/12/27(日) 16:47:57 ID:5uEpkCFD
>>19
そのとおり
こっちは坊やのお母さんじゃないからさ、見捨てさせてもらうよ。

どうせ教えるならもっと見込みのある人に教えたい。
教えた時間が無駄になるのがわかってる適正の無い人間に教えるほど、
博愛精神にあふれてないんでね

21 :名前は開発中のものです。:2009/12/27(日) 16:48:47 ID:xrzG6Rdu
タスクシステム程度のメリット説明が、
そんなに難しいこととは思わなかったよw
ダメだなあ君はw

22 :名前は開発中のものです。:2009/12/27(日) 17:20:18 ID:faLErj4S
冬休みになったのか?

23 :名前は開発中のものです。:2009/12/28(月) 00:44:13 ID:S8wBRYBl
メリット説明しろってのは2chでありふれたレトリック
ニートスレの「就職のメリット教えろ」とか
毒男スレの「結婚のメリット教えろ」とかと同じでいくらでも見つかる。

まともに議論したら「お前が無能なだけ」「お前に魅力がないだけ」って結論になって
プライド保てない負け犬が「何がメリットかわかりましぇーんww」
って逃げ回って相手に労力をかけさせて諦めるのを待つ見え見えの方法。

そんな展開のわかりきった手垢のついたレトリックに今時ひっかかる馬鹿はいないわな。

24 :名前は開発中のものです。:2009/12/28(月) 17:08:54 ID:ZC35v31X
思う壷すぎてワロタ
老害とわ(ば)ものの罵り合いワロス

もっとやれ

25 :名前は開発中のものです。:2009/12/28(月) 19:09:47 ID:QbcMAmuh
>>3
> 「馬鹿には理解できない」と言い続けるしかない。

26 :名前は開発中のものです。:2009/12/29(火) 21:53:01 ID:9sgcEHcx
>>23
メリット説明しろってのは頭の弱いアンチ君たち唯一の武器だろうに。
かわいそうなアンチ君から唯一の武器を奪うなんてなんて大人気ない。

あとは単発IDで罵倒するぐらいしかアンチ君には手段が残されてないじゃなの。
弱いものイジメして楽しいか?もっと博愛しろw


27 :名前は開発中のものです。:2009/12/30(水) 04:08:55 ID:PB4TpBDR
メリット;動的に処理順を制御することができる。
ディメリット:大部分の処理は動的に処理順を制御する必要が無いので無駄。

普通の人は、動的に処理順を制御する必要のある部分は個別にモジュール化する。
たとえば、Zソートは描画エンジンがやるだろうし、
当たり判定の優先順位なんかも、それ用のライブラリが面倒見る。
統合してタスクシステムとかやらない。

タスクシステムって、タスクを順番に実行していくものだろ。
でもそれって、命令を順に実行していくノイマン型コンピュータそのものだろ。
仕組みが重複してるw

28 :名前は開発中のものです。:2009/12/30(水) 09:00:30 ID:6NDehnGL
そもそもメリットを聞くのはスタート地点じゃないんだよなー。
メリットってのは、代替手段やそれを使わなかった場合と比較することで、はじめて認識されることだし。

つまり、メリットは?と聞く前に、以下のいずれかを行っておく必要があるだろう。
・自分で実装した方法がある。実装構造の目的(実現したかったこと)と欠点も認識しておく。
・何もわからず右往左往してタスクシステムって何さ、と聞いているならばタスクシステムの目的(達成したいこと)をまず理解する。または聞く。



29 :名前は開発中のものです。:2009/12/30(水) 10:47:28 ID:ZDblZaQl
で、目的は?

30 :名前は開発中のものです。:2009/12/30(水) 10:59:46 ID:zqn6dcS+
>>2 のリンク先のメリット・デメリットについて

A:理解できない。
>どのメリットが理解できないのか明記すべき。

B:リンク先のメリット説明は間違っている。
>間違っている箇所を説明すべき。

C:全て理解した。その上で他にもメリット無いか聞いている。
>その旨明記すべき。

が建設的な対応だな。

31 :名前は開発中のものです。:2009/12/30(水) 11:31:05 ID:wSMcXtGv
>>27
ちゃんとリンク先読んだのか?
メリットはその一点だけじゃないぞ。
それに「普通の人は」って一つの脳内仮定で思考停止しちゃう人は
手段の優先は目的によって異なるってことを理解した方がいいぞ。

>>29
目的が理解できないレベルね。
リンク先の一例では「シューティングゲームを作る」かね。
君の目的は知らんけど。

32 :名前は開発中のものです。:2009/12/30(水) 11:34:53 ID:R763aHzC
また裸の王様か。
タスクシステムなしにシューティングをつくれるのになぜ導入するのかも言及しない。

33 :名前は開発中のものです。:2009/12/30(水) 11:36:11 ID:HbFRn4m1
レトリックに誰も突っ込まない優しさワロスw

34 :名前は開発中のものです。:2009/12/30(水) 11:38:32 ID:wSMcXtGv
>>32
>タスクシステムなしにシューティングをつくれるのになぜ導入するのかも言及しない。
メリット・デメリットがわざわざ明記してある意味すら理解できないレベルか・・・

35 :名前は開発中のものです。:2009/12/30(水) 11:39:32 ID:HbFRn4m1
修辞技法(しゅうじぎほう、または文彩(ぶんさい)、あや、英語・フランス語:Figure)とは、
スピーチおよび文章に豊かな表現を与えるための技法。
# 2 比喩
# 3 擬態法
# 4 擬人法
# 5 倒置法
# 6 反復法
# 7 同語反復
# 8 首尾同語(反照法)
# 9 体言止め
# 10 反語
# 11 呼びかけ
# 12 パラレリズム
# 13 押韻
# 14 語句の挿入
# 15 省略法
# 16 緩叙法
# 17 漸層法
# 18 対照法
# 19 敷衍(ふえん)
# 20 パロディ
# 21 畳語法・畳句法・畳音法
# 22 疑惑法
# 23 誇張法
# 24 列挙法・列叙法
# 25 折句
# 26 史的現在
# 27 撞着語法
# 28 頓降法/漸降法
# 29 黙説
# 30 冗語法
# 31 転用語法

36 :名前は開発中のものです。:2009/12/30(水) 11:39:58 ID:FaC2g+I+
で、何なの?

37 :名前は開発中のものです。:2009/12/30(水) 11:45:37 ID:wSMcXtGv
レトリック
(1)修辞学。美辞学。
(2)文章表現の技法・技巧。修辞。
「―にすぐれた文章」
(3)実質を伴わない表現上だけの言葉。表現の巧みな言葉。
「巧みな―にごまかされる」

(3)の詭弁の意味で問題なさげ。

自爆に突っ込まない優しさが無くてなww

38 :名前は開発中のものです。:2009/12/30(水) 11:56:09 ID:HbFRn4m1
>>37
ありがとう。マジでその意味は知らなかった。
レトリック 詭弁でぐぐるとザクザク出てくるし、
「それはレトリック=詭弁と呼ばれ、禁じ手とされてきた。」などと一発目に目に付く。

39 :名前は開発中のものです。:2009/12/30(水) 12:01:47 ID:LqQKx7uV
タスクシステムとやらで不要なシステムを強要してバグを大量生産するプロジェクトが
よく見られますがどう思いますか

40 :名前は開発中のものです。:2009/12/30(水) 12:06:48 ID:HbFRn4m1
>>39
ホントはね、「触らぬ神に祟り無し」これだけで十分。
相手をして遊ぶのは仕事から離れた、2ちゃんとかだけにしときたいよね。
私怨をもたれたらめんどいから。

41 :名前は開発中のものです。:2009/12/30(水) 12:21:26 ID:wSMcXtGv
>>39
プロジェクトのメインプログラマーが、タスクシステムのデメリットを超える
メリットがある、と判断したて採用したんだろうなぁ、と。

不要に見えるならもっと良い方法を提示してあげたらいいんじゃない?できるんなら。

一本メインで任せられるほど会社から実績と信頼もらってる優秀なプログラマなんだから
もっと良い方法提示されたら喜んで受け入れてくれるよ・・・

42 :名前は開発中のものです。:2009/12/30(水) 12:25:22 ID:bWAUJXLm
おれがメインやるときは使わないが
火の車のプロジェクトにヘルプで入るとってパターンばかり
おれは使うなとはいうけど責任ないプロジェクトにまで影響力ないな

43 :名前は開発中のものです。:2009/12/30(水) 13:24:09 ID:wSMcXtGv
個人的な経験の範囲ではプロジェクトに火がつくかどうかとタスクシステムの有無に因果関係はほとんど無かったけどな。
火がつく理由は非常識な納期とか仕様の甘さとか進捗管理のまずさとか、もっと外側の原因がほとんど。

まぁタスクシステムは良くも悪くも「Cの精神」と「ゲームプログラマ固有のケチさ」が色濃くでてる
システムではあるんだけど。

新人がタスクシステム使って「何でこんな簡単な処理を、ここまで複雑で危険な処理にできるんだろう」
というのも見たことあるし。

スーファミ時代から現役の40歳超え超ロートルプログラマがDS用にタスクシステムで作ったゲーム
コードでは、美しい数学の証明でも見てるみたいに理解しやすくシンプルで、高速高効率なコードに
仕上がってるのみ見たこともある。

結局、誰がどんなプラットフォームでどんな仕様のゲームを作るのか、という目的にてらしてメリットデメリット
比較して使えるところではうまく使えばいいんじゃね?という当たり前の結論。


44 :名前は開発中のものです。:2009/12/30(水) 19:13:10 ID:EC518Flk
ヒットに責任もつやつが主導権持つのは当たり前。
そういう点ではここのプログラマーが下に見られるのは当たり前。
決してプログラマーはヒットに貢献出来ないといってるわけではない。

45 :名前は開発中のものです。:2009/12/30(水) 21:37:14 ID:PB4TpBDR
というか、普通にかけばいいじゃん。

tasks.push_back( task1 );
tasks.push_back( task2 );
tasks.push_back( task3 );
for(;;){ for( size_t i=0; i<tasks.size(); ++i){ tasks[i](); } }

よりも、

for(;;){
task1();
task2();
task3();
}

の方が自然だろ。
プログラム自体が処理のリストなのに、何故わざわざ処理のリストを自前で用意するんだ?
バーチャルマシンでも作る気か?

46 :名前は開発中のものです。:2009/12/30(水) 21:44:27 ID:PB4TpBDR
タスクシステムを(アカデミックな方向に)発展させていくと、

gotoタスク: 引数で指定した番号のタスクにジャンプする。
ifタスク: タスクの評価が非0の時、引数で指定した番号のタスクにジャンプする。

とかになるぞ。変だろ。

47 :名前は開発中のものです。:2009/12/30(水) 21:55:31 ID:PB4TpBDR
C言語には、プログラムを上から順番に実行していくというタスクシステム的な仕組み以外にも、
if文があったり関数に引数が指定できたり、型があったりと、
目いっぱい便利な仕組みが用意されているのに、
なんでわざわざバーチャルマシンもどきのタスクシステムを自分で実装しようとするんだ?
そんなことするから、C言語に元から用意されていた、
構造化制御とか型とか関数の引数などの便利な機能が使えなくなるんだろ。

48 :名前は開発中のものです。:2009/12/30(水) 22:22:56 ID:wSMcXtGv
技術的に低すぎる馬鹿みたいな例をあえて出して
釣ろうって手段かね。
釣りだとしてもいまいち・・・

49 :名前は開発中のものです。:2009/12/30(水) 23:03:38 ID:PB4TpBDR
タスクシステム自体がバカみたいな例そのものだとおもうが。
既存のものを使わずに自作して周囲からの恩恵を受けられなくなるという。
そういう趣味性を否定するわけではないが。


50 :名前は開発中のものです。:2009/12/30(水) 23:17:16 ID:PB4TpBDR
タスクシステムって、基本は動的関数呼び出しがキモで、それって、
OSに対するアプリとか、
ブラウザに対するプラグインとか、
ウィンドウマネージャに対するウィンドウとか、
そういった、後から拡張を要する場合に利用される手法なんだよ。
単一アプリのゲームの開発に持ち出すのはナンセンス。
増築の手法で一戸建てを立てるようなものだね。
ディアゴスティーニじゃないんだから。

51 :名前は開発中のものです。:2009/12/30(水) 23:46:59 ID:wSMcXtGv
>>47
ネタにマジレスだが
関数ポインタもC言語に元から用意された便利な機能だろ?
タスクシステムの実装っていかにもC言語的(というかthe spirit of C)なんだが。良くも悪くも。
古典的タスクシステムなんて古きよきUNIX時代のC言語のコードを見てる気分になる。
これこそCのプログラムって感じ。
「プログラマを信頼する」というCの精神と同じ思想で
信頼されたプログラマ、つまりタスク仕様上の「落とし穴」を正しく理解したプログラマであれば
その穴に陥らずにプログラムを書けるはずである、といういかにもな精神。

ネタじゃないなら、HSPとか使う方が君には合ってる気がする。

52 :名前は開発中のものです。:2009/12/31(木) 00:48:41 ID:ksb+2wzg
>>51
関数ポインタ⊂タスクシステム

53 :名前は開発中のものです。:2009/12/31(木) 10:05:26 ID:jmX7vBje
>>47>>51と返す奴の理解力が心配だなw

54 :名前は開発中のものです。:2009/12/31(木) 13:56:13 ID:V8ENfRFL
ネタにマジレスしてくれる優しい人なんでしょww
引数君のレベルが低すぎて話が噛み合ってないが

55 :名前は開発中のものです。:2009/12/31(木) 14:48:06 ID:BNue/Y+a
>>45
> というか、普通にかけばいいじゃん。
それはお前にとっての普通だろw

一般のCプログラマにとっては関数ポインタ使った方法もC言語の
言語仕様で想定された"普通"の方法の一つなんだけど。

お前にとっては「そんなの使ったら僕理解できない!型とか関数の引数などの
便利な機能が"僕には"使えなくなる(涙)」ってだけw

その程度で「OSでも作るのか?バーチャルマシンでも作るのか?」って涙目w

56 :名前は開発中のものです。:2009/12/31(木) 17:00:50 ID:5+vTlDqR
>>55
頭の弱いものいじめ、カコワルイww

57 :名前は開発中のものです。:2009/12/31(木) 18:52:03 ID:h+8Shtga
抽象化はメリットがなければじゃまなだけ。
メリットが明確じゃないから使わないんだろ。
メリット感じてるやつだけが使えばいいんだよ。

58 :名前は開発中のものです。:2009/12/31(木) 19:06:43 ID:Z2PxtqgR
「タスクシステムでゲームを作る」って言うよりは、
「有限状態機械を組み合わせてゲームを作りたいけど、
 使用する言語にコルーチンのような機構が無いから、
 同じような物を自前で実装するためにタスクシステムを使用する」
っていうのがタスクシステムを使う本来の動機だと思う

59 :名前は開発中のものです。:2009/12/31(木) 19:28:41 ID:dXSivK3c
正直最初に実装した人は少なくともそんな小難しく考えてないだろう。
・俺がメモリを管理する!がしたい
・状態(データ)と処理(動作)を一まとめに出来たら直感的
・それらの一まとめを個別に自由に追加・削除したい。

以上の要求にC言語で応えようとすると、リスト構造を純粋に作るか、
>>2で示すような(リスト+配列)/2のような構造がぱっと思いつくのでは?

60 :名前は開発中のものです。:2009/12/31(木) 19:38:27 ID:5+vTlDqR
>>57
>>43
それもう結論出てるから。

今はメリット・デメリットの比較までたどりつけない子がイジメられてるだけww

61 :名前は開発中のものです。:2009/12/31(木) 19:48:27 ID:r+thC80S
でも誰も語れない不思議

62 :名前は開発中のものです。:2009/12/31(木) 19:53:57 ID:MpNp4sOV
FSMとコルーチンってなんか特別な関係があるの?
コルーチンって状態遷移に対してメリット思いつかないんだが

63 :名前は開発中のものです。:2009/12/31(木) 20:43:02 ID:5+vTlDqR
>>61
でも誰も"僕の理解できることを"語れない不思議

>>62
コルーチンをサポートする言語のVMをFSMとして見るなら、コルーチンの単位を一つの状態として見れるかもね。
そもそも用語の次元が違う話だけど。

64 :名前は開発中のものです。:2009/12/31(木) 21:44:09 ID:6w1nCnA3
それでも語らない不思議

65 :名前は開発中のものです。:2010/01/01(金) 00:33:49 ID:VUgsc33T
>>59
その動機ならalloc系をラッピングしたほうが自然では?

66 :名前は開発中のものです。:2010/01/01(金) 03:30:24 ID:4JKBI3JG
>>55
>一般のCプログラマにとっては関数ポインタ使った方法もC言語の
>言語仕様で想定された"普通"の方法の一つなんだけど。

関数ポインタ?使えば良いんじゃね?
タスクシステムが糞といってるだけで、関数ポインタが悪いとは言ってないんだが。

タスクシステムのまずい点は、言語レベルで初めから持っているはずの、
「プログラムは上から順番に実行される」を自前で実装しちゃってる点。
考えてもみろよ。結婚式のプログラムだろうが運動会のプログラムだろうが、
プログラムと名のつくものは大概順番に実行されていくものだろ。
コンピュータだって機械語レベルでそうなってるし、C言語以下の低級言語ですら、それぐらいの機能は持ってる。
それを何で今更自前で用意する必要がある?
そんなの独自にやろうとするから、C言語既存の、
「引数受け渡し」や「型」や「構造化制御」との親和性が低くなる。

なんでも言語標準の機能を使えとは言わないが、
あまりにも基本的な部分を覆すのはどうかと。

67 :名前は開発中のものです。:2010/01/01(金) 03:49:11 ID:4JKBI3JG
もちろん、実行順序を動的に制御したい場合もあるだろうけど、
そういう汚い部分は、個々のモジュール内に閉じ込めて、表に撒き散らさないようにした方が賢いと思うが。
Zソートを例に挙げると、それは描画エンジン内でこっそり行えばよい話で、
タスクシステムみたいに変に統合しちゃって、猫も杓子もそれつかえってのは無茶。

68 :名前は開発中のものです。:2010/01/01(金) 04:12:13 ID:4JKBI3JG
>>62
>FSMとコルーチンってなんか特別な関係があるの?
>コルーチンって状態遷移に対してメリット思いつかないんだが

これも良く引っかかる罠なんだが、
コルーチンはスタックフレームの状態が保存できるから
スタックフレーム上のプログラムカウンタを状態とみなすことで状態変数をなくすことが出来る。
しかしそれは状態が独立している場合のみに有効で、
状態と状態が連携をとる場合は、状態変数は消せない。

例)
if( stateA && stateB ){}
else if( !stateA && stateB ){}
else if( stateA && !stateB ){}
else{}

FSMの中身が上記のようになる場合は、コルーチンを使っても状態変数は消せない。
つまり、あんま意味無い。

状態変数の数だけコルーチンは必要なんだけど、状態と状態が連携をとる場合、
各コルーチン同士で状態のやり取りをする必要が出てきて、結局状態変数を復活せざるを得ないってこと。

69 :名前は開発中のものです。:2010/01/01(金) 04:27:38 ID:4JKBI3JG
では、状態が独立している場合にはコルーチンが有効かというと、実はそうでもない。
なんでかっていうと、状態が独立しているのなら、初めからプログラムはそんなに複雑にはならないから、
ベタで書いても大したこと無いから。

同期の粒度が大きければコルーチンは便利かもしれないけど、
一フレーム毎に同期を取るゲームでは無用かな。

70 :名前は開発中のものです。:2010/01/01(金) 08:12:20 ID:PCKniPZB
古典タスクシステムの

メリット:

多数のFSMを逐次実行するための一手段になる

簡単な古典TS(>>2の「最も基本的なTCBの構造」だけで済むTS)ならコードはシンプル

MVCのMとCが分離されているため、タスクシステム(C)を実装すれば、
後は動的に実行される関数(M)の実装に専念できる


デメリット:

逐次実行するFSMの数が少ないならわざわざ使う必要が無い

各TCBのワーク領域割当に苦労する
ワーク領域を動的確保にする場合はガベージコレクトの問題が出る

簡単な古典TSには、TCB間の情報・イベント伝達や、親子関係を持たせる機能などが無い
これらを実装しようとすると、気持ち悪いコードになる可能性が高い
(TCBの逐次実行がウリなのに実行順序を無視したり、グローバル変数にアクセスしたり)
設計・実装にプログラマの良し悪しが出る

TCBから呼ぶ関数内でMVCのMとVを分離せず書くと、今時のプログラミングでは混乱しやすい
(特に、直接API(DirectX等)や、APIが比較的剥き出しになっているラッパーライブラリを使う場合)

71 :名前は開発中のものです。:2010/01/01(金) 09:09:20 ID:7lwJSlZL
>>70
> 簡単な古典TSには、TCB間の情報・イベント伝達や、親子関係を持たせる機能などが無い
> これらを実装しようとすると、気持ち悪いコードになる可能性が高い
今時のタスクシステムにしろUnreal EngineとかのActorにしろ、今時のゲームエンジン系で
イベント伝達や親子関係とかをサポートしてないものを探すほうが難しいな。
つまり実際に製品規模のゲームを作るうえでは必須な機能だ。

ゲームロジック部分は嫌でも土臭くなる部分が出てくるし、これはタスクとかActor
を使わなければ綺麗に書ける、というものでもない。

「いや、俺はそんなもの使わずに製品規模のゲーム作る方法知ってるよ」って天才がいるのなら
CEDECなりGDCなりで発表すればきっと世界中のゲームプログラマから賞賛受けるよ。

72 :名前は開発中のものです。:2010/01/01(金) 09:39:45 ID:4JKBI3JG
>>70
逐次実行がタスクシステムの売りっていわれても、そもそもプログラムは基本全部逐次実行だ。
ますますfor(;;){ task1(); task2(); task3(); }で問題ないな。

>>71
それらはゲームエンジンという制約からくるものだ。

ゲームのメインロジックは泥臭くなるというが、それはゲームエンジンを使おうとするから。
ゲームなんて、入力→状態更新→描画 を永遠と繰り返すだけなわけで、
普通に書けばそんなに泥臭くならない。
WindowsアプリがWindowsの仕様にあわせるために窓周りが泥臭くなるのと同じ理由で、
ゲームエンジンでゲーム作ると泥臭くなる。
増築の手法で一戸建て立てようとしているのだから当たり前。

73 :名前は開発中のものです。:2010/01/01(金) 09:50:21 ID:7lwJSlZL
>>72
>ゲームのメインロジックは泥臭くなるというが、それはゲームエンジンを使おうとするから。
>ゲームなんて、入力→状態更新→描画 を永遠と繰り返すだけなわけで、
>普通に書けばそんなに泥臭くならない。
UEエンジンやFarCryエンジン、タスクシステム使ってる時代遅れの開発者達に
「ゲームエンジンなんて使わずに普通に書け」と教えてあげなきゃ!
世界中のゲーム開発者が気づかなかったことを気づくなんて天才だね。
・・・紙一重にはかなわんww

74 :名前は開発中のものです。:2010/01/01(金) 10:00:29 ID:4JKBI3JG
今時ゲームなんて作ってる奴はもとより時代遅れなのかもしれないよ?

あーあと、親子関係とかは(何の親子関係かは知らんが)実装しても良いと思うよ。必要ならね。
それをタスクやactorに結びつけるのは糞の極みだが。

75 :名前は開発中のものです。:2010/01/01(金) 10:21:15 ID:7lwJSlZL
>>74
>今時ゲームなんて作ってる奴はもとより時代遅れなのかもしれないよ?
ゲーム製作技術なんて時代遅れの板では天才様のレベルには合わないようですよ?www

76 :名前は開発中のものです。:2010/01/01(金) 10:31:24 ID:4C/yACts
ID:7lwJSlZL、そんなに怖がるなよw
ID:4JKBI3JGは少なからず理屈で出てるんだから、
お前が逃げると、見てるほうとしては物足りないぞ。
もっと頭を使わないと立派な大人になれないぞ。

77 :名前は開発中のものです。:2010/01/01(金) 11:00:53 ID:FSN4cjeN
>>2の構造ならポインタインクリ、デクリできるからじゃね?
あとなんかヒープ領域をリアルタイムでこまめに確保するのってなんかCっぽくないと思えるように最近なってきた。不思議。

78 :77:2010/01/01(金) 11:01:41 ID:FSN4cjeN
安価忘れ。>>65

79 :名前は開発中のものです。:2010/01/01(金) 11:17:47 ID:7lwJSlZL
>>76
みえみえ・・・

80 :名前は開発中のものです。:2010/01/01(金) 15:18:56 ID:Q96dsOT3
イベントドリブンとgotoの違いがわかりません

81 :名前は開発中のものです。:2010/01/01(金) 16:25:03 ID:kwLK11hf
>>76
>>71-75の流れ見ればID:4JKBI3JGの完敗にしか見えんが
ゲームエンジン否定して毎作エンジン自作しろってか?正気とは思えん。
ID:4JKBI3JGが勝ってるように見える人間の理屈を教えて欲しい。まじで。

82 :名前は開発中のものです。:2010/01/01(金) 16:33:22 ID:QDlESbUP
なぜタスクシステムをゲームエンジンと読み替えるの?

83 :名前は開発中のものです。:2010/01/01(金) 16:36:10 ID:kwLK11hf
>>82
>>72で本人が言ってるけど。

84 :名前は開発中のものです。:2010/01/02(土) 01:19:18 ID:QfJjPf0+
ゲームエンジン(タスクシステム含む)なんて糞ですよ。
ゲーム用ライブラリ、これで十分。
でも俺もゲーム用ライブラリ作って商売しろって言われたら、
マーケティングの都合上、そりゃゲームエンジン(フレームワークみたいな奴)
にするけどな。使い勝手とかじゃなく、身の保身のためにな。

ゲームのメインループは各モジュールに制御を分配する、いわば心臓みたいなもんで、
そんなもんを安々他人や他社に明け渡す気にはなれん。
裏を返せば、他人の心臓は握りたいってことだが。
そりゃあ、誰だって甘い汁すいてぇよなぁ。

85 :名前は開発中のものです。:2010/01/02(土) 01:27:01 ID:QfJjPf0+
あーだから、UEエンジンとかも、ライブラリ的に気軽に利用できる部分はどんどん使えばよいと思うよ。
ただ、actorとかマジで要らないよね。
なんていうか、トラップにすら思える。

86 :名前は開発中のものです。:2010/01/02(土) 01:41:11 ID:QfJjPf0+
>ゲームエンジン否定して毎作エンジン自作しろってか?正気とは思えん。

だから、なんでゲームエンジンが必要なんだ?
ゲームエンジンが無きゃゲームが作れないのか?
ゲームの種類は千差万別でやらせたいこともまちまちなのに、
汎用なゲームエンジン作ったってしょうがないだろ。てか出来ないだろ。
なんですぐそう統合したがるのかが分からん。
個々の機能ごとに、たとえば、
描画エンジンとか当たり判定エンジンとか、そう言う単位で用意すりゃいいだろ。

87 :名前は開発中のものです。:2010/01/04(月) 19:31:30 ID:i2Edvm4/
タスクシステムの利点は、ゲームプログラミングの学習の段階で
ゲーム中のオブジェクトを抽象化する練習が出来ることだと思う
ゲーム中のイベントやキャラクター、エフェクトを
どのようにオブジェクトに分割して実装するか、とか考える練習になると思う

まあ、同等の事が出来るなら、特に今ではタスクシステムである必要はないけど

88 :名前は開発中のものです。:2010/01/04(月) 19:44:33 ID:UpxJY3Kj
今のゲームプログラマって抽象化ができないんだよね

89 :名前は開発中のものです。:2010/01/05(火) 03:55:23 ID:tTEIn5Ga
しかし、抽象化に限界を感じるのも事実かも。特に汎化。
車輪の再発明はするなとか、再利用性とか・・・。

90 :名前は開発中のものです。:2010/01/05(火) 10:58:16 ID:hppQWDKd
10年以上タスクを使ってたおれが、いま非タスクでゲームを実装してるよー!
正直どっちでもいいよとおもった。


91 :名前は開発中のものです。:2010/01/05(火) 12:01:30 ID:XJonv3Ta
たしかにどちらでも動作するので
プレイする側からしたらどうでもいい話
しかし、抽象化のできないマと話をするのは嫌

92 :名前は開発中のものです。:2010/01/05(火) 14:17:47 ID:UmUFrQG9
タスクシステムはともかくゲームエンジンまで不要と言い出したのか。
昔のタスクスレでOOP不要とかクラス不要と言ってた人と同一人物っぽいな。


93 :名前は開発中のものです。:2010/01/05(火) 15:46:08 ID:egLjh0Im
タスクシステムもオブジェクト指向も、抽象化して複雑さを管理するための
メタファーでしかないんだけどな。

自分ひとりで作れるぐらい単純なレベルなら抽象化もしない方が見通しいいかもしれない。
プログラマ2〜3人ぐらいの小さなプロジェクトでも無くても作ることはできるだろう。

次世代機の開発者数百人ってレベルで「普通に作れ」って何も基底システム用意しないのはさすがにありえんけど。

94 :名前は開発中のものです。:2010/01/06(水) 03:10:22 ID:xz1S9Fiq
タスクシステムが制御構造のいったい何を抽象化するというのだろう。
俺からしたら、いわゆるif文とかで普通に制御する構造化制御のよりも、
抽象度が落ちているようにしか思えないのだが。
ノイマン型コンピュータの逐次実行性を抽象化するもの→VM ってこと?

95 :名前は開発中のものです。:2010/01/06(水) 11:26:48 ID:sfZn8VJ7
ifで制御とか、超具象的じゃね?

96 :名前は開発中のものです。:2010/01/06(水) 14:23:59 ID:tFGAv+Wn
TCBは構造体やクラスだからデータの抽象化。TCBのリストはデータの抽象化
TCBリストのイテレーションはループ処理の抽象化
各TCBから呼び出される関数はサブルーチンの抽象化
つまり、タスクシステムはデータのリストから各サブルーチンを実行するループ処理の抽象化

これだけだと、VMの命令リストと同じように見えるけど、
最大の違いは、VMの命令リストは配列なのに対して、
タスクシステムのTCBリストは連結リストである点

TCBは連結リストで管理されているから、連結リストのメリットとデメリットを受ける
オブジェクトが頻繁に追加・削除されるゲームでは連結リストのメリットが生かされる

逆に言えば、連結リストの恩恵を受けられないようなゲームでは、
>>45の言うようにタスクシステムを使う必要がない

97 :名前は開発中のものです。:2010/01/06(水) 16:42:37 ID:JaFm52Ts
思ったとおりに動く
この快感を知らない理論派プログラマは去っていい

98 :名前は開発中のものです。:2010/01/06(水) 21:39:48 ID:QS9Yf2c/
>>97
プログラマの思ったとおりに動かないプログラムって何だ?
AIが知性持って反乱でも起こすのか?

99 :名前は開発中のものです。:2010/01/07(木) 01:20:32 ID:hnRcXVPe
>>96
俺が言いたいのはそう言うことじゃなくてさ。
タスクシステムも抽象化は抽象化なんだけど、
勝手手前な抽象化だから、C言語そのもののもつ抽象化と相性が悪く、
逆に退化してんじゃねーかって。

たとえば、タスクのプロシージャに引数が自由に指定できなかったり、
ダウンキャストが発生したり、
タスクの実行順をタスクの追加順やプライオリティーで指定しなければならなかったり。

タスクシステムも抽象化には変わりないんだけど、
C言語に元からある抽象化機能をスポイルしてしまうから、
トータルでは退化している部分の方が多いような。

タスクのプロシージャに自由に引数を指定でき、
書いた順に実行され、ダウンキャストの発生しない
タスクシステム誰か作れや。

100 :名前は開発中のものです。:2010/01/07(木) 01:27:41 ID:hnRcXVPe
タスクシステムって数々の苦行を強いるくせに、
皆が認めるメリットって、「実行順序を動的に制御できる」だけだろ。
なんか割に合わない。

101 :名前は開発中のものです。:2010/01/07(木) 01:38:41 ID:socYDQ5J
>>99
>C言語に元からある抽象化機能をスポイルしてしまうから、
C言語に元からある抽象化ってまさかifとかswitchのことを言ってるの?

>>100
皆って誰よ。
リンク先には5〜6個メリットが上がってるじゃん。

102 :名前は開発中のものです。:2010/01/07(木) 02:10:42 ID:hnRcXVPe
>>101
>C言語に元からある抽象化ってまさかifとかswitchのことを言ってるの?

型とか関数の引数とか構造化制御とか。
ちゃんと>>99で書いてるじゃん。勘弁してよ。

>リンク先には5〜6個メリットが上がってるじゃん。

これのことですか?
「ゲームを開発するのに適したシステムで開発できる」
勘弁してくださいよ。

103 :名前は開発中のものです。:2010/01/07(木) 02:48:24 ID:9Rd9VjpK
君、ノイマンがどうのとか前スレから言ってた奴だろ

104 :名前は開発中のものです。:2010/01/07(木) 02:57:51 ID:9Rd9VjpK
ゲームが作れないあの子は昨夏から全く成長がないのだな
つまりセンスがないというか、頭が悪い

105 :名前は開発中のものです。:2010/01/07(木) 16:34:42 ID:bq7Zas9u
>>99
つまり、タスクシステムは実行コストが大きくて可読性が低く、デバッグが難しいということだな

106 :名前は開発中のものです。:2010/01/07(木) 22:33:24 ID:plkS+oZ9
まあ動的言語でやってる事をC言語で強引に実装してる感じは否めない

107 :名前は開発中のものです。:2010/01/08(金) 00:54:14 ID:DYplkFdV
>>99
>タスクシステムも抽象化は抽象化なんだけど、勝手手前な抽象化だから

半年も経過したっちゅーのに相変わらず攻撃対象を明示せずに
「ぼくメリット分かんない分かんない癇癪起こるムキー」とか
性懲りもなく君は未だにやってるわけだが

一体どこの誰の自称タスクシステムの話をしているのか、それをどういう状況に
適用しようとしたのか。そういうことをこれっぽっちも書こうとしないな。なんでだ?
書けないんだろ。ゲーム作ったことないから。違うか?

どういうタイプの面子と、いつの時代、何を使って、どんなもの作ろうとした?
配当された人、時間、ツール、ターゲットハードウェア、etc。書いてみ?


108 :名前は開発中のものです。:2010/01/08(金) 01:33:44 ID:ANKhAB1L
>>107
タスクシステムが劣勢になると、とたんに個人攻撃をしだすな。
毎度毎度同じパターン。スレを荒らしてうやむやにする。もう嫌になる。

前にも言ったが、俺はハード屋だ。


109 :名前は開発中のものです。:2010/01/08(金) 01:47:31 ID:DYplkFdV
逃げんのかよ。女々しい奴だな
この程度の煽りくらいノイズフィルターで除去しなさいな

110 :名前は開発中のものです。:2010/01/08(金) 01:55:49 ID:DYplkFdV
ハード屋ねー。ふーん。で、何作っておまんま食ってるの。
あんた組み込みシステムの話からも逃げてたよねぇ。何作ってんのよ。
>>2の基本は、極めて平凡で古典的なtime triggeredなリアルタイムシステム
cyclic executiveの一種だと説明してやったのに、君は
「何の話かわかんなーいメリットわかんなーい」って知能障害起こして逃げたよねぇ

で、昨夏から成長したのハード屋さん

111 :名前は開発中のものです。:2010/01/08(金) 02:00:01 ID:ANKhAB1L
というか、本職の奴がこんなスレに居たらそりゃタスクシステムがそれだけおかしいってことだろ。
何の様でくるんだよ。潜在的な問題意識があるから覗くんだろ。
別に本職の奴は来るなと言いたい訳じゃねーぞ。
問題意識のある奴はどんどん書き込めばいいだろうし。

>>109
ごめん、これ本当に真面目に俺はハード屋なんだ。
ソフトウェアの知識が多少あるのは、大学がそっち系だったから。
日本で飯食ってくこと考えて、ハード屋に鞍替えした。
だから、何を期待されたのかは知らないが、お前の期待にはこたえられそうにない。
あれだね、対岸の火事だからひょうひょうと書き込めるってのもある。

112 :名前は開発中のものです。:2010/01/08(金) 02:09:41 ID:DYplkFdV
はぁ。。。ため息しか出ない。

113 :名前は開発中のものです。:2010/01/08(金) 02:11:45 ID:ANKhAB1L
>>110
自社製品に使われる基板の設計をする部署に配属されてる。

>>2は俺に言わせりゃ、単に関数並べときゃいいのに、だ。
アロケーターが括り付けてあるのもキモい。別で用意すりゃいいのに。
なんで統合したがるんだろう。

114 :名前は開発中のものです。:2010/01/08(金) 02:16:52 ID:DYplkFdV
ゲーム作ったことありません><
でもタスクシステムとかいうものが気になって気になって仕方なくて
とにかくこれが憎い(怒)気に入らない(怒)

こういう季節性の周期的な発作を呈する自称ハード屋さんに
何をどうしてあげればいいのかなー。ほんとわかんなーい
さっさとハロワ行って、おまんま食べれるようになって。
批判の対象を明確に。何をどういう状況で使ったら糞でした(ペッ
と書ける生活のゆとりが出来たら戻ってきてください。そんな感じ


115 :名前は開発中のものです。:2010/01/08(金) 02:20:29 ID:DYplkFdV
>>113
あー、すまん

> アロケーターが括り付けてあるのもキモい。別で用意すりゃいいのに。
> なんで統合したがるんだろう。

んとね、それは>>2のCodeZineの記事はゴミだから。気にするな
天下り式になんかそんなことやっちゃった学生さんの文章だから
深く考えちゃ駄目。読み流せ。大人なら


116 :名前は開発中のものです。:2010/01/08(金) 02:31:00 ID:ANKhAB1L
でも余計な機能を取っ払った純粋なタスクシステムって、
タスクを順番に逐次実行していくだけの代物だろ。
いまさらそんなもの本当に必要か?
そこが面白いんだよ。

117 :名前は開発中のものです。:2010/01/08(金) 10:30:26 ID:nbdwgzL8
必要だと言う奴には、理由を聞きたいね。

118 :名前は開発中のものです。:2010/01/08(金) 10:50:56 ID:vSnmCn7z
スケジューリングしないスケジューラ

119 :名前は開発中のものです。:2010/01/09(土) 09:41:23 ID:fTujCO4e
タスクシステムなんて伝統工芸みたいなものだろ

120 :名前は開発中のものです。:2010/01/09(土) 15:25:43 ID:ob/tnXgt
>>111
本職のプロが仕事で使ってるタスクシステムを
素人の君が何で「使えないもの」と結論付けられるのかわからんな。

「"自分には"使えない」という意味で言ってるのか?
あるいはタスクシステム使った市販ゲームなんて都市伝説、と信じてるとか。

121 :名前は開発中のものです。:2010/01/09(土) 17:18:49 ID:nu64CGug
「本職のプロが仕事で使ってる」って便利な殺し文句だよな。

COBOLだってAdaだって、本職のプロが仕事で使ってる。

122 :名前は開発中のものです。:2010/01/09(土) 19:55:40 ID:ob/tnXgt
>>121
COBOLもAdaも使えるじゃん?
ボーイングやF-22の制御ソフトウェアはAdaらしいし。
2009年現在、フォーチュン500の90%の企業はCOBOLプログラムを使用中、らしいし。

ホビープログラマの選ばない言語は「"ホビープログラマにとっては"使えないもの」
になるという理屈かな?

「便利な殺し文句」の説明よろ!

123 :名前は開発中のものです。:2010/01/09(土) 23:33:43 ID:cg8I3o/u
また香ばしいのが沸いてきたな

124 :名前は開発中のものです。:2010/01/09(土) 23:40:13 ID:cg8I3o/u
あーだから、ID:ob/tnXgt はタスクシステム使ってればいいと思うよ。

125 :名前は開発中のものです。:2010/01/09(土) 23:48:41 ID:cg8I3o/u
>「便利な殺し文句」の説明よろ!

これはあれだな、ここではプロが使ってるとか、そう言うのは誰も求めてないのよ。
タスクシステムを使うと何がどういう理屈でどうすばらしいのか、そういうのが求められてる。
また香ばしい展開になりそうな予感。

126 :名前は開発中のものです。:2010/01/10(日) 00:17:17 ID:9ahDY9xP
>>125
説明になっていないな。
逃げてる?

127 :名前は開発中のものです。:2010/01/10(日) 00:23:47 ID:Flkg59Va
だからー、あの人も使ってるから安心〜みたいなのは要らないのよ。
エンジニアなんだったら理屈で説明しやがれ。

128 :名前は開発中のものです。:2010/01/10(日) 00:33:04 ID:9ahDY9xP
>>127
理屈で説明どぞ
ささ、早く早くww

129 :名前は開発中のものです。:2010/01/10(日) 01:02:11 ID:Flkg59Va
理屈で説明しなければならない理屈を説明するのですか?なにそれ。

もし、理屈で説明しないなら、それはその人の主観に過ぎない。
主観は求められていないので、「理屈で説明しない」、は求められてない。
よって、理屈で説明することが求められてる。

ほら、お前らの好きな背理法だぞ。

130 :名前は開発中のものです。:2010/01/10(日) 01:10:53 ID:9ahDY9xP
あいかわらずハード屋さんは逃げてばっかりだな。
>>120
を理屈で説明してみなって。

「ハード屋なんでソフトのこと聞かないでくれる?」って逃げ回ってるけど
"エンジニア"は理屈で説明するって自分で言ったよな。
それとも「僕はハード屋だけどエンジニアじゃなくて奴隷です」というオチ?ww

131 :名前は開発中のものです。:2010/01/10(日) 01:20:30 ID:Flkg59Va
ソフトのこと聞いてくれてもかまわないけど、経験は無いから、
経験談とか聞かれても、それは答えられない。
逃げないってなんだ?うその経験談でっち上げることじゃなだろ。

>>120
>>116

132 :名前は開発中のものです。:2010/01/10(日) 01:22:59 ID:Flkg59Va
だいたい、逃げるな逃げるな言われるが、何が求められてるのかさっぱり分からないんだが。
ようは煽りだろ。
もうそういうのもいらねーんだよ。

133 :名前は開発中のものです。:2010/01/10(日) 01:24:18 ID:Flkg59Va
逃げないってあれか?ゲーム業界に転職して同じ土俵に立てってか?
そ、そこはさすがに逃げるだろー

134 :名前は開発中のものです。:2010/01/10(日) 01:28:37 ID:9ahDY9xP
>>131
>>120>>116に何の関連も無いが。

んで、別にソフトのこと聞いてないし。
「プロも使ってる手法を素人が使えないっていうのはどんな理屈で?」
と聞いてるだけだ。

こんな簡単な質問がそんな難しいか?
話題そらして逃げまわらずに答えなよ。

135 :ID:Flkg59Va なんかアクセス規制くらった:2010/01/10(日) 01:42:00 ID:iYQ9vwhm
使えないとは誰も言ってないだろ。メリットが無いと言ってるんだ。
タスクシステムでゲーム作ることは、そりゃできるだろうよ。

136 :名前は開発中のものです。:2010/01/10(日) 01:45:43 ID:9ahDY9xP
>135
使えないもメリットが無いもたいして違わん。主語が無いから。
「自分にとって」なのか「全ての人にとって」なのか、主語はどっちだ?
前者なら誰も疑問を持たないよ。「ああそうなの」って思うだけ。
後者なら>>120の質問に答えな。

137 :名前は開発中のものです。:2010/01/10(日) 01:58:38 ID:iYQ9vwhm
>>136
後者だ。
「プロも使ってる手法を素人がメリットが無いっていうのはどんな理屈で?」
メリットが無い理屈は>>116
プロが使ってる理屈は、その人が無能か、もしくはその人の趣味か、社風かなんかだろう。
もともと、アンチはプロが使ってることに意味は無い、という見解で、だからこそアンチなんだから、
そこに理屈を求めるのは擁護派の仕事だろ。
プロがタスクシステム使うのには理屈がある→タスクシステムのメリット ってことだからな。
だからさっきから散々、「プロが使ってる」の理屈を説明しやがれ、と言ってんだ。

138 :名前は開発中のものです。:2010/01/10(日) 02:04:54 ID:9ahDY9xP
>>137
>メリットが無い理屈は>>116
その理由は「ソフトの経験がないハード屋が想像した理由」だろ。
自分から「経験無いんでわかりません」と明言してるのに、
メリットが無い判断だけできる理由の説明をしろと言ってるの。

>だからさっきから散々、「プロが使ってる」の理屈を説明しやがれ、と言ってんだ。
タスクシステムを使った製品があることは「主張」じゃなく「事実」だから。
理由の説明とか必要ない。

「メリットが無い」という「主張」とは違うことを理解しろ。

139 :名前は開発中のものです。:2010/01/10(日) 02:18:17 ID:iYQ9vwhm
>メリットが無い判断だけできる理由の説明をしろと言ってるの。
現に、これだけスレが回ってて、いまだにメリットが出てこないだろ。
これも事実だぞ。

140 :名前は開発中のものです。:2010/01/10(日) 02:20:47 ID:9ahDY9xP
何かを主張する以上、それと矛盾する事実がある場合は筋の通った説明をする義務があるな。
じゃないと「その主張は間違い」ということになる。

>プロが使ってる理屈は、その人が無能か、もしくはその人の趣味か、社風かなんかだろう。
って判断を
>ソフトのこと聞いてくれてもかまわないけど、経験は無いから、
って人ができることをおかしいと思わないのかね。

141 :名前は開発中のものです。:2010/01/10(日) 02:27:32 ID:9ahDY9xP
>>139
事実は「"ソフトの経験の無いハード屋さんに理解できる"メリットが出てこない」
だ。「"全ての人の"メリット」じゃない。

なんで「自分一人」に理解できないことは「全ての人」にとっても理解できないこと、と考えるのかね。
その分野の第一人者でもこんなおこがましいこと考えないのに、経験が無いのでわからんと明言してる分野で。


142 :名前は開発中のものです。:2010/01/10(日) 02:30:01 ID:iYQ9vwhm
>何かを主張する以上、それと矛盾する事実がある場合は筋の通った説明をする義務があるな。
そっくりそのまま擁護派に言いたいな。
なんでいまだにメリットが書き込まれないんだよ。
この、今まさにここで起こってる目の前の矛盾は無視ですかそうですか。

> >プロが使ってる理屈は、その人が無能か、もしくはその人の趣味か、社風かなんかだろう。
> って判断を
> >ソフトのこと聞いてくれてもかまわないけど、経験は無いから、
> って人ができることをおかしいと思わないのかね。

ここ一年ぐらいタスクシステムスレッドにへばりついてて、
結局メリットが書き込まれなかったって経験ならあるぞ。

143 :名前は開発中のものです。:2010/01/10(日) 02:34:25 ID:9ahDY9xP
>>142
>結局メリットが書き込まれなかったって経験ならあるぞ。
過去一年のスレの中に"メリットが書き込まれなかった"?
本当だな?

144 :名前は開発中のものです。:2010/01/10(日) 02:42:22 ID:iYQ9vwhm
>事実は「"ソフトの経験の無いハード屋さんに理解できる"メリットが出てこない」
>だ。「"全ての人の"メリット」じゃない。

その、俺には理解できないメリットってどこに書き込まれているの?
ぜひ読みたいのだが。
あー、一個だけ面白いのがあったな。
タスクシステムは無能下請けを閉じ込める檻ってのがな。
別にタスクシステムである必要は無いと思ったが。

てか、俺がもしゲーム業界の人間で、そんで、タスクシステムにメリットはない、と言ってるとしたなら、
それはすんなり受け入れられるってこと?
さっきから俺が業界人でない事ばかりに「あえて」焦点を当ててくるから、
そう言うことになると思うんだけど。

145 :名前は開発中のものです。:2010/01/10(日) 02:48:42 ID:9ahDY9xP
>>144
>その、俺には理解できないメリットってどこに書き込まれているの?
>ぜひ読みたいのだが。
>あー、一個だけ面白いのがあったな。
こんな矛盾だらけのことを、何の疑問も持たずに発言できるなんて、ある意味才能?

146 :名前は開発中のものです。:2010/01/10(日) 02:59:04 ID:9ahDY9xP
何とかには勝てんっていうけどほんとだな。

矛盾を知覚できない人に矛盾を突きつけても時間の無駄だ。

君の勝ち。おめでとう。

時間の無駄だし眠いので寝る。

147 :名前は開発中のものです。:2010/01/10(日) 03:02:42 ID:iYQ9vwhm
いいから、早く俺には理解できないタスクシステムのメリットが
書き込まれているところ教えろや。

言っとくが、「タスクシステムは無能下請けを閉じ込める檻」ってのは
タスクシステムのメリットではないぞ。
単にタスクを逐次実行するだけの単純なタスクシステムにはそんな効能無いからな。

148 :名前は開発中のものです。:2010/01/10(日) 03:09:02 ID:iYQ9vwhm
王様は服の存在を一般市民に証明することをあきらめられた。

149 :名前は開発中のものです。:2010/01/10(日) 03:51:51 ID:5rRkUjnh
>>148
勝ったんだから涙をふいてwww

150 :名前は開発中のものです。:2010/01/10(日) 09:58:36 ID:RQrmUZZC
ID:iYQ9vwhm顔真っ赤ワロスw

151 :名前は開発中のものです。:2010/01/10(日) 09:59:43 ID:RQrmUZZC
ごめん(´・ω・`)ショボーン間違えた。

誤:>>150
正:ID:9ahDY9xP顔真っ赤ワロスw

152 :名前は開発中のものです。:2010/01/10(日) 12:14:50 ID:Seb9jIZf
>>148
裸の王様ってハード屋だったんだ。
ん?引数君=ハード屋=裸の王様?

あれ、このスレのアンチってもしかしてハード屋一人なの?
いつもピンチになると決まって単発IDの支援があるけど
これも自演?

153 :名前は開発中のものです。:2010/01/10(日) 13:31:54 ID:8SW20Pud
もういいからソースコード書けよ

154 :名前は開発中のものです。:2010/01/10(日) 18:27:46 ID:8eH0RrXE
結局ID:iYQ9vwhmって質問はぐらかすだけで何も答えてないよな。

誰が見ても詰んでるんだから、逃げまわらずに降参すればいいのに。
王手から千日手で逃げ回ってるみたいな展開は往生際が悪すぎ。

155 :名前は開発中のものです。:2010/01/10(日) 22:43:10 ID:91733NKQ
タスクシステムって言うのは、わざと非効率かもしれない方法でゲームを作らせて、
効率的なゲームの制御方法をプログラマに考えさせる切っ掛けを作るためにあるんだよ!

現在、古典タスクシステムはゲームプログラミングのための通過点でしかない
現在のメリットよりも、現在のデメリットを考える方が有用だと思う
(過去のメリットは考えてもいいけど、出つくしてるだろうし、再確認程度で)

156 :名前は開発中のものです。:2010/01/11(月) 01:33:15 ID:VKkWO+5z
>>152
おいおい、さすが一人ってことは無いだろうww
って昨日からハード屋しか書き込んでないな。

いいのか?アンチはみんなハード屋みたいな
お頭の足りない子扱いされちゃうぞ?
もっとがんばれ!アンチ共!www

157 :名前は開発中のものです。:2010/01/11(月) 02:23:31 ID:VKkWO+5z
>>155
あんたは古典的タスクシステムだけじゃなく
今風のタスクシステムもゲームエンジンもOOPも理解できないんだろ?www

しかしあんたほんとにハード屋か?
抽象化の能力の無い人間がエンジニアなんて無理だろ。
ほんとはソフト屋ですらないニートがソフト屋のふりしてたけど
ボロ出しすぎでこんどはとっさにハード屋って嘘ついてんじゃない?ww


158 :名前は開発中のものです。:2010/01/11(月) 09:29:25 ID:SWnnJiM1
>>155
いや、マジなやつもいるでしょw
このスレで必死になってる信者とかw

159 :名前は開発中のものです。:2010/01/11(月) 14:11:01 ID:EIFVML7c
煽り屋がいるからこのスレではタスクシステムのデメリットを指摘しない方がいいよ

160 :名前は開発中のものです。:2010/01/11(月) 21:57:11 ID:r3yNFZAR
煽られるのはデメリットを指摘したからじゃなくて
>>137みたいに「全ての人にメリットがない」なんて
明言しちゃう馬鹿だからでしょ。

自分から悪魔の証明にはまりこんで、証明求められて逃げ回ってりゃ
イジメの対象になるわな・・・

論理的に隙だらけのこと言ってりゃ、サドっけのあるいじめっ子が
よってきて面白おかしくイジメられるのは世の常。

161 :名前は開発中のものです。:2010/01/12(火) 01:25:13 ID:iqaDErJK
全ての人にメリットが無いってどうやって証明するつもりなんだろう?
「僕にメリットが理解できないものは全ての人にとってもメリットが無いはず」
と考えてるみたいだけど。
あれ?この考え方って自己と他者の区別がつかない自閉症児特有の思考だぞ?

ハード屋は発達障害の疑いありだから一度医者に見てもらったほうがいいぞ。まじで。

162 :名前は開発中のものです。:2010/01/12(火) 01:40:52 ID:u/HK8HqN
ID:9Rd9VjpK と ID:DYplkFdV は書いたが他は知らんがな
俺は前スレで色々ヒントやキーワードを彼に提供してきたのでイジメっ子ではない。
昨夏、女の子の体の仕組みを知らない童貞君のためにスッピン生娘のパンツの中を
見せてやったら「嘘だ!ボクが夢想してたモノはこんなものじゃない!隠すな!」
と童貞君は怒ってしまった。
童貞君は風俗雑誌に掲載される厚化粧ババァ店のシステムが提供するサービスに
翻弄されていたので真実を見せてあげただけなのに。。。

さて、何ヶ月も経過したからそろそろ成長して大人になったかなと思ったら、なんだ
何も変わってねーやと。

世の中のモノ作りの大半が様々な制約条件の下で行なわれる現実を彼は理解しない

163 :名前は開発中のものです。:2010/01/12(火) 02:24:21 ID:iqaDErJK
これだけ隙だらけで学習能力の無い、その上反発心だけは強い
天然の虐められっ子は貴重なんだけどな・・・

からかえばからかうほど墓穴ほって自爆していくのが何とも
嗜虐心をそそる。

164 :名前は開発中のものです。:2010/01/12(火) 20:32:58 ID:gQF+Lx4K
別にお前らが保守しなくてもこのスレは落ちないから安心しろ

165 :名前は開発中のものです。:2010/01/12(火) 20:38:46 ID:D4lOVZHK
頑張って頑張って、相手を弱く愚かに想定しないと、
レスを返すこともままならぬタイプの人間がいる。

正気の人間は、文意に対し、簡潔にレスを返すが、
そうでない人間は、まず必死で言葉を並べてから、
それにまぎれさせる格好でおずおずとレスを返す。


166 :名前は開発中のものです。:2010/01/12(火) 22:56:07 ID:GREl9eHL
えっ

167 :名前は開発中のものです。:2010/01/13(水) 00:33:27 ID:/GAYKABK
>>165
まったくその通り。正気の人間なら簡素に答えられるよな。
自分で宣言した「全ての人にメリットがない」とやらの証明をww
君は弱く愚かじゃないから必死で言葉を並べて逃げたりしないよねぇ

168 :名前は開発中のものです。:2010/01/13(水) 11:00:00 ID:d9k88SK6
>>167
自分で宣言した?
簡潔に言おう。お前は何と戦っているんだ?

169 :名前は開発中のものです。:2010/01/13(水) 15:58:25 ID:QkniZKRw
\                              /
   ̄ ̄ ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
         ____   
       / \  /\ キリッ
.     / (ー)  (ー)\
    /   ⌒(__人__)⌒ \
    |      |r┬-|    |
     \     `ー'´   /
    ノ            \
  /´               ヽ              
 |    l              \
 ヽ    -一''''''"〜〜``'ー--、   -一'''''''ー-、.    
  ヽ ____(⌒)(⌒)⌒) )  (⌒_(⌒)⌒)⌒))

170 :名前は開発中のものです。:2010/01/15(金) 01:34:09 ID:Pg/Kxl72
で、タスクシステムのメリットは数百人程度の大規模開発に発揮されるわけ?
初代タスクシステムの実装チームはどう見積もっても一桁だと思うけど

171 :名前は開発中のものです。:2010/01/15(金) 12:54:48 ID:5KQx+sb8
上の方でも出てた、MVCの考え方でモデルとコントローラを分離してる点だけを見れば、
モデルを多人数で実装するような大規模開発には親和性があるように見える

ただ、モデルをTCBから呼ばれるグローバルな関数群で実装するから、
百人規模だと関数の管理が大変だと思う
今の大規模開発なら、モデルはスクリプト言語で実装したりするんじゃないかな

172 :名前は開発中のものです。:2010/01/15(金) 22:37:50 ID:1kOQQYeQ
背伸び大好きのメリット君と愉快な仲間たちへ

もう少し身の丈に適合した話題を振ってはどうか。
ところで初代タスクシステムって何だい?初耳だな。
数百人程度の大規模開発って何だい?内訳書いてみ

爪先立ちは無用だから。さっさと君たちの土俵に案内してくれ。
どこの誰の自称初代タスクシステムを、どういう状況に適用し
何がどうなったって?


173 :名前は開発中のものです。:2010/01/16(土) 00:11:48 ID:Oe7Wf5vn
>>170
初代タスクシステムに限定の話なら
まぁ多くても一桁ぐらいだろうな。

174 :名前は開発中のものです。:2010/01/16(土) 00:39:37 ID:Oe7Wf5vn
>>172
誰に喧嘩を売ってるのか知らんが
初代タスクシステムっていえばタスクの名前をゲーム業界に広めたギャラクシアンのあれだろ。

まぁ今のゲーム業界でタスクシステムっていえばゲームオブジェクトに
定期的に処理を回す”何か”のことだろうけど。

タスクシステム、ジョブディスパッチャ、アクターモデル、コマンドキュー・・・
会社毎にいろいろ方言あるけど、日本のゲーム業界ではタスクシステムが一番
知名度あるかもな。
少なくとも「これはいわゆるタスクシステムで」って言えば大多数のゲームプログラマ
は何をしたいシステムなのか理解してくれるし。

175 :名前は開発中のものです。:2010/01/16(土) 00:52:36 ID:sJ1W7iNO
初代タスクシステムとか。。。まーた胡散臭いワードが出てきたわけだが

非プリエンプティブな処理単位の実行待ちキューを中核とする
演算リソースの分配(時間リソースの分配)を行なう低層の機構は
多くのゲームに共通するわけだが、こういう低層の仕様策定・実装に
関与する人間というのは、どんな巨大プロジェクトだろうが数人なわけで。。。

>>170は一体何を言ってんだって思わね?まるでわかんないんだわ。俺
ゲハ民の常識なのかしら?

176 :名前は開発中のものです。:2010/01/16(土) 00:55:30 ID:sJ1W7iNO
【訂正】
“仮に”非プリエンプティブな処理単位の実行待ちキューを中核とする
演算リソースの分配(時間リソースの分配)を行なう低層の機構の話だとして
こういうのは多くのゲームに見られるわけだが

だな

177 :名前は開発中のものです。:2010/01/16(土) 01:02:00 ID:sJ1W7iNO
それとギャラシアン云々だが
あれ活性OBJの連結リストなんて使ってねーぞ

ギャラクシアン起源説なんて信じてんのは若年層でしょ
都市伝説

178 :名前は開発中のものです。:2010/01/16(土) 01:10:30 ID:Oe7Wf5vn
古い例だがウォークマンがポータブルプレイヤーの代名詞になってたり
ファミコンが”ファミコンショップ”とかゲームの代名詞になってたり

一番最初に出てきた物の名前がその後の類似品の代名詞になるのと同じ感じかね。
タスクシステムも、後発の類似品に対する代名詞的な使われ方の方が多いかも。

十年以上ゲーム業界にいるが、自称タスクシステムってものはよくお目にかかる。
でもギャラガ時代の古典的タスクシステムは未だに現場で見たこと無い。

179 :名前は開発中のものです。:2010/01/16(土) 01:23:10 ID:Oe7Wf5vn
>>177
そうだったっけ?

Beepか何かの開発者インタビューで話が出てたんじゃなかったかな?
相当昔のことだから記憶があいまい。

ギャラクシアンのパクリ作るためのリバースエンジニアリングでコナミとかセガとか
業界中に広まった技術とかいう話も聞いたことあるが。はて真相は何だろうな。

180 :名前は開発中のものです。:2010/01/16(土) 01:37:10 ID:sJ1W7iNO
真相はアーケード基板のROMに入ってる
たしか暗号化はされてなかったから抜けばすぐ読めるだろ
あとタスクシステムという言葉は比較的新しい。70年代末はない。
それよりもずっと後
●須氏は「タスクシステム?当時はそんなの聞いた覚えがない」
とおっしゃってる。切れ者だからド忘れはないよ

181 :名前は開発中のものです。:2010/01/16(土) 01:54:45 ID:Oe7Wf5vn
ほー、そうなのか。
ではタスクシステムの命名はどこ発なんだろうな。
10数年前のスーファミ末期には既にあった気がするが
70年代から現役の開発者ってもう現場には居ないから
聞きようが無いな。

182 :名前は開発中のものです。:2010/01/16(土) 09:31:47 ID:OnBgULta
単に自称ベテラン開発者のフカシが広まっただけ説

183 :名前は開発中のものです。:2010/01/16(土) 11:00:28 ID:Oe7Wf5vn
何だかひねくれたのがいるな
何か嫌なことでもあったのか?

184 :名前は開発中のものです。:2010/01/17(日) 03:36:35 ID:nmbhFCyw
>非プリエンプティブな処理単位の実行待ちキューを中核とする
>演算リソースの分配(時間リソースの分配)を行なう低層の機構は
>多くのゲームに共通するわけだが、こういう低層の仕様策定・実装に
>関与する人間というのは、どんな巨大プロジェクトだろうが数人なわけで。。。

CPUリソースの分配・・・なるほど、
for(;;){ task1(); task2(); task3(); }
ですね。

185 :名前は開発中のものです。:2010/01/17(日) 12:57:47 ID:ZDUPish1
>>184
昔ベーマガとかMSXマガジンとかに載ってたゲームは
みんなそんな感じだったな・・・

186 :名前は開発中のものです。:2010/01/17(日) 13:04:11 ID:C1iRPVWM
・周期的に処理を実行する。
・周期的なプランニングに従い処理を分割する。
をタスクシステムと定義するなら、ほとんどのゲームはタスクシステムだ。
そんなことを言ってなにが意味があるんだ。あほくさと俺は思う。

187 :名前は開発中のものです。:2010/01/17(日) 13:38:58 ID:ZDUPish1
>>186
そのほとんどのゲームに必要な処理を作るプログラマは
作ったクラスなりライブラリなりに命名しなきゃいけないわけで。
それが「タスクシステム」って名づけられることが多いってだけでしょ。
そんなにカリカリするような問題とは思えんが。

188 :名前は開発中のものです。:2010/01/17(日) 13:46:01 ID:XEzaRCo+
多分ね、○○システムっていう命名が大げさすぎるんだよね。
中二病的であり、なにかこう、突っ込みいれてみたくなってしまう。

GoFでもなんでもないささいなただのコーディング上のイディオムに対し、
俺俺○○パターンって自分で名づけちゃってる奴をみたり、
GoFの○○パターンを"拡張"したものと呼べないだろうか、などといい始めてしまってたり。

189 :名前は開発中のものです。:2010/01/17(日) 14:23:53 ID:ZDUPish1
何か分かりやすい別の命名があれば提案して見ればいいんでない?
それが無いのでみんな思い思いに名づけてるんだろうし。

ゲーム業界ローカルだけど、この手の中ではタスクシステムが
一番知名度あるからお手軽なんだと思う。
>>174 みたいな感じで。

190 :名前は開発中のものです。:2010/01/17(日) 15:34:16 ID:XEzaRCo+
分かりやすい別の名前なんてものがつきようがないことこそ問題。
あやふやで、あいまいで、規模の小さいささいな何か、と呼べる。

191 :名前は開発中のものです。:2010/01/17(日) 17:00:18 ID:ZDUPish1
何が問題なのかよくわからんが・・・
ささいで小さなことなら気にしなければいいんじゃないか?

今のゲーム業界のプログラマはシェーダとか物理エンジンとか
流行の技術には興味あるけど、タスクシステムの名前とか
小さいこと気にしてる人はあんまり居ないのかと。

192 :名前は開発中のものです。:2010/01/17(日) 18:32:05 ID:XEzaRCo+
いや、別の名前ならよかったのに、と言ってるのではない。
名前が付くほどの明確な合意が無い、明確な役割がないと言ってる。
その程度のものでしかないのが問題、今それに大層な名前を与えてるのも問題。
たしかに、どうでもいいといえば、その通り。完全にどうでもいい話題。

193 :名前は開発中のものです。:2010/01/17(日) 18:35:04 ID:RDR1wGzx
タスクシステムなんていう便利すぎる言葉があるから本来なら
○○システム、○○パターンと名づけられるはずだった手法が
全てタスクシステムという名前で呼ばれてしまって
技術交流の障害となっている

タスクシステムは日本の技術力向上の障害となっている。l

194 :名前は開発中のものです。:2010/01/17(日) 21:57:38 ID:FfbhzfEP
技術の向上より先に一枚のテクスチャに執着するからその理論は成り立ちません

195 :名前は開発中のものです。:2010/01/17(日) 22:27:21 ID:ZDUPish1
タスクシステムは日本の技術力向上の障害って・・・
なんだか凄い話ですなぁ

196 :名前は開発中のものです。:2010/01/18(月) 09:41:09 ID:zdy+B0Ya
テクスチャ舐めんな
ローポリ関連のテクスチャとか職人芸だろ

197 :名前は開発中のものです。:2010/01/18(月) 15:24:16 ID:blClLAFQ
なんでタスクシステムごときで深刻な話になるんだか・・・

今のゲーム開発ってJavaとかC++などのオブジェクト指向が中心だから
古典タスクシステムがまんま使われるケースは稀だと思う。

基本的にはタスクはクラス単位で管理するから大規模開発に適してるけど、
個人開発でもその恩恵は十分にある。

タスクシステムの定義自体確定したものがあるわけではないのだから、
モノなり機能なりをタスクという単位に分けてプライオリティを考慮した
処理が行えればそれはタスクシステムと呼んじゃっても問題ないと思う。

上記の処理は関数ポインタ使わなくても実装できるので、たぶん多くの
開発者はタクスシステムを作っているつもりは無くても、結果として
タスクシステムと似たような仕組みを作ってると予想する。

198 :名前は開発中のものです。:2010/01/18(月) 16:18:11 ID:gind7IbN
だから、そんな曖昧な物に大層な名前がついているのが問題だろ。
さごは予想するって、これまたいい加減に締めくくってるし。

199 :名前は開発中のものです。:2010/01/18(月) 16:34:04 ID:BNu7Pgru
タスクシステム=バズワードでござる の巻

200 :名前は開発中のものです。:2010/01/18(月) 16:36:42 ID:ocST5QSJ
ざこばにみえた

201 :名前は開発中のものです。:2010/01/18(月) 16:42:49 ID:BNu7Pgru
バズワード(buzzword)とは、一見、専門用語のようにみえるが、明確な合意や定義のない用語のことである。

「バズ(buzz)」という言葉は、もともと、蜂がブンブンとうなり続けている様子を表しており、
そこから派生して、世間の群衆が噂話でざわめいている状況を表す言葉として使われている。
つまり、バズ・ワードとは、世間、
あるいは業界一般などの一定の一般的なグループの間で喧伝されてはいるが、
その実態が明確ではない言葉を表している。

結果として、その分野に明るくない人にイメージだけを押し付けたり、
「よくわからないが凄そうなこと」を想起させることを目的とした宣伝文句として使ったりすることも可能であり、
言葉だけが先歩きして広まることも多いため、
事情を知らない多くの人は価値のある言葉としてとらえてしまうことがある。

202 :名前は開発中のものです。:2010/01/18(月) 23:40:26 ID:sD142dY3
タスクシステムってそんな大層ものに見えるのかなぁ・・・
よくわからん感覚だ。

文化を知らない原住民にとってはライターが神秘の道具に見えるみたいな感覚なのかね。

ライターがその辺に転がってる現代人はライターに何のこだわりも無いように
ゲーム業界のプログラマもそんなとこにこだわってないみたいだし。

ではタスクシステムのアンチってどんな人たちなんだろうな。
自称ハード屋みたいな人たちか?

203 :名前は開発中のものです。:2010/01/19(火) 09:02:17 ID:itbk5OE1
> タスクシステムってそんな大層ものに見えるのかなぁ・・・

見えない、つってんのw 名前だけが大層だ、つってんのw

> 文化を知らない原住民にとってはライターが神秘の道具に見えるみたいな

ライターどころか、ただのとがった木の枝を、
「食物保持システム」と呼んでるようなもん。

204 :名前は開発中のものです。:2010/01/19(火) 21:49:46 ID:Kg6lhl+f
いいじゃん、名前くらい付けたって。

そもそもタスクシステムなんて大層な名前とも思えないし、
話題としても入門者用のゲーム開発本や2chにこんなスレが立つ程度だよ。

「〜タスクにバグがある」みたいに会話に使えるし便利だ

205 :名前は開発中のものです。:2010/01/19(火) 21:52:19 ID:Kg6lhl+f
sage忘れた

203の言わんとしてることも分からなくはない。
IT全般に言えることだが、ささいなことに大層な名前がつくことは多い。

206 :名前は開発中のものです。:2010/01/20(水) 09:39:23 ID:lMhBGyYo
Web2.0(笑)

207 :名前は開発中のものです。:2010/01/20(水) 16:31:49 ID:GZ6ukala
日本で言うと

お 仕 事 機 構
ババーン!! キャー

みたいなもん

208 :名前は開発中のものです。:2010/01/20(水) 17:42:05 ID:X8g7zZhe
>>170
で、初代タスクシステムってなんだい?


209 :名前は開発中のものです。:2010/01/20(水) 17:50:02 ID:X8g7zZhe
それから自称ハード屋よー、ずっとお返事待ってんだけど。待ちくたびれたな
それともノイズフィルターで煽り成分を除去したら全部消えちゃったかい?
まずは>>107の質問にさっさと返答してくれ。な

君は、使ったこともない見たこともない対象物についてあーだこーだ薀蓄垂れる
知ったかゲハ厨ではないと俺は信じてる。だから待ってんだわ

210 :名前は開発中のものです。:2010/01/20(水) 23:06:18 ID:nEoZHyHP
タスクシステムとオブジェクト指向って相性いいの?

211 :名前は開発中のものです。:2010/01/21(木) 01:55:23 ID:2aOWs6hc
タスクシステムってゲーム業界ローカルのニッチな技術だよなぁ・・・

で、なんで自称ハード屋みたいなタスクシステムとは一生無関係な人が
呼び名云々でアンチになって粘着してるんだろう・・・謎。

なんで?

212 :名前は開発中のものです。:2010/01/21(木) 05:52:25 ID:OKCvDDGi
>>210
前このスレで、ITaskクラスを継承すると、
特定の仮想関数が周期的に呼ばれるのが出てた。
普通にメインループから呼べば良いじゃんって話だが。

213 :名前は開発中のものです。:2010/01/21(木) 05:58:53 ID:OKCvDDGi
>>211
呼び名というより、その仕組み自体が。
普通タスクシステムみたいな仕組みって、
処理の順序を動的に変更する必要に迫られて、
仕方なく実装するものだと思うんだけど。

214 :名前は開発中のものです。:2010/01/21(木) 22:33:35 ID:2aOWs6hc
>>213
答えになってないような。
その理屈だと、ゲームでは処理の順序を動的に変更する必要は無い、
という証明が出来ない限りアンチは間違いということになりそうだが。

215 :名前は開発中のものです。:2010/01/23(土) 05:54:07 ID:+Fjx9Lw9
>>210
というか後の世代から見ると単なる多態をC言語で頑張って実装してるのが古典タスクシステム

216 :名前は開発中のものです。:2010/01/23(土) 09:44:48 ID:eVe2Lx2L
新しい言語があるんだからそれ使えばいいんじゃないの?
どうしてゲーム屋はC言語にこだわるの?

217 :名前は開発中のものです。:2010/01/23(土) 11:33:40 ID:HtJlbitc
>>216
>>174
古典的タスクシステム限定の話題にすりかえて
アンチの負けという>>214の事実から逃げようとしてるのかな?せこいな。

218 :名前は開発中のものです。:2010/01/23(土) 11:54:38 ID:noxrWNCM
勝ち負け、ねぇ…。

219 :名前は開発中のものです。:2010/01/23(土) 12:07:28 ID:HtJlbitc
そう、勝ち負け。
理論で追い詰められて、反論が出来ないと話題をすりかえて逃げ回ってる人たちは
自分が間違ってるということを認められない負け犬。

負け犬と言われたくないなら自分の間違いを認めるか、逃げ回らずに正々堂々と理論で反論するか。
どちらかにしなさい。

220 :名前は開発中のものです。:2010/01/23(土) 12:18:07 ID:Cn/pX/qE

おまえらどんなゲーム作ったの?


221 :名前は開発中のものです。:2010/01/23(土) 14:02:19 ID:noxrWNCM
土曜の昼から見えない敵と戦ったりとか。

222 :名前は開発中のものです。:2010/01/23(土) 15:07:38 ID:HtJlbitc
確かに「タスク信者」なんて見えない敵と戦うアンチはどうかと思うな。

あげく追い詰められて反論できずに話題そらしに必死・・・

223 :名前は開発中のものです。:2010/01/23(土) 15:16:19 ID:dTJJCHXH
必死すぎて気色悪いです

224 :名前は開発中のものです。:2010/01/23(土) 15:21:00 ID:HtJlbitc
わるいな、いじめっ子なんだ。ww

泣きながら逃げ回ってる馬鹿を見ると追い詰めたくなるんだよ。

ごめんなぁ?必死で逃げ回ってるのに。ww

225 :名前は開発中のものです。:2010/01/23(土) 15:26:25 ID:Cn/pX/qE
2ch弁慶はうるさいなぁ
しねよ

226 :名前は開発中のものです。:2010/01/23(土) 15:28:46 ID:HtJlbitc
負け犬と言われたくないなら自分の間違いを認めるか、逃げ回らずに正々堂々と理論で反論するか。
どちらかにしなさい。

俺、何か間違ってること言ってるかね?

ごめんなぁ、罵倒しか返せなくなるほど追い詰めちゃって。
でもそれは君が馬鹿だからなんだぞ。

227 :名前は開発中のものです。:2010/01/23(土) 15:28:58 ID:noxrWNCM
自称いじめっ子とか。

228 :名前は開発中のものです。:2010/01/23(土) 15:30:07 ID:Cn/pX/qE
馬鹿がわいてるきいて

229 :名前は開発中のものです。:2010/01/23(土) 15:32:12 ID:noxrWNCM
>>228
なんか話が見えないよね。
彼の中では相手に対して想定があるみたいだけど。

230 :名前は開発中のものです。:2010/01/23(土) 15:34:08 ID:N9O+bpuS
あげろよ。面白いから

231 :名前は開発中のものです。:2010/01/23(土) 15:37:29 ID:HtJlbitc
タスクアンチなんて馬鹿は自称ハード屋と自演ぐらいしかいないかと思ってたけど
まだいるのかね・・・?

で、仮に別人だとして、君もハード屋と同じ考えしてるの?
だったら同類としてあの理屈に合わない矛盾した説の説明をして欲しいな。

「あんな馬鹿と一緒にするな」って人なら失礼ww

232 :名前は開発中のものです。:2010/01/23(土) 15:38:47 ID:N9O+bpuS
面白いから
VIPとヲチにも貼っておいたわ


233 :名前は開発中のものです。:2010/01/23(土) 15:45:07 ID:noxrWNCM
    _  
   ノn   ホー ホケキョ
   ̄" ̄ ̄


234 :名前は開発中のものです。:2010/01/23(土) 15:53:05 ID:HtJlbitc
しかしほんとに逃げ回るか罵倒しかできないんだな・・・つまらん。

ハード屋みたいに立脚点が間違ってて、しかも自分の間違いを
認められない馬鹿をからかうと矛盾だらけの説を出してきて面白いんだけど。

無料で「逆転裁判」してるみたいで矛盾をいくらでも突きつけられる。ww

235 :名前は開発中のものです。:2010/01/23(土) 16:25:39 ID:OzaU9I+h
がちきち

236 :名前は開発中のものです。:2010/01/23(土) 17:10:04 ID:emycmHhJ
でタスクシステムのメリットは動的な処理順番変更ってことでいいの?
おれメインで5本ゲーム作ったことあるけど必要になったことないな。
無駄にタスクシステムらしきものを突っ込んだタイトルのバグとり後始末なら何回かやったが。

237 :名前は開発中のものです。:2010/01/23(土) 17:29:09 ID:HtJlbitc
>でタスクシステムのメリットは動的な処理順番変更ってことでいいの?
それ、付加的なもので本質じゃないんだけどなぁ
本職でメイン5本作ったプログラマがこれまでの流れ通してその程度のことしか
わからないってのは・・・嘘っぽいなぁ

まさかノベル形式のエロゲー5本作ったスクリプタとか同人とかいうオチ・・・?
とりあえず作ったジャンルとプラットフォーム、開発規模をヨロ
特定されない程度で。

238 :名前は開発中のものです。:2010/01/23(土) 17:54:27 ID:emycmHhJ
>>237
じゃあなんなのよ。うそついてるって言うくらいだから教えてくださいよ。
こんなところで言っても意味はないけどコンシューマーでで30万くらいは出てるタイトルやってきたよ。
シューティング、アドベンチャー、RPG、シミュレーション。
PS1/PS2/GameCube/DS/PSP。プログラマーは5〜10人程度。

メモリ管理が便利になるとは思えないし(むしろ複雑になってデバッグが困難になることが多い)
フレーム処理用のインターフェイスの統一ならクラス継承そのもので
これをタスクシステムというならああそうなの?って感じだけど。
これなら確かに誰でも使ってるけど俺の回りではこれをタスクシステムとは呼ばないよ。

239 :名前は開発中のものです。:2010/01/23(土) 18:00:19 ID:emycmHhJ
>メモリ管理が便利になるとは思えないし
これはいわゆるTCBをいつでもどこでも自由につなぎかえるようなものをイメージしたときの話ね。

240 :名前は開発中のものです。:2010/01/23(土) 18:34:19 ID:6mS0/MSO
HtJlbitcのターン

241 :名前は開発中のものです。:2010/01/23(土) 19:53:05 ID:HtJlbitc
>フレーム処理用のインターフェイスの統一ならクラス継承そのもので
フレーム処理用のインターフェイスの統一=クラス継承
俺のまわりでは違うけど。君のまわりではそうなってるの?
説明どぞ


242 :名前は開発中のものです。:2010/01/23(土) 19:55:45 ID:emycmHhJ
class IFrameInterface
{
virtual void execute() = 0;
virtual void draw() = 0;
}
これ以上に何が必要でしょうか。
できればそれによるメリットを教えてください。

243 :名前は開発中のものです。:2010/01/23(土) 19:57:32 ID:emycmHhJ
さらにいうとこれもお題目なだけでわざわざ継承する必要すらないことも多い。

244 :名前は開発中のものです。:2010/01/23(土) 19:57:55 ID:HtJlbitc
>これをタスクシステムというならああそうなの?って感じだけど。
>これなら確かに誰でも使ってるけど俺の回りではこれをタスクシステムとは呼ばないよ。
>>174
名前が違うだけで使ってるってオチですか?

>おれメインで5本ゲーム作ったことあるけど必要になったことないな。
あれ?前に言ってることと違うような。
周りはみんな使ってるけど俺一人使ってない、ということ?はて。

245 :名前は開発中のものです。:2010/01/23(土) 20:05:15 ID:emycmHhJ
>>244
>>243がそうならそうだね。これをタスクシステムって呼んでるの?
でもタスクシステム云々言ってるときに
メリットとそのための実装が明確になっていることを見たことがないので。
タスクシステムと呼んでいた人たちのコードがバグを誘発してて
その複雑なコードはシンプルに書き換えられるという局面によく出会っていた。

>あれ?前に言ってることと違うような。
これよくわかんないからもう少し説明して

246 :名前は開発中のものです。:2010/01/23(土) 20:12:46 ID:HtJlbitc
>>245
>メリットとそのための実装が明確になっていることを見たことがないので。
メリットが明確になっていないものを
>これなら確かに誰でも使ってるけど俺の回りではこれをタスクシステムとは呼ばないよ。
君のまわりでは誰でも使ってる、と。
必要無いなら誰も使わないはずだけど?はてはて。

>これよくわかんないからもう少し説明して
"必要になったことない"のに"誰でも使ってる"?
はて、誰でもに君は含まれないのかい?

247 :名前は開発中のものです。:2010/01/23(土) 20:16:35 ID:emycmHhJ
>>246
あのさぁ。こっちは少しでも例だして質問して答えてるんだから
少しは例だしてくれないかな。

>>244
>>243がそうならそうだね。これをタスクシステムって呼んでるの?

これはどうなの?これがそうなら「必要あります」
>TCBをいつでもどこでも自由につなぎかえるようなもの
なら「必要になったことない」
という意味なんだけど。

248 :名前は開発中のものです。:2010/01/23(土) 20:25:37 ID:HtJlbitc
>>243とは>>242のコードをさしてるのか?
ならちがうんじゃない?

こちらの感覚は >>174 とか >>178 に近い。
ゲームでは必ず必要になるゲームオブジェに処理を回す"何か"の
代名詞的な意味だ。

で、結局君は何を主張したいんだ?

こっちは >>137 みたいなタスクシステムもゲームエンジンもOOPも
ゲームオブジェに処理を回す必要も無い、って言ってるハード屋とやらの
矛盾をついてるだけなんだが。

まさか君も同じ考えなのかな?

249 :名前は開発中のものです。:2010/01/23(土) 20:42:00 ID:HtJlbitc
まぁPS1時代みたいに片手で数えられるぐらいのプログラマ数なら
個々に必要になった箇所で作ってもいいんじゃない?とも思うが

今の外注やらライブラリやらサーバやら込みで3桁のプログラマが
コードをいじるプロジェクトで、タスクシステムなり何なり、処理を
回す基底処理を用意しないわけにはいかないし。

タスクシステムは非常にあいまいで名前が紛らわしいってのはあるけど
あんまりユニークな命名すると「これは何をするものですか?」って何回も
いろんな部署のプログラマに説明しなきゃいけなくなるし。(ドキュメント
用意しても百人超えるプログラマの中には読まないで聞きに来るのが絶対いる)
「タスクシステム」ってゲームプログラマならほぼ知ってる知名度の高い
名前つけてた方が面倒少ないから名前使う、ってレベルだけど。

250 :名前は開発中のものです。:2010/01/23(土) 20:44:38 ID:emycmHhJ
>>248
>>174>>178もそもそも具体的じゃないと思うけど
「定期的に処理を回す”何か”のこと」を>>242風に実現してるものはたくさんあると思うけど?
>>242からもシステムを構築する上でも無駄に複雑にする方法がいくらでもある。
(あまりにも汎用的な記述なんだから当たり前だよね。)
だからもっと具体的に、メリットがある「タスクシステム」はどんなものかを聞きたいのね。
「メリット」と、できれば実装を聞いているの。
少なくとも「メリット」が明確なら実装は聞かなくても推測可能だし。


>で、結局君は何を主張したいんだ?

>>242>>243以上の汎用システム化にメリットを感じたことがない。
>>242を毎フレーム呼び出すコードは普通に一般的だがそれ以上のメリットを備えた
汎用的なゲームシステムのことを「タスクシステム」と呼んでいるなら
そのメリットとはなんなのと質問しているんです。>>248でちがうんじゃない?といってるし。
きみも>>237で本質的なメリットじゃないっていってるじゃない?

わかりにくかったのかな。
本質のメリットというものを教えて欲しいんです。
別に誰かの意見の支持とかではなく>>236に対して>>237といったことの具体例を。

251 :名前は開発中のものです。:2010/01/23(土) 21:16:23 ID:HtJlbitc
不必要に基底が肥大化したタスクシステムに弊害があるのは当然。
んでもゲームで必ず必要になる処理である以上、誰かが何処かで作るわけで。

2桁超えたプログラマが思い思いに勝手に作ってたら収集つかなくなるだろ・・・
で、作ったら命名する必要があって、命名するなら代名詞的なもの使ったほうが
理解しやすいね。ということ。こっちの言ってるメリットの一つはこれ。

PS1とか64とかCubeとか、あの頃はみんなプロジェクト毎に独自タスクシステムっぽいもの
毎回新しく作ってたんだけどねぇ・・・
今のPS3/360世代で同じことやってると会社つぶれるし間に合わん。

>本質のメリットというものを教えて欲しいんです。
どうも君はプログラム・ロジックレベルのメリットに限定してるみたいだけど。
そのレベルのメリットは「タスクシステムの実装による」としか答えられん。

うちで今使ってる「タスクシステム」と名がつくものはマルチ・非相対コアで並列動作して
リソース同期を極力抑えて・・・というようなもの。
これは古典的タスクシステムと似ても似つかないものだけど、使う側のプログラマにとっては
キャラ単位、フロントエンドUIのウェジット単位、とかに使えてよくあるタスクシステムと同じ
範囲をカバーするから「タスクシステム」と命名してある。


252 :名前は開発中のものです。:2010/01/23(土) 21:42:10 ID:emycmHhJ
>>251
うーんそうすると>>242でもなにか便利な機能が追加されれば「タスクシステム」と呼ぶわけね。
(違うといってるのはおそらくこれに「独自の」メリットが追加されたものをそう呼んていると読み取った。)
で、そう呼ぶこと自体に意味があるということが>>237の真意ってことね?

それはあまりに技術的内容がないな。
たとえば並列化できるシステムは技術的コンセプトなしには作れないし
簡単じゃないことくらいはもちろんわかってるよね。メモリの安全な管理もそう。
UIの要素管理やAI管理もそうでしょう。

ここでの主張は「タスクシステム」と呼ぶこと自体が意味のあることという主張で
具体的な内容は>>242以上はないと。
そこまで言うならおれはやっぱり「タスクシステム」って呼ばないほうがいいと思うわ。
ネット見たってTCBがタスクシステムに必須であるような記述も多いし、
いろんな技術的要素をタスクシステムの例として説明しているものが多いし。
で、おれの経験でもタスクシステム云々言ってるコードは不要に複雑になったコードが多かった。
たしかに実装した「定期的に処理を回す”何か”」がシステムっぽいときに
「いわゆるタスクシステム的な」っていうのは通じやすいけど、
それじゃ「タスクシステムってなんですか」ときかれたら答えられないじゃん。

ゲームはいろいろな要素に>>242的な形が出現する、それを実装しているといったほうが優しくないか?
言い換えれば「定期的に処理を回す”何か”」ってことだから>>174そのものだね。
まあこれだけを意味する用語をおれも知らないけど。

というか>>137>>174は否定してないように見えたけど?
(さかのぼるの面倒だったのでID:iYQ9vwhmしか見なかったけど)

253 :名前は開発中のものです。:2010/01/23(土) 21:51:35 ID:HtJlbitc
>そこまで言うならおれはやっぱり「タスクシステム」って呼ばないほうがいいと思うわ。
それは会社や現場の文化なりルールなり開発者の嗜好なりの問題。
「タスクシステム」以外の名前で通ってる現場もいくつか見てきたし。
タスクシステムという名前を必ず使うべし、と言ってるわけじゃない。
ただうちの場合はロートルのプログラマとか、今は管理者になって現場に居ない上役とかにとって
「タスクシステム」ってのは通りがいいので使ってる。

>というか>>137>>174は否定してないように見えたけど?
さかのぼれば色々面白いと思うぞ。
タスクシステムのメリットを否定したいがためにゲームエンジンも、クラスの継承も、OOPも抽象化も全て否定して・・・
「タスクシステムは全ての人にとってメリットが無い!」とまで断言しちゃ
色々からかいたくなるだろ?

「へー、どうやって証明するの?その悪魔の証明」って。www


254 :名前は開発中のものです。:2010/01/23(土) 22:02:35 ID:emycmHhJ
>>253
>それは会社や現場の文化なりルールなり開発者の嗜好なりの問題。
これは否定できないけど
このスレは「タスクシステム」って何なのメリットあるのってスレだと思うけど。

「定期的に処理を回す”何か”」をタスクシステムって呼びます。
ならそれ自体はだれも議論しないと思うよ。

でも「タスクシステム」と称していろいろな実装についても語られる中
「タスクシステム」をそう理解しろってのも無理な話でしょ。
だって「定期的に処理を回す”何か”」って「ゲームループ」とすら言い換えられる。

255 :名前は開発中のものです。:2010/01/23(土) 22:23:57 ID:HtJlbitc
>「タスクシステム」をそう理解しろってのも無理な話でしょ。
今のゲーム業界でそー使われてるのが事実だからしょうがないんじゃない?
他にもっと適当な用語があればそれ使いたいんだけど、誰も代案なんて出せないだろうし。

「ファミコンショップ」に行って「何でPS3とか最近のゲームが置いてあるんだ!
ファミコンショップだろ!ファミコンのソフト売れよ!紛らわしいだろ!」とか怒られても
「今時ファミコンなんて売れないし・・・そーいうものです」としか答えられん。

技術的な話題をしたいなら、自分で明確なコードなり設計なりを出してから
「ここの問題どうしましょう?」とか聞くのがいいんじゃないの?
それかもっと適切なスレに行くか。
>たとえば並列化できるシステムは技術的コンセプトなしには作れないし
とかはタスクシステムじゃなくてゲームエンジンなりフレームワークなりの持分かと。

今まで「タスクシステム」と名がつくシステムを数十個見てきたけど、見事にゲーム毎に別々。
2Dアクション系でrect情報持ってるのとか、3D系でシーングラフとくっついてるのとか、
Win32APIのエミュみたいにHWNDとか持ってるわけわからんタスクシステムとか・・・
まぁ基底がごちゃごちゃしたタスクシステムと言われるものはだいたい糞だけど。
そうでない理にかなった自称タスクシステムも沢山見てきたわけで。

で、「全てのタスクシステムはデメリットしかない」と言われると「うーん・・・視野が狭いなぁ」となる。


256 :名前は開発中のものです。:2010/01/23(土) 22:32:30 ID:emycmHhJ
>>255
いやいやだからきみは「2ちゃんで煽りたい」ってスタンスが透けて見えるんだって。
>>237では「お前が無知なだけでメリットがあるよ」って雰囲気だしてるし
>技術的な話題をしたいなら、自分で明確なコードなり設計なりを出してから
これを出したら「タスクシステム」の話ではなく「俺システム」の話でしょ。
で共有できる「タスクシステム」の概念は何と質問すると>>174
こちらが出した擬似コードが>>242

>今のゲーム業界でそー使われてるのが事実だからしょうがないんじゃない?
>とかはタスクシステムじゃなくてゲームエンジンなりフレームワークなりの持分かと。
>今まで「タスクシステム」と名がつくシステムを数十個見てきたけど、見事にゲーム毎に別々。
結局こう言ってるのにすごい含みを持たせているようにしか見えない。
そんな議論だとだれも食いついてくれないから何かあるように見せる。
それが>>3だったり「タスクシステム」にまつわる大きな問題じゃないの?

257 :名前は開発中のものです。:2010/01/23(土) 22:48:10 ID:HtJlbitc
>いやいやだからきみは「2ちゃんで煽りたい」ってスタンスが透けて見えるんだって。
初めからいってるじゃん。ww
隙だらけの説を吹いてる奴の矛盾をついて楽しむのが目的だって。
たまたま覗いたこのスレに、理論的に隙だらけの奴がいたから遊んでるだけ。
理屈のおかしい主張は突っ込みたくなるだろ?ww

今さらタスクシステムなんてあいまいで初歩的な話、たいして興味ない。

んでもこっちがからむのは話の矛盾している箇所にであって、純粋な技術の話には
からまんけどな。相手がからんでこない限り。

で、あんたは「タスクシステムは全ての人にとってメリットの無い」って主張しているのを肯定するのかい?
それとも技術的な話の邪魔と思うの?

俺は無料逆転裁判を楽しんでるだけだ。ここは2chだしww

258 :名前は開発中のものです。:2010/01/23(土) 22:51:57 ID:TYP/Kskq
ちょっと考えれば IFrameInterface とでも役割を反映した名前にできるところを
「タスクシステム」なんて内容のわからない名前付けにして済ませてしまう。
そんな名前になってるからメモリ管理やら処理優先度やら妙なものがいっしょくたに
なっても、おかしいことに気づかない。あるいは気づきにくい。
そういう悪習を広めるという意味で「タスクシステム」は害悪であって、それを上回る
ようなメリットは持っていない。

259 :名前は開発中のものです。:2010/01/23(土) 22:55:43 ID:e8MgKiBY
IFrameInterfaceも何するものなのかいまいちわからないけどな

260 :名前は開発中のものです。:2010/01/23(土) 22:58:59 ID:emycmHhJ
>>257
論理の飛躍が見えてちょっと恥ずかしいなといってるだけ。
技術的な話を一切シャットアウトしてるのは突込みではなく煽りでしかない。

いっていることは結局>>174
そうだとしたらこのスレのだれも反論しないよ。

>で、あんたは「タスクシステムは全ての人にとってメリットの無い」って主張しているのを肯定するのかい?
ここ数レスだけを見れば君の主張を否定する点はない。ただそれはこのスレ的には誰も興味ないんだよ。
「俺の環境で概念の共有手段として使っている」といっているだけで
このスレで出てきている技術的な話についてもなにも理解が進むわけがないし
>>3のようなデメリットに対する反論になるわけでもない。

>それとも技術的な話の邪魔と思うの?

君がかき回しているだけだと思うよ。

261 :名前は開発中のものです。:2010/01/23(土) 23:04:43 ID:HtJlbitc
>君がかき回しているだけだと思うよ。
そうかい?
まぁこっちの楽しみのために技術的な話題をしたいという
真面目な人の邪魔するつもりは無いから退散するよ。

このスレで技術的に意味のある話ができるといいね。

262 :名前は開発中のものです。:2010/01/23(土) 23:05:39 ID:6mS0/MSO
二人が話してる「タスクシステム」は、相互にズレがあるようだな

263 :名前は開発中のものです。:2010/01/23(土) 23:10:30 ID:dTJJCHXH
そもそも論点が違うっていう

264 :名前は開発中のものです。:2010/01/23(土) 23:10:38 ID:9jsO6Ihb
そんなものを用語として使うことがw

265 :名前は開発中のものです。:2010/01/24(日) 01:45:03 ID:S5cLTXnr
for(;;)を永久ループって言ってるようなものだよね。

266 :名前は開発中のものです。:2010/01/24(日) 02:10:17 ID:icvLkhlP
IFrameInterfaceってtaskSystemよりセンスが悪いと思う…

267 :名前は開発中のものです。:2010/01/24(日) 09:40:18 ID:V9NZmcyP
ネットでダウンロードできる実践的なタスクシステムのソースってある?
オープンソース化してる市販ゲームって海外が多いから
タスクシステムのお手本みたいなのが見つからなくて・・・・

268 :ハード屋:2010/01/24(日) 11:49:57 ID:LS2EE4Eu
なんか荒れてるね。皆色々背負ってるみたいだから大変なんだろうね。
「技術」ねぇ。ノウハウの間違いなんじゃないかって。まあいいや。

俺なんかだとあれだけどね。
動的に実行順を制御したい部分が出てきたときは、
個々にモジュール化しちゃうけどね。
たとえば、Zソートだと、描画エンジンに任せたり。
局所性が高い方がカスタマイズしやすいでしょ、
そのスケジューラは描画エンジン専用にしていいわけだから。

269 :名前は開発中のものです。:2010/01/24(日) 12:26:01 ID:KTZGeiZi
経験によって意見がだいぶ違うな
小規模開発の実装プログラマ視点からはタスクシステムは諸悪の根源
大規模開発のアーキテクチャやプログラムディレクター視点からは
タスクシステムのような統一処理は必須

270 :名前は開発中のものです。:2010/01/24(日) 12:34:09 ID:NW82iE9u
全部アセンブラで書くのならタスクシステムは有効かもね
このスレではあまり重要視されないけど、複数人で開発しやすい構造だしね

271 :名前は開発中のものです。:2010/01/24(日) 12:49:13 ID:bsBl9MV5
便利なシステムはあったほうがいいけど具体的にどんなものなの?ってことでしょ。
それを具体的にしないと。

272 :名前は開発中のものです。:2010/01/24(日) 12:57:31 ID:KTZGeiZi
ゲームでは必須になる処理だけどジャンルとかプラットフォーム世代とかで
最適解が異なるから、具体的な一つに集約はしないだろう。

最大公約数的に全てのタスクシステム共通の処理だけ抜き出してきても
それは実際に使われてるタスクシステムとは似ても似つかないものだから
そんなの調べても実際のゲーム開発には役に立たないし。

273 :名前は開発中のものです。:2010/01/24(日) 13:19:25 ID:bsBl9MV5
実際に役に立たない概念・定義できない概念をタスクシステムと呼んでいるなら
それは意味がないでしょう。通常はメリットとその実装方法に意味があるんだから。
(「ゲームシステム」ってあると便利だよね。つくったほうがいいよっていってるのと変わらない。)

例えば、動的な処理順番変更がメリットでその実装方法としてTCBがあり
それがタスクシステムならそれは必要ないことが多い。
必要な場面で使えばいい手法ということになる。

上で「定期的に処理を回す”何か”」っていってるけど
それだけを「タスクシステム」と呼んでいるのならデザインパターンのひとつくらいの意味だね。
デザインパターンでも普通はサンプルコードくらい書けるけど。
>>2あたりはそういう主張じゃないよね。

274 :名前は開発中のものです。:2010/01/24(日) 13:26:35 ID:KTZGeiZi
タスクシステムはデザインパターンではなくアーキテクチャパターンだろうね。
PACアーキテクチャなんてタスクシステムの親類みたいな感じだし。

アーキテクチャパターンレベルの話にデザインパターンレベルの具体的な実装を
求めても、いろんな実装が出てきてまとまらないのは当然だな。

275 :名前は開発中のものです。:2010/01/24(日) 13:26:49 ID:2Vb1mFFo
ここまでタスクシステムへの明白なメリット明言なし。

適切な特性に適切な命名がなされることは、
皆さんご存知の通り、設計としての良い指針。

276 :名前は開発中のものです。:2010/01/24(日) 13:51:16 ID:bsBl9MV5
>>274
アーキテクチャパターンでもいいがサンプルは書けるでしょ。
メリットとそのメリットの明確化のためのサンプルがない用語に意味はあるの?
最悪メリット・目的だけでもあればまだ話はできるが。
それすらもないならアーキテクチャパターンですらないのではないのか?

PACアーキテクチャのどの部分がタスクシステムとの類似点なの?
「定期的に処理を回す”何か”」より具体性が後退してると思うんだけど。
MVCといわないのならこの差に特徴があるの?そんな議論もあまり見たことないが。

277 :名前は開発中のものです。:2010/01/24(日) 13:56:40 ID:KTZGeiZi
今までいろいろ明言されてるタスクシステムのメリットとデメリットって
PACアーキテクチャのそれとみごとにかぶるな。
タスクシステム≒PACアーキテクチャのゲーム業界方言
と言っても説明が通じそう。

で、実装レベルの理解が限界の一兵卒には設計レベルのメリットは目に入らない、
という感じか…

このスレの現状が見えてきた気がする。

278 :名前は開発中のものです。:2010/01/24(日) 13:57:59 ID:bsBl9MV5
>>277
なぜ具体的に語れないの?

279 :名前は開発中のものです。:2010/01/24(日) 14:09:25 ID:KTZGeiZi
具体的にってのは一兵卒からみた戦術的な話だろう。
銃の上手なうち方みたいな。

アーキテクチャは戦術じゃなく戦略の話だから
そのレベルの具体的な一例を戦略の話に求めるのがそもそも変なんじゃないのかな?

ちなみにアーキテクチャパターンなら、それを実装するデザインパターン例
の組み合わせが載ってたりするから、そこまで噛み砕いて具体例を要求すれば
デザインパターンレベルでの実装例は出せるかもね。

280 :名前は開発中のものです。:2010/01/24(日) 14:11:15 ID:bsBl9MV5
>>279
うん君のレスは中身がないよね
>MVCといわないのならこの差に特徴があるの?
まずこれに答えてみてよ。

>アーキテクチャは戦術じゃなく戦略の話だから
じゃあきみは一平卒にどうやってそれを伝えるの?

281 :名前は開発中のものです。:2010/01/24(日) 14:14:20 ID:LS2EE4Eu
>>279
一平卒に分からなくてもかまわないから、
タスクシステムがどういう「戦略」なのか書けよ。

あれか?無能下請けを閉じ込める檻ってやつか?

282 :名前は開発中のものです。:2010/01/24(日) 14:26:18 ID:2Vb1mFFo
>>279
具体的な戦略を語ってほしい。
それこそが求められている。

タスクシステムの具体的な何かを知っている人は、
このスレで問い詰められると、いつも最後には逃げる。

283 :名前は開発中のものです。:2010/01/24(日) 15:02:35 ID:KTZGeiZi
>>280
MVCとPACパターンの違いをきいてるのかな?
>PACにおけるCは、GUIに限らずMとVを協調させるという責務を持っている。またPACは明示的に階層構造を定義しているという点でMVCと異なる。
だって。
タスクシステムと違ってアーキテクチャパターンは明確な定義があるからやりやすいな。

あとネットで具体例を出してって本職には難しいんじゃないかな。
仕事のコード出したら大問題だし、説明のためだけにサンプルゲームつくるような親切な例は >>2 ぐらいじゃないかな。
それで飯食ってる人間に、説明のためだけに無給でコード書くこと要求してそれが通らないと逃げるなって言われるのは…
さすがに甘えすぎじゃない?と思う。

ほんとにやる気があるならGemsのactor周りとかアーキテクチャパターンとかある程度の基礎を自分で勉強して、
それでもわからない箇所があれば自分から具体的な質問を出す方が現実的かと。
質問が具体的なら返答も具体的になるだろ。

って何か「教えて君」に話しているような内容だな、これ。

284 :名前は開発中のものです。:2010/01/24(日) 15:11:39 ID:bsBl9MV5
>>283
>だって。
ようはMVCとPACの違いを意識したことはなかったわけね。

>タスクシステム≒PACアーキテクチャのゲーム業界方言
>と言っても説明が通じそう。
それはないだろう。

君が
>タスクシステムのような統一処理は必須
っていってるけどじゃあタスクシステムは何なのってきくと
>タスクシステムと違ってアーキテクチャパターンは明確な定義があるからやりやすいな。
じゃあ「タスクシステム」というものはなんなの?
これも答えず
>仕事のコード出したら
なんて誰も言ってないことを言い訳するし>>2の内容にすら触れない
>さすがに甘えすぎじゃない?
何もいえない奴にどう甘えろって言うんだ?

>って何か「教えて君」に話しているような内容だな、これ。
君ののレスから君が何か有意義な考えを持ってるようには読み取れないよ

285 :名前は開発中のものです。:2010/01/24(日) 15:24:05 ID:2Vb1mFFo
タスクシステムについて、明確な説明をすることは、
とてもとても大変で、とてもとても難しいことのようだ。

MVCのメリットなら一言で言うと、
俺はモジュール性が高まることにあると思う。

MがVもCも知らなくていいように作れるし、
ユーザからのinputはCが、ユーザへのoutputはVが担う、
という、名前と一致した明確な役割分担が美しいと思う。
交換可能なままで、各役割のクラス階層が育っていくので好ましい。
また、GUIでよくあるインタラクションへ、
ひとつの解をしめしてみせたという、
設計例の共有という意味でも有意義だったと思う。

286 :名前は開発中のものです。:2010/01/24(日) 15:25:54 ID:KTZGeiZi
>>284
ずいぶんつっかかるな。

>それはないだろう。
そう言い切れる根拠を出してくれないかな。
明確に言い切れるということはタスクシステムに関して明確な定義があるということだろうし。

それが皆の納得できるものならこのスレも有意義になるんじゃないのかな?

287 :名前は開発中のものです。:2010/01/24(日) 15:44:52 ID:bsBl9MV5
>>286
結局きみは自分にカードがあるように見せかけるけど一枚も場に出さず人にカードを切れというだけなんだよな。

PACアーキテクチャはMVCとの差を意識することで意味のある概念だろ。
だから後発にもかかわらず存在している。
つまりPACアーキテクチャはMVCとの差を意識することによって意味のある用語となっている。
PACパーキテクチャの方言という説明が有意義だと思うのなら一般にどう使われてるか配慮すべき。

MVCの議論はこのスレにもあった。
それも意識せずにPACアーキテクチャと比較するのであれば
そもそもその概念を有意義に考察しているかどうか疑問に思わざるを得ない。

そもそも
>明確に言い切れるということはタスクシステムに関して明確な定義があるということだろうし。
これは君が答えるべきことだから。
君は何を意味しているの?
おれは
・「定期的に処理を回す”何か”」
・それ以外の何か(例えばTCBを使って実装されている。動的な処理順番変更機能を持つ。など)
のどれのことか具体的にときいてるんだけど。
で「PACパーキテクチャの方言」っていうからどこがそうなのって聞いてるの。

カードがないならないって言えばいい話。

288 :名前は開発中のものです。:2010/01/24(日) 15:57:16 ID:KTZGeiZi
>>287
>PACアーキテクチャはMVCとの差を意識することで意味のある概念だろ。
ちがうと思うぞ。PACはMVCとは別概念。
PとAが直接参照しない点とCが階層を持てる点でMVCより一般的なタスクシステムに近いんじゃない?

>これは君が答えるべきことだから。
教えて君に答えなきゃいけない義務なんていつの間に出来たんだろう?
妄想の中?おしえて。

ちなみにタスクシステムに関する個人的な見解は >>272 だ。

ところでカードって何?

289 :名前は開発中のものです。:2010/01/24(日) 16:15:46 ID:bsBl9MV5
>>288
お前のレスが>>272で尽きてるならもう>>274以降このスレ的に意味のあることは何もないってことだね。

これすら意味ない。
>PとAが直接参照しない点とCが階層を持てる点でMVCより一般的なタスクシステムに近いんじゃない?

まあもういいけど、これを解釈すれば、
・階層構造が持てること
・描画がデータを直接参照しない
がタスクシステムの特徴ってこととなるけど階層構造はともかく
描画がデータを直接参照しないってすでに「一般的なタスクシステム」をなんら表してないだろ。
でもせめてうえの2つを直接指摘すれば議論にはなったね。
一兵卒に理解できない内容とはとても思えないけど。

290 :名前は開発中のものです。:2010/01/24(日) 16:27:30 ID:2Vb1mFFo
ID:KTZGeiZiが断片的に示してくれたタスクシステム像。

>>269 タスクシステムのような統一処理
>>272 ゲームでは必須になる処理
>>274 PACアーキテクチャなんてタスクシステムの親類みたいな感じ
>>277 タスクシステム≒PACアーキテクチャのゲーム業界方言
>>288 PとAが直接参照しない点とCが階層を持てる点でMVCより一般的なタスクシステムに近い

291 :名前は開発中のものです。:2010/01/24(日) 16:37:03 ID:KTZGeiZi
今のタスクシステムって用語はいろんな実装から帰納的に求められた
広い意味を持つ用語だから、具体的な実装の話をしたければ質問側が
具体的な条件を出さないと無意味だね、と。

で実装レベルではないアーキテクチャレベルの話ならPACアーキテクチャ
とかが近そうだね、と。

用語のあいまいさの問題と実装と設計と、別々の問題なんだから質問を分別する必要があるんだけどね。
そこが分けられるかどうかが一兵卒とそうでないかの試金石?

まぁ何か「意味のあることは何もない」って完結したみたいだからいいか…

292 :名前は開発中のものです。:2010/01/24(日) 16:40:01 ID:Uy/fuKoN
煽ってるつもりが煽られて捨て台詞w
カッコイイ

293 :名前は開発中のものです。:2010/01/24(日) 17:45:29 ID:xSRr2yTP
タスクシステムとPACなんとかって別に近くないだろ
もちろん数あるタスクシステムの中にはPACなんとかっぽい構造または機能を持ってるものがあるかもしれないけど

294 :名前は開発中のものです。:2010/01/24(日) 17:47:59 ID:7WekSMc+
>>268
やぁ。元気取り戻したようだね。じゃあこれよろしく。>>209


295 :名前は開発中のものです。:2010/01/24(日) 17:50:52 ID:pJxaHfPd
>>293
煙にまこうとしただけなんだから触れてやるなよ。

296 :名前は開発中のものです。:2010/01/24(日) 17:52:41 ID:jE2fwQfT
>>290-291
自分の考えてる「タスクシステム」とは何かを説明してよ。
たとえを一切使わないで。

297 :名前は開発中のものです。:2010/01/24(日) 18:06:18 ID:c1+fzVK/
ID:KTZGeiZiは間違ったことは言ってないんだけど
相手のレベルに合わせた話ができないのは痛いな。
この人部下の人望無さそう。

298 :名前は開発中のものです。:2010/01/24(日) 18:11:49 ID:yxBMV7uM
タスクシステムについては結局なにも言ってないからな。
応対はかなりひどいけど。

299 :名前は開発中のものです。:2010/01/24(日) 21:42:39 ID:k3uW8LXB
裸の王様インターフェースの実装がまたひとつ。

300 :名前は開発中のものです。:2010/01/24(日) 22:16:42 ID:B8+fFWBr
なんか香ばしいねここ。

>>2の「古典タスクシステム」って、CodeZineのリンクにあるような
メモリアロケータまで詰め込んだ「固まり」、でいいの?C++なのにいろいろ
意味のない車輪の再発明しちゃってるような。
それなら、Cライブラリ的な何かが提供するメモリマネージャが貧弱で、
コルーチンすらないような組み込み系で「だけ」なら使えるかもね。
というか、そういう組み込み環境で使われる設計的な何かが「タスクシステム」の正体ってことでいいのかね?
(「組み込み環境」は、DS的なもの以下の環境を想定してます。)

とすると、そういうもの(「固まり」)は、あくまで組み込みとか貧弱な環境で必要があるもので、
Windows環境で動くゲーム(アーケード含む)とか、ハイエンド家庭用ゲーム機とか、
リッチな環境だといらないよね?
いやもちろん、「タスクシステム」にも含まれている処理、たとえば個々のオブジェクトに
処理を回したりすることを提供する「何か」は、環境が変わろうと必要で、そういうのは
各ゲーム会社にあるんだろうけど、
>>2の「古典タスクシステム」を「タスクシステム」である、として説明しているようなページが多い現状で
その「何か」を「タスクシステム」と呼ぶのはどうなのよ、と。
もっと言うと、「何か」を「タスクシステム」って呼んじゃっているようなところって、
「何か」に、「古典的タスクシステム」の要素のうち、もう自前で書かなくても済むようなものまで
組み込んじゃってません?

いやもちろん、業界内で「タスクシステム」といえば「何か」を指すのが当然だ、というのなら別に
構わないんですが、それにしては「古典タスクシステム」の紹介や実装がWebに溢れているなー、と。

301 :名前は開発中のものです。:2010/01/24(日) 22:45:34 ID:btnS2dkT
結局タスクシステムという名前が好きか嫌いかだけの問題なんだな。

302 :名前は開発中のものです。:2010/01/24(日) 22:49:21 ID:Zyhmmg9i
名前の意味すら不明瞭なのが問題

303 :名前は開発中のものです。:2010/01/24(日) 23:07:56 ID:FLHL1SSc
ここはニートに労働のメリット教えるスレと同じだな。
どんなに説明されようと初めから労働のメリットを認めるつもりは毛頭ないニートと
ニートを見下したいだけのリア充の終わり無き戦い。

ID:bsBl9MV5は持論と違うことをいくら説明されても馬の耳に念仏で「何もないってない。意味が無い」と繰り返すだけ。
ID:KTZGeiZiは自分の周りだけの業界常識を持ち出して相手を見下したいだけ。

どっちもどっちだ。

おまえらいいからゲーム作れ。

304 :名前は開発中のものです。:2010/01/24(日) 23:17:16 ID:bsBl9MV5
>>303
>>272でなにかあるってならそうだけど。
きみは>>272からなにを読み取るの?

305 :名前は開発中のものです。:2010/01/24(日) 23:28:03 ID:jE2fwQfT
>>304
>>303のまんま過ぎてワロタ

306 :名前は開発中のものです。:2010/01/24(日) 23:33:43 ID:bsBl9MV5
>>305
>>304
煽りたいだけなの?

307 :名前は開発中のものです。:2010/01/24(日) 23:42:51 ID:jE2fwQfT
>>306
自分の想定しているタスクシステムってどんなの?
状況に応じて違う、とかいうなら、その状況を自分で前提してでもいいから
たとえとか無しで自分の言葉で説明してみてよ

308 :名前は開発中のものです。:2010/01/24(日) 23:48:11 ID:bsBl9MV5
>>307
レスをたどってはくれないのか・・・
おれは
>・「定期的に処理を回す”何か”」
>・それ以外の何か(例えばTCBを使って実装されている。動的な処理順番変更機能を持つ。など)
>のどれのことか具体的にときいてるんだけど。
>で「PACパーキテクチャの方言」っていうからどこがそうなのって聞いてるの。

一つ目なら必要な機能だけどこれが「タスクシステム」でいいの?
TCBを使って動的な処理順番変更機能を持つものが「タスクシステム」なら
その方法にこだわる必要はないと思う。

なので「タスクシステム」を各々どう想定しているか聞いている。
おれは2番目も含めた説を見ることが多いのでそれは必須じゃないと言うのが持論。

309 :名前は開発中のものです。:2010/01/24(日) 23:56:22 ID:FLHL1SSc
>>304
事実を言ってるだけじゃね?
あんたの持論とは違うから何も読み取れないみたいだけど
そもそもあんた初めから議論するつもりなんて無いだろ
自分の聞きたい答えが聞けるまで人に質問繰り返すだけなんだから

>>272こそ>>308の答えそのものなんだが、これ以上何を期待してるのやら

こんなところで意地張ってないでゲーム製作にでも打ち込んだほうが
あんたにとっても有意義じゃね?

310 :名前は開発中のものです。:2010/01/24(日) 23:59:28 ID:bsBl9MV5
>>309
うん「タスクシステム」が技術的な実体を持たないというならそれでいいよ。
でも含みを持たせてみたりしてるしそもそも「実装はそれぞれ」だけじゃなんの話にもならないでしょ。
そういっているだけ。

>こんなところで意地張ってないでゲーム製作にでも打ち込んだほうが
>あんたにとっても有意義じゃね?

これはそうだけどね。これを突っ込む意図は何?


311 :名前は開発中のものです。:2010/01/25(月) 00:21:13 ID:pmo4H81E
>>310
>うん「タスクシステム」が技術的な実体を持たないというならそれでいいよ。
あんたのいう技術的な実態って何のこと?
タスクシステム並みにあいまいなんだけど

>これはそうだけどね。これを突っ込む意図は何?
そうだけどね、と納得したならいいんじゃね?あんまり意地はるな

312 :名前は開発中のものです。:2010/01/25(月) 00:28:55 ID:xzx5WVbG
>>311
うーん読み取れないものなのかな
>・それ以外の何か(例えばTCBを使って実装されている。動的な処理順番変更機能を持つ。など)
これは違うの?
>その方法にこだわる必要はないと思う。
ともいっている。これはあいまいなの?

>そうだけどね、と納得したならいいんじゃね?あんまり意地はるな
この板一応技術板だよ。実体のないものと結論付けるのはそれなりに意味があるでしょう。
それすら否定するならこのスレにレスする君の意図は何と聞きたかったの。

313 :名前は開発中のものです。:2010/01/25(月) 00:35:39 ID:pmo4H81E
あんた笑っちゃうほど>>309のまんまだな
人の質問には答えずに質問返し。そしてものすごい意地っ張り…

314 :名前は開発中のものです。:2010/01/25(月) 00:39:40 ID:xzx5WVbG
>>313
>>・それ以外の何か(例えばTCBを使って実装されている。動的な処理順番変更機能を持つ。など)
>これは違うの?
>>その方法にこだわる必要はないと思う。
>ともいっている。これはあいまいなの?

これは返答じゃないの?
むしろこの返答に答えて欲しいんですが。
質問の意図を確認しながら返答することすら許さないの?

>人の質問には答えずに質問返し。
それ俺がそう思っちゃうんだが。

315 :名前は開発中のものです。:2010/01/25(月) 00:40:30 ID:ESuEoHnc
>>309
実例を挙げて、具体的に言ってあげたらいいと思うよ。
自分の関わってるプロジェクトを例に挙げて、
こういう要求の時にはこういう処理をタスクシステムと呼んでる
っていうのをボカさずに説明してあげるべきだと思う。

316 :名前は開発中のものです。:2010/01/25(月) 01:04:58 ID:pmo4H81E
>>314
>これは返答じゃないの?
返答じゃないでしょ。質問でしょ
>質問の意図を確認しながら返答することすら許さないの?
こっちの質問の答えになってないからね

まぁいいや
これじゃID:KTZGeiZiと同じ結論のわかってる終わり無き戦いに巻き込まれるだけ
なので撤退しますわ

時間は大切にね!

317 :名前は開発中のものです。:2010/01/25(月) 01:08:22 ID:VSiYVhth
この機能なんの意味もないってそろそろ認めてもいいと思うw

318 :名前は開発中のものです。:2010/01/25(月) 01:15:12 ID:UpyPZX8b
煽りたいときに意味があるでしょ
>>3は秀逸

319 :名前は開発中のものです。:2010/01/25(月) 09:06:17 ID:G4TpJJQM
> これじゃID:KTZGeiZiと同じ結論のわかってる終わり無き戦いに巻き込まれるだけ

説明出来ないことを誤魔化すには、その対応は手垢がつき過ぎてる。

320 :ハード屋:2010/01/27(水) 21:45:20 ID:1CPLoz/X
あーやっぱこういう流れになったか。

なんていうかさ、たとえ、タスクシステムのメリットが出てきたとしても、
「そのメリットに焦点を当てた専用のモジュールを作れば?」

「そのメリットが生きる機能に専属でくっつければ?」
で終わっちゃうんだよな。

メモリ管理やオブジェクトの管理をするモジュールがあってもいいとは思うけど、
タスクシステムにくくりつける必要はないし、その方が可搬性が高まる。

Zソートやあたり判定で動的な実行順制御が必要な場合も、
それぞれのモジュールなりエンジンなりにそういう機能を持たせた方が、
これもやっぱり可搬性が高まる。

321 :名前は開発中のものです。:2010/01/27(水) 21:57:51 ID:1CPLoz/X
最小構成のタスクシステムって、動的に実行順序を制御できるだけの代物だと思うけど、
でも、動的なスケジューリングをするからには、その目的が絶対あるはずだろ。
だったら、その目的の機能内で動的なスケジューリングを勝手にやればいい話じゃん。
たとえば、Zソートだったら描画エンジン内で勝手にやりゃすむはなしだし。
動的スケジューリングってことは、それだけ ややこしい わけで、
汎用性を持たせようとして表に出してくる必要はないよな。

322 :名前は開発中のものです。:2010/01/27(水) 22:12:29 ID:1CPLoz/X
あと、開発手法としてタスクシステムはどうのこうのってのも出てたけど、
そういう動的呼び出しに頼ったやりかたは、そりゃプラグインなんかで使う増設の手法だ。
ゲームで言えば、ModだよMod。あとから拡張するやつ。
まだリリース前で最終ビルド前なのにModはねぇだろ。
だって、まだ、メインループ部は触れるわけだろ?
拡張拡張の延長でゲーム作るわけ?めんどくせ。

323 :名前は開発中のものです。:2010/01/27(水) 22:18:54 ID:1CPLoz/X
プロジェクト管理の面でも、
メインループから明示的に関数なりメソッドなりを呼び出す静的なやり方の方が、
トップダウンで管理しやすいと思うんだがなぁ。

324 :名前は開発中のものです。:2010/01/27(水) 23:06:33 ID:8BvS9Ahu
静的のメリットをわかってない奴は多い。違いすらわかってない奴も。
抽象化はメリットがあって初めて必要なもので
メリットが小さければ可読性保守性が落ちるだけのことがほとんどということもわかってない奴多い。

325 :名前は開発中のものです。:2010/01/28(木) 01:48:59 ID:ZDsUmlPH
>>320
自称ハード屋くんの文章は相変わらず中身がない。批評の対象をきちんと明示していないから。
君が考察し批評している対象物が何なのかきちんと明示してねー、と何度も何度も指摘してるよねぇ。
それはいつ、誰が、誰と、どういう状況で、何を作るために使ったものなんだい?実在するのかい?
ハード屋ともあろう者がこの期に及んで「あーあー聞こえない聞こえない」で押し通すはずないよねぇ
まさか脳内で生成した何かについてあーだこーだ自問自答してるわけもんねぇ

さぁ、さっさと>>107の質問に返答してくれ。な。待ってるんだよ

君は、使ったこともない見たこともない対象物についてあーだこーだ薀蓄垂れる知ったかゲハ厨
ではないと俺は信じてる


326 :名前は開発中のものです。:2010/01/28(木) 02:01:55 ID:+US4i3bi
どっちが中身がないのだか。

327 :名前は開発中のものです。:2010/01/28(木) 02:26:16 ID:ZDsUmlPH
前スレで彼の妄想の産物かと疑いたくなる曖昧な批判対象に付き合い
ESPを駆使して可能な限り具体的に書くよう努めてきたので勘弁してね

彼の批判する謎のタスクシステム。それが一体何でどういう状況でどう使われ
何が糞だったのかを彼が書かない限りもう駄目だと思うんだ

328 :名前は開発中のものです。:2010/01/28(木) 02:39:33 ID:3dunImPJ
もー書かなくていいよw
だってこのシステム存在価値ないじゃん
そろそろ気がつかねーと駄目だろ
やっぱ>>3は優秀だな

329 :名前は開発中のものです。:2010/01/28(木) 02:41:16 ID:ZDsUmlPH
例えば5万円未満で買い揃えられるローエンドのPC、例えば
最底辺のAtomネットブック、で60[fps]でヌルヌル動く程度の
こういう同人STGをVS2008EE(のC/C++)+DX9で作ったけれど
Codezineみたいな組み方って何でここをこういうふうにするかな
なんでこうしないのだろうか、とか。これくらい書けるでしょ。普通。
なぜ彼は書けない?おかしいだろ。前スレからの疑問

彼の批判には、具体的なゲームの仕組みの切れ端すら出てこない。
不自然なくらい綺麗さっぱり無い。不思議だよねぇ

おやすみ

330 :名前は開発中のものです。:2010/01/28(木) 02:48:34 ID:+US4i3bi
>何が糞だったのかを彼が書かない限りもう駄目だと思うんだ

必死さが伝わってきて満足です。

331 :名前は開発中のものです。:2010/01/28(木) 03:07:35 ID:wWgILMy0
自称ハード屋は自分が作り出した敵のイメージと戦ってんだよ。
みんなの前でシュッシュッてやってみせてるシャドウボクサーが呟きました
「こいつ使えねー(笑)存在価値なくね?(笑)」

ギャラリーには何が何やら分かりません

332 :名前は開発中のものです。:2010/01/28(木) 06:23:04 ID:3dunImPJ
>>331
ごめん
さっぱり意味わからない

333 :名前は開発中のものです。:2010/01/28(木) 09:10:52 ID:unwMX8eS
>>326
俺もおもったw

334 :名前は開発中のものです。:2010/01/28(木) 11:06:32 ID:mX4g322y
手の届かない葡萄は酸っぱいと言い張るしかないアンチの皆さんでした

335 :名前は開発中のものです。:2010/01/28(木) 12:30:42 ID:ycMB9psJ
C++でタスクシステム作ってて
・特定の種類(型)のタスクに定数時間でアクセスしたい
・実行順位を定めたい
・タスクの数を制限したい
これらの条件を満たすものをファンクタと型消去とリンクリストで実装したら
boost::mpl::listにある型リストにタスクに値するファンクタの型を入れて
各々の要素のメモリ領域を再帰継承のtemplateクラス内部で実体化及びリンクリスト生成、
そのクラスが持っているリンクリストを基底型から順に実行する、
という形になったんだけどこれだとファンクタの種類が多くなった場合に
空リンクリストを見て実行せずに制御だけ返すっていう処理も多くなってしまう。
どうすればもっと軽くできるんだろうか。
それとも、この条件を維持しつつだともうこれ以上最適化できない感じ?

336 :名前は開発中のものです。:2010/01/28(木) 23:53:28 ID:U4LSFJ0C
>>320
> なんていうかさ、たとえ、タスクシステムのメリットが出てきたとしても、
> 「そのメリットに焦点を当てた専用のモジュールを作れば?」
> か
> 「そのメリットが生きる機能に専属でくっつければ?」
> で終わっちゃうんだよな。

ところで「タスクシステム」はバズワードなので結局この文章全体が
ほとんど意味を成してない。それではあんまりなのでこのバズワードを
より適切な言葉で置換して、この文章の価値をよりわかりやすくしよう


  僕が考えたエターナルフォースブリザードシステムのメリットが出てきたとしても
  「そのメリットに焦点を当てた専用のモジュールを作れば?」
  か
  「そのメリットが生きる機能に専属でくっつければ?」
  で終わっちゃうんだよな。


はは、知るかバーカ、って感じだよね

337 :名前は開発中のものです。:2010/01/29(金) 00:18:06 ID:GbohI1Id
がんばるねぇ

338 :名前は開発中のものです。:2010/01/29(金) 00:46:29 ID:IDSHQgfo
ここだけの話、自称ハード屋はタスクシステムの熱狂的なファン
究極のタスクシステムを追い求め、アンチのふりまでして施しを求める
まさに乞食

本物のアンチならタスクシステムを否定するのに都合の良い条件を
引っ張り出し、それを前提に話を有利に進めようと試みるだろう

339 :名前は開発中のものです。:2010/01/29(金) 00:49:48 ID:BYQonX0j
>>335 http://codepad.org/

340 :名前は開発中のものです。:2010/01/29(金) 22:25:19 ID:EIzAmjlc
古典タスクシステムで質問。
弾タスクが地形タスクを知りたい場合、そういう場合どうやって実装すればいいですか?
毎回検索したくないです。


341 :名前は開発中のものです。:2010/01/29(金) 22:52:38 ID:H3puqMBg
適当な意見。
地形タクスのアドレス持つとか、継承させとくとかじゃダメなの?

342 :名前は開発中のものです。:2010/01/30(土) 00:10:55 ID:Vw2KSwE+
弾タスクリストと地形タスクリスト別々に作りゃいいんじゃね

343 :名前は開発中のものです。:2010/01/30(土) 01:06:14 ID:+mO4z66u
>>341,342
レスありがとうございます。丁度同じような事が前のスレで議論されていたのでそっち先に見てみます。

344 :名前は開発中のものです。:2010/01/30(土) 05:58:16 ID:ACjstz4k
>>341
弾タスクは地形タスクがないと存在すら出来ない見事な設計だなw
死ね

345 :名前は開発中のものです。:2010/01/30(土) 06:10:12 ID:7iJlsIJb
>>344
地形が無いときは見なければいいんじゃないの?

346 :名前は開発中のものです。:2010/01/30(土) 12:14:19 ID:Zr75YmEa
>>340
静的なマップデータを個々にタスクにする必要ないんじゃないか?
移動する足場とか扉とかアイテムみたいなオブジェはタスクでいいけど。
共通のマップ専用処理+その他オブジェの組み合わせが自然だと思う。


347 :名前は開発中のものです。:2010/01/30(土) 19:05:55 ID:ACjstz4k
>>345
お前のソース、意味のないヘッダインクルードして癒着が酷いんだな
明らかに無駄なつながりだけどそこになんの疑問ももたずにそういうの
ソースに入れちゃうんでしょ?
カプセル化とか全然わかってないな

348 :名前は開発中のものです。:2010/01/30(土) 19:18:41 ID:Z5sKkNAh
>>346
たしかに必要ないですね。。。

前スレみた感じだとDBみたいなのを作って検索するというのが結論っぽかったです。


349 :名前は開発中のものです。:2010/01/30(土) 19:22:05 ID:HDJNxhu9
裸の王様もここまでくるのか

350 :名前は開発中のものです。:2010/01/30(土) 21:11:22 ID:7iJlsIJb
>>347
普通は抽象化してるから、独立性が高くなるでしょ?
オブジェクト指向の唯一のメリットなんだから。
地形に依存する処理は地形にやらせればいいわけだし
弾はその処理の契機を与えるだけでいいんじゃない?

351 :名前は開発中のものです。:2010/01/31(日) 01:27:02 ID:030VeqOo
>>350
は?弾が地形のポインタもつのは設計が狂ってるって話してんのに
そんなレス返す辺りお前俺の言ってる意味テキトーにしか理解してないだろ

352 :名前は開発中のものです。:2010/01/31(日) 01:33:59 ID:3AvaezOm
まず弾が地形のポインタもつのがいけない理由がわからん
バカな俺に説明してくれ

まあ俺だったらグローバルに地形参照してるポインタもしくは地形の変数そのものを置くだろうな
そして必要ならリストにも加える

353 :名前は開発中のものです。:2010/01/31(日) 01:48:45 ID:030VeqOo
>>352
ああ、君はカプセル化とか気にしない人でしょ?
それじゃまったくわからないだろうね
そしたら全部グローバルにもったらいいで
なにも悪くないよ
ただ、カプセル化とかはわかってないよね
って言ってるだけ

354 :名前は開発中のものです。:2010/01/31(日) 01:54:01 ID:6qSVPUGq
>>351
地形クラスって限定してるならそうなるだろうけど
もっと抽象化したものをやりとりするものじゃないの?

>>352
グローバルに「地形」と限定したものを持つのはまずいと思う。
宇宙や空には地面は無いかもしれないし。

355 :名前は開発中のものです。:2010/01/31(日) 02:15:08 ID:PJ5c0R9P
ポインタがNULLなら判定をスキップとかそんなんじゃ駄目なんだろうか

356 :名前は開発中のものです。:2010/01/31(日) 02:37:55 ID:030VeqOo
逆に考えてみようぜ
地形が弾の情報をほしくなったらどーすんの?

357 :名前は開発中のものです。:2010/01/31(日) 03:11:53 ID:6qSVPUGq
お母さんに頼んで弾のポインタをもらう。

358 :名前は開発中のものです。:2010/01/31(日) 03:23:04 ID:Di+guFUQ
どっちか一方が知ればいいんじゃねーの
それか第三者が調停するか

359 :名前は開発中のものです。:2010/01/31(日) 03:37:51 ID:98e6KIKR
弾タスクが作られたときに一度、地形タスクのポインタを取得すればいいと思ったんだけど
弾が生きている最中に地形が増えていった場合に対応できないから、
弾が衝突する対象のタスクを入れる専用のリストを設ければいいかな?


360 :名前は開発中のものです。:2010/01/31(日) 04:37:51 ID:Di+guFUQ
俺だったら弾タスクリストも地形タスクリストもグローバルにしちゃうなあ
それやると上の人にカプセル化云々で怒られそうだけど
寧ろグローバルのどこがあかんのですか
大規模集団開発ならともかく、個人の小規模のものなんてグローバルでよくね?
どの道どっかで作ってそのポインタなりを一々渡したりするんだろ
一々面倒じゃん

361 :名前は開発中のものです。:2010/01/31(日) 05:24:01 ID:WDNFJ5/J
一週間ぶりに見る自分のコードは他人のコード

362 :名前は開発中のものです。:2010/01/31(日) 05:53:16 ID:CeH4M0fL
ここに居る人達はFSMにならないような記述をどうやって行ってる?
あと今まで古典タスクシステム無視してFSMでしかゲームくんでこなかったから
種類ごとの動作順序がバラバラなのが何だか気持ち悪いよ><

363 :名前は開発中のものです。:2010/01/31(日) 05:56:28 ID:98e6KIKR
>>362
FSMって有限ステートマシンのこと?

>>FSMでしかゲームくんでこなかったから
具体的にどうやって組むのか教えて。初めて聞いたから知りたい。

364 :名前は開発中のものです。:2010/01/31(日) 06:04:26 ID:CeH4M0fL
FSMは有限ステートマシンの事だよ。
これでゲームを組むっていうのは、大雑把に例えると
1) タイトル画面を管理するタスクが存在する
2) ゲーム本編を管理するタスクが存在する
3) ゲームオーバーエフェクトを管理するタスクが存在する
の時、タイトル画面からはゲーム開始できるから
 (1)->(2)
(2)からはゲームオーバーとゲームリセットが考えられるから
 (2)->(1), (2)->(3)
ゲームオーバーするとタイトルに戻されるから
 (3)->(1)
こんなFSMができあがる。
ゲーム中の敵みたいなオブジェクトも
 敵生成エフェクト->
 敵が発生する->
 敵が存在する(行動する事が閉じたFSMとして別に繋がっているが省略)->
 敵が破壊される
な単純なFSMとして処理の流れを記述できる。
でも、これは一々タスクを4つ作らないといけないし、無理してタスクひとつに詰め込んでも
状態変数を持ってifやswitchなどで内部で分岐処理をしないといけない。
これは非直感的で避けたい。

365 :名前は開発中のものです。:2010/01/31(日) 06:16:23 ID:CeH4M0fL
ごめん。言葉足らずだったね。
今はFSMの代わりにmicrothreadを使おうと調べているんだけど、
これはタスク中でyieldと言われている処理をする事でタスクの実行をプログラムのその行で中断し
次のタスクへ処理が委ねられる。
次回自分のタスクが回ってきた時、即ち次フレームになると
yieldの次のステートメントから処理を再開する仕組みっていう解釈でおk?
本質的には割り込みのないmulti threadと同じものだから各microthreadは動作順序が保証されない様に思えるんだけれど
どうなんだろう。
勿論動作順序の必要な箇所(描画など)は今までどおりFSMで組むけど、マルチスレッドなんて慣れてないから
「注意しておかないとバグや処理系依存になる」事がありそうで怖い。

366 :名前は開発中のものです。:2010/01/31(日) 11:51:44 ID:HU8XW/cO
>>これはタスク中でyieldと言われている処理をする事でタスクの実行をプログラムのその行で中断し
古典的タスクシステムの実装での話しなら
yieldで分割される単位で実行関数作って、状態が変わったら登録関数切り替え。
タスクを通して維持される情報はタスクのワークに、が古典的タスクシステムのやり方かと。

ちなみに古典的なリスト形式じゃなくてツリー構造にして子の生存管理を親に任せれば
上で言ってるタイトルとゲームオーバーと、みたいなシーンも君の言うFSMと同じように階層管理できる。

階層タスクはボス戦艦の船体の親タスクと砲台の子タスク、みたいな使い方でもよく使われる。
リストでも同じことできるけど、親の座標が子の座標に影響したり親がやられたら子も全滅、みたいなのは
ツリーで作った方が楽。

367 :名前は開発中のものです。:2010/01/31(日) 12:17:25 ID:QrJboi/Q
>>364
ここでいうFSMってタイトルの選択とかタイトルローカルの情報はどこで持ってるんだ?
グローバル?タイトル関数のstatic変数?
メインループから呼ばれて毎フレーム抜けるんだよな
静的に関数コールでくっついてるってことはクラスのメソッドでもないんだよな
仮にクラスのメソッドだとしたらタイトルがゲームとかゲームオーバーとかのクラスを所有するのか?

なんか色々タスク方式よりずっと気持ち悪く見えるんだけど。

368 :名前は開発中のものです。:2010/01/31(日) 14:39:09 ID:3AvaezOm
>>361
なんで先週の俺こんなに一所懸命カプセルかしてたんだっけ?

369 :名前は開発中のものです。:2010/01/31(日) 14:55:48 ID:CeH4M0fL
>>366
なるほどー。
階層構造にしてしまうのもやり易そうですね。
今の機能と共存する形で実装できそうなので作ってみます。

>>367
うう、すみません。表現の仕方が悪かったみたいです。
タスクシステムを普通に作ったらタスクが状態としてFSMで記述され、
遷移がひたすらタスクの生成と破棄する処理として置き換わる事を言っています。
366さんも言っているように、microthread等を使わなければyieldで分割される単位でタスクを作って記述が分断されます。
タスク方式よりずっと気持ち悪く見えても、これはタスクシステムそのものなんです。

370 :名前は開発中のものです。:2010/01/31(日) 15:01:40 ID:CeH4M0fL
また誤解を招く表現ですね。
タスクシステムそのものと言っても古典タスクシステムではありません。
実は僕は>>335で、そのレスにあるとおりの機能に依存して今まで開発しておりました・・・。
種類ごとの順序がない、定数時間で同じ種類のタスク全てに対する反復子取得できない、
データ構造がC++風のクラスという型レベルのものではなく処理関数と専用の構造体に分かれている、
汎用ワークエリアの容量が不足している事により起きるバグの回避が自動でできない、
そんな古典タスクシステムからできるだけオーバーヘッドを除きつつ逃げる為にいろいろやっております。

371 :名前は開発中のものです。:2010/01/31(日) 15:43:20 ID:PBTWOUVl
マイクロスレッド使わなくても、
task::exec() {
switch(state) {
case TITLE:
条件満たしたらstate=STAGE1;
case STAGE1:
case STAGE2:
}
}
こんなのでいいんじゃないの?

372 :名前は開発中のものです。:2010/01/31(日) 16:32:55 ID:oiLUSXKA
>>371
使わなくても、じゃなく、使わない方が良いだろうね、大概の場合。
FSMでマイクロスレッド使う場合のディメリットは、
FSMのステートをスタックフレームのPCで「代用」するやり方では、
一種類のステートしか保存できない点。だって、PCは一個しかないからな。
だから、マイクロスレッドでFSMやってると、
複数のステートが絡み合うようになる段階で、逆に苦労する。

373 :名前は開発中のものです。:2010/01/31(日) 16:43:00 ID:CeH4M0fL
>>372
何か勘違いしているみたいですが、マイクロスレッドはyieldが必要なタスクごとに作られます。
釣りな気もしますがマジレス。

374 :名前は開発中のものです。:2010/01/31(日) 18:17:03 ID:QrJboi/Q
>>370
>タスクシステムそのものと言っても古典タスクシステムではありません。
君の頭の中にあるタスクシステムはずいぶん独特みたいだな。
古典的タスクシステムではタスクローカルのデータはタスクワークで持てるけど
今まで作ってたFSMではない静的な方法とやらではどこで持つの?

375 :名前は開発中のものです。:2010/01/31(日) 18:23:01 ID:CeH4M0fL
>>374
> 静的に関数コールでくっついてるってことはクラスのメソッドでもないんだよな
クラスのメソッドだよ。型消去使ってるから呼び出せる。
http://codepad.org/OWiGW3X7

C++でタスクシステムするからにはこれくらいやるんではないでしょうか・・・。

376 :名前は開発中のものです。:2010/01/31(日) 18:56:25 ID:QrJboi/Q
何か話が通じない・・・

>クラスのメソッドだよ。型消去使ってるから呼び出せる。
それはC++でタスクシステムつかった時の作り方でしょ。

>あと今まで古典タスクシステム無視してFSMでしかゲームくんでこなかったから
何かしらんが、その非タスクシステムでゲーム作ってたときはシーンローカルのデータは
どこで持ってたの?

377 :名前は開発中のものです。:2010/01/31(日) 19:09:56 ID:CeH4M0fL
何だか自分の中だけで議論を展開してしまって申し訳ないです。

> 何かしらんが、その非タスクシステムでゲーム作ってたときはシーンローカルのデータは
古典タスクシステムではないけど上のcodepadにあるtemplate classで
タスクをFSMとして扱っているから飽くまでもシーンローカルのデータはタスクとして機能している
C++のオブジェクトが持っています。
ここでいう古典とは、型レベルでの事前操作をしないC言語で書く事が可能な種類ごとの順序を保証しない
タスクシステムです。
C言語でもある程度のコンパイル時のプログラミングはできるんですがチューリング完全ではないので
高度な事はできず、古典タスクシステムしか組めません。

更に、古典タスクシステムを引き合いに出したのは
microthreadでタスクの順序が保証されない事と共通点があったからであって
シーン処理に関しての考察は不必要で的外れです。

378 :名前は開発中のものです。:2010/01/31(日) 19:29:56 ID:030VeqOo
>>357-358
とりあえず定石として2つのものが互いに参照する可能性がある物体ってのは
正しくインスタンスを配置できたのなら必ず同じ階層に並ぶ
つまり、弾が地形のポインタをもつことはできないし
地形が弾のポインタをもつこともできない
グローバル変数や関数を使えばこういう設計ミスを回避することができてしまうが
これは正しい設計をぶち壊してとりあえずグローバル変数関数に頼るただの突貫工事でしかない
上記の場合は弾と地形の上にいるゲームならシーンクラスとかそういうのが弾と地形のつなぎ処理を
書く部分になるのが正しい

>>360
>寧ろグローバルのどこがあかんのですか
こういうの一度も考えたことないのが設計語ってる現実ってあるからなぁ
今後のためになんでダメなのかちょっとは考えたほうがいいよ
どうしてカプセル化するのか?ってのにその答えがある

379 :名前は開発中のものです。:2010/01/31(日) 19:35:08 ID:WDNFJ5/J
グローバルはルール無用になるところが問題だけど、
これを理解して実装しているプログラマーがどのくらいいるだろうか。
グローバルをやたら非難するけどシングルトンをやたらめったら使う奴とかいるし。
あと、ポインタを渡したまま消去されてしまうことに関してなんら対策されてないコードもやたらある。

380 :名前は開発中のものです。:2010/01/31(日) 19:41:42 ID:PBTWOUVl
>>378
シーンタスクが毎フレーム、弾タスクと地形タスクの衝突を判定して、衝突したら弾タスクと地形タスクに通知すればいいの?

381 :名前は開発中のものです。:2010/01/31(日) 19:42:47 ID:Di+guFUQ
グローバルあかんのやったら何でグローバルが存在すんのよ
別に何でもかんでもグローバルに頼るとは言うてへんやろ
何でもかんでもグローバルあかんと抜かすほうが何も考えてへんのちゃうやろか

382 :名前は開発中のものです。:2010/01/31(日) 19:55:10 ID:WDNFJ5/J
>>381
グローバルなくてもコードはかけるよ。
グローバルを隠す(さらには静的変数をなくす)のは主に「状態の整合性」の維持かな。

グローバルはとりあえず実装するのには便利だけど、
そのままおいておくと拡張するときに、
状態の整合性の確認のためコードを何度も確認する必要がでてくる。
普通、他人のコードはもちろん自分のコードも細部まで覚えてないからね。
インターフェイスを減らして意味を持たせることによって確認の手間を減らす意味がある。
そういう意味ではこのメリットがほとんどない場合は
グローバルで実装したほうが得ということになる。
また、グローバルを使ってなくても上記のメリットがまったくないコードってのもたくさんある。
やたらメンバ変数の多いクラスとかやたらポインタをすべてにたらい回すとか。

細かく言えばグローバルはオーバーレイでも使わない限りメモリを占有するってのもあるが
これはターゲットによってほとんど無視できることもある。

383 :名前は開発中のものです。:2010/01/31(日) 19:56:13 ID:030VeqOo
>>381
なんでもかんでもダメだね
ただ、君の方針がそうであるなら下手にカプセル化なんてしないほうがいいと思う
そういう方針であるならもう割り切るべき
設計なんて頭にいれないでデータすべてをエクセルに展開したみたいにすべて並べるように
プログラムを組んだほうがうまくいくと思う

384 :名前は開発中のものです。:2010/01/31(日) 20:00:04 ID:QrJboi/Q
>タスク方式よりずっと気持ち悪く見えても、これはタスクシステムそのものなんです。
FSMはタスクシステムじゃないけどタスクシステムそのもの・・・
なんだか禅問答みたいですな。
古典的タスクシステム≠FSM=何かの自己流C++タスクシステム
という意味なのかな?

>C言語でもある程度のコンパイル時のプログラミングはできるんですがチューリング完全ではないので
>高度な事はできず、古典タスクシステムしか組めません。
Cでは古典タスクシステムしか組めないとなる理由=Cがチューリング完全でないから?
すいませんがチューリング完全と古典的タスクシステムの関連性が見えません・・・


>microthreadでタスクの順序が保証されない事と共通点があったからであって
つまりタスクシステムというより並列処理の話なのかな?
順番の保証が必要な処理ならスレッドでもタスクシステムでも同期するなり
優先付けるなりする必要があるのでは、という話になるが。

385 :名前は開発中のものです。:2010/01/31(日) 20:23:36 ID:PBTWOUVl
つーか、現場で働いているゲームプログラマーが実際こうです!って書いてくれたらこんな議論しなくていいのになぁ。
守秘義務ってそうとう厳しいのけ?

386 :名前は開発中のものです。:2010/01/31(日) 20:30:57 ID:SO046r6f
コードにしたらボロでるじゃん!

387 :名前は開発中のものです。:2010/01/31(日) 20:38:10 ID:CeH4M0fL
> 古典的タスクシステム≠FSM=何かの自己流C++タスクシステム
> という意味なのかな?
そうです。

> Cでは古典タスクシステムしか組めないとなる理由=Cがチューリング完全でないから?
Cは実行時のプログラミングに関してはチューング完全です。
しかし、コンパイル時ではチューリング完全ではありません。
型に順序を与えたりソートといった動作をするにはチューリング完全である必要があります。
コンパイル時に分かっている情報はその時に処理した方が実行時に処理に負担が掛からず利点があります。
具体的な例を挙げればリストに重複した種類のタスクを単一しか存在できないものとして入れてしまい
それをエラーとして扱いたい場合があります。
assertマクロを使えばその様な事態はとりあえず実行時にエラーが出る事によって検出できますが
設置したそのステートメントを実行するまで気付きませんし、動的にタスクに種類の情報を与える方法では
実行前に意図したものが原因か、あるいはロジックの不正でデータが書き換わったのか区別できません。
回避するにはそもそもコンパイルできない様にすればいいのですが、型の区別、重複検索はチューリング完全でなえれば実装できません。
他にも人間のミスを予め阻止する予防線を作る必要があります。(読み取り専用のメモリに対する不正な型変換など)

> つまりタスクシステムというより並列処理の話なのかな?
OSなどに並列の管理を依存するとゲームプログラム自体が同じ状態でも
ゲームが干渉できない部分が原因でタスクの前後関係が狂い、再現性がなくなってしまうのでは?といった
懸念がありました。
並列処理に関しては僕はまだ勉強不足な様です。
再現性があり予測が可能な並列動作やyieldの方法を探してきます。


388 :名前は開発中のものです。:2010/01/31(日) 20:38:40 ID:030VeqOo
>>385
前に書いたんだけどなぁ
リンクとってないだろうなぁ
質問あるたびに上げるのも面倒臭いし

ただ、見て理解できるだろうか?
初心者って設計がどういうものか全くわかってないから
void*やグローバルでのアクセスを単純に技だと思っちゃうでしょ?
そういう勘違いから卒業してないと意味ないと思うんだよね
俺も駆け出しのころそうだったし
インクルードも神ヘッダ(総合ヘッダ)作って全部詰め込んでたよ

でもそれは一番やっちゃいけないことなんだよね
もちろん方針として割り切ってるならそれはアリ
ただ、あるところではカプセル化してあるところではグローバル使いまくりとか
するぐらいだったら設計なんて凝らないほうが吉

389 :名前は開発中のものです。:2010/01/31(日) 21:19:15 ID:QrJboi/Q
>>387
チューリング完全というよりメタプログラミングのことを言ってるみたいだね。
古典的タスクシステム≠メタプログラミング=君のタスクシステム
C++はテンプレートメタプログラミングができるから君のタスクシステムが実装できて
Cはそれが無いから君のタスクシステムは実装できない。
ゆえにCは古典的タスクシステムしか実装できない、と・・・
集合論的に穴がありそうで突っ込みたくなるけど、まぁそこはいいか。

>ゲームが干渉できない部分が原因でタスクの前後関係が狂い、再現性がなくなってしまうのでは?といった
>懸念がありました。
やっぱり並列プログラミングの話題っぽいね。
ゲーム系でいえばカプコンの MT Framework あたりならネットでそこそこ情報集められて参考になりそう。


390 :名前は開発中のものです。:2010/01/31(日) 22:28:33 ID:6qSVPUGq
>>378
弾が地形に当たったときの処理として
1. 弾が、地形との衝突を判定して自分で消滅する
2. 地形が、弾との衝突を判定して弾を消滅させる
3. お母さんが、弾と地形との衝突を判定して弾を消滅させる
のうちどれを使うか決めようぜ! ってこと?
3の場合、お母さんが概念的にグローバルな存在になるけど

391 :名前は開発中のものです。:2010/01/31(日) 23:38:16 ID:PJ5c0R9P
>>385
実際に使ってるのをうpして社内の人間にバレたら給料に影響する
下手すりゃクビ。そこまでして説明したく無い

392 :名前は開発中のものです。:2010/02/01(月) 00:40:11 ID:1MBMZKlv
まぁ自分で書いたコードでも仕事で使ったものなら
会社の知的財産だからねぇ

会社によってはCEDECとか論文とかならいいよ、というのはあるだろうが
匿名掲示板にコードだしていいよという会社はさすがにないだろうね・・・

まぁ今さらタスクシステムをCEDECなりで発表する会社もないとは思うが。

393 :名前は開発中のものです。:2010/02/01(月) 00:51:51 ID:UISeaDQt
>>390
ならないよね?
まず、ならないってことに同意してもらわないとその先へ進めないよ

394 :名前は開発中のものです。:2010/02/01(月) 00:52:59 ID:hPvV+L+/
じゃあ、ここで指摘してくれる人は現場の意見ってことでOK?

395 :名前は開発中のものです。:2010/02/01(月) 01:00:54 ID:UISeaDQt
>>394
そんなの誰も証明できないよね?
頭悪いなら2chやめたほうがいいんじゃない?

396 :名前は開発中のものです。:2010/02/01(月) 01:20:11 ID:1MBMZKlv
>>393
なんだか極端にみえるんだけど・・・

C言語の標準出力とかヒープとかはどう考えてるんだろう。
stdoutとかmallocやnewで取るヒープとかはグローバル扱いからは除外?
ANSIで規定されてるからOKとかかな?

397 :名前は開発中のものです。:2010/02/01(月) 01:24:10 ID:ozNWjQIi
>>393
まじで?どうやってお母さんとお話しするの?お手紙?

398 :名前は開発中のものです。:2010/02/01(月) 01:26:24 ID:hPvV+L+/
>>397
全タスクはお母さんを知ってるとか?

399 :名前は開発中のものです。:2010/02/01(月) 01:28:32 ID:UISeaDQt
>>397
ちょっと上のレスすら読まないの?
シーンに持たせるって書いたじゃん
馬鹿にレスつけたくないな
話わからないなら入ってくるなっての

400 :名前は開発中のものです。:2010/02/01(月) 01:33:39 ID:s6RwCqE5
散々アンチをいじり続けて遊んでいた俺が言うのもなんだが
顔も素性も知らん人間にいきなり「タスクシステム作ってテー」「古典タスクシステムでー」
とか言われてもそれは何の理解の補助にも説明の補足にもならんのよな
顔も素性も知らん人間同士ではエターナルフォースブリザードシステムと等価だ


401 :名前は開発中のものです。:2010/02/01(月) 01:38:54 ID:s6RwCqE5
基本的には、喧嘩の調停はお母さんに任せましょう、で丸く収まる

402 :名前は開発中のものです。:2010/02/01(月) 01:43:43 ID:ozNWjQIi
>>398
そのとおり。
>>399
シーンタスクが持つ設計ってダメじゃね? シーンが切り替わるとき
面クリアしたりワープしたりするときに弾はどうなるの?消えるの?
ワープアニメ中に回復アイテム消えたら子供泣くよ?

403 :名前は開発中のものです。:2010/02/01(月) 01:51:18 ID:s6RwCqE5
泣くよね

404 :名前は開発中のものです。:2010/02/01(月) 01:52:47 ID:BehLiNNh
ゲームタスクが持てばいいのかな

405 :名前は開発中のものです。:2010/02/01(月) 01:57:45 ID:1MBMZKlv
個人的には今現在のマップ情報の各種問い合わせぐらいはグローバル関数なり経由しても許容範囲。
特定のシーンでしか使わないイベント情報とか、そーいうのがグローバルなのは許せんけど・・・

そのゲームの固有のシステム、として一貫性があればグローバルでも悪い設計とは思わん。

特定のゲーム用に作ったゲームオブジェのタスクを別のゲームに使うことなんて・・・
現実問題、続編作るときぐらいしかありえないし。


406 :名前は開発中のものです。:2010/02/01(月) 02:02:07 ID:UISeaDQt
>>402
は?お前の中でシーンがどう定義されてるのか知らないけど
シーンの状態の変化レベルの内容で消えられても困る
ワープだってシーンの1状態でしかないだろ
そしたらワープしても弾消えないよな

そもそもお前、会話がおかしい
思い込みが専攻してて他人の話をまともに聞いてない証拠だろ

俺はこの場では弾と地形が存在するクラスをシーンって話の都合上定義しただけで
このときはどうする?このときはどうする?って逐一状態を定義したわけではない
けどお前はかってに自分の中にあるシーンを俺が言ったシーンだと決め付けて
まず、俺にかってに否定意見を押し付けてるけど
正直それはお前が勝手に定義したシーンであって
俺がいったのは弾と地形を包括するもの程度の意味しかもってないんだけど?

それに実際ゲーム作るとなったらシーンは単体再生だけで済むようなゲーム少ないし
ここでその詳しい仕組みまでもってくることないだろ?

話に関係ないから省いたのに無駄なことするよね君
しかも君の指摘した内容いまの話題に関係あるかね?会社でも君みたいな
話題と全然関係ないこと突然言い出す子がいるけどもっと言動考えてしたらどうなの?小学生じゃないんでしょ?

407 :名前は開発中のものです。:2010/02/01(月) 02:07:22 ID:ozNWjQIi
>>406
つまり「シーン」がお母さんね。了解しました。
それなら何の矛盾も齟齬も無いので大丈夫。

408 :名前は開発中のものです。:2010/02/01(月) 02:16:37 ID:UISeaDQt
>>407
ほら、また、勝手に決めた
君のお母さんってのはグローバルじゃないの?
違うじゃない?なんで同じっていうの?
違うって
なんでそうやって勝手に思い込みで話進めるの?

409 :名前は開発中のものです。:2010/02/01(月) 02:33:20 ID:ozNWjQIi
>>408
概念的にグローバルであればよくて、弾や地形がそれぞれ一意の
お母さんポインタを持ってるってことで、実装の話ではないですよ。
弾や地形のお母さんにもお母さんがいたって不思議じゃないし。

410 :名前は開発中のものです。:2010/02/01(月) 02:34:28 ID:ozNWjQIi
あ、説明が足りないかも。ま、いっか

411 :名前は開発中のものです。:2010/02/01(月) 02:35:45 ID:s6RwCqE5
グローバルな存在 ≠ グローバル名前空間

つーことなんでねーの。たぶん

国境を越えて存在するもの。長命インスタンス。
例えばハードウェアリソースの制御・分配を行う低層の色々。
ブート→電源断の間、ずっと生き続ける実行待ちキュー。

412 :名前は開発中のものです。:2010/02/01(月) 02:40:14 ID:s6RwCqE5
かぶったな。
長命インスタンス → 相対的に長命な存在

413 :名前は開発中のものです。:2010/02/01(月) 06:35:15 ID:UISeaDQt
>>409
はぁ?逃げるなよ
自分で決めた言葉もう一度定義しなおしたいなら
せめて前にした定義をどう変更するのか明確にしろよ
勝手に会話の中で都合いいように変化させてんじゃねーよ
しかも違うし
違うだろ?

>弾や地形のお母さんにもお母さんがいたって不思議じゃないし。
なんだよ
グローバルなんだろ?
グローバルのグローバルってなんだよ
全然わけわかんねんだよ!
お前技術者やめろよ

414 :名前は開発中のものです。:2010/02/01(月) 07:09:25 ID:UISeaDQt
仮に彼のいうことを汲んでやったとしても
弾クラスや地形クラスでグローバル的にアクセスできるもんなんてないじゃんw
いつまで自分の世界で話してるんだって思うw

415 :名前は開発中のものです。:2010/02/01(月) 10:19:55 ID:nwK15Q3Z
>>375のコードってどうなの?
メタプログラミングとやらに馴染みがないので、
ものすごく、いや、有り得ないほどにウザく感じるんだが。
率直な感想を聞きたいね。
みんな、あんなのを保守していきたいと思う?

416 :名前は開発中のものです。:2010/02/01(月) 10:36:30 ID:hPvV+L+/
>>415
なにこれ。コード読めません。。。。。何をしてるんでしょうか

417 :名前は開発中のものです。:2010/02/01(月) 15:07:54 ID:HQnFS7op
とりあえず本人による解説待ち

418 :ハードの人:2010/02/01(月) 22:41:56 ID:+pYkEDb4
>>415
てか、こんなことしてるからオナニーとか言われるんだろ。
技術屋ってのは、お山に登っても駄目なんだよ。山を崩すから金になるんだ。
登るべき山と崩すべき山を見定めなきゃ

419 :名前は開発中のものです。:2010/02/01(月) 23:14:31 ID:rIxdeolP
他のタスクの検索するためのDBってどうやって実現すればいい?
multisetに識別子とタスクのポインタを格納すればいいかな。

420 :名前は開発中のものです。:2010/02/01(月) 23:43:47 ID:SNXwDB5T
エンジニアとして破綻してる中年がガキに説教垂れてんぞw
ハード君は素人オジサンだから子供相手にも余裕が無いよね

421 :名前は開発中のものです。:2010/02/01(月) 23:45:37 ID:+pYkEDb4
>>419
もし、ダウンキャストを嫌うのなら、型ごとにリスト持つしかないよ。

422 :名前は開発中のものです。:2010/02/01(月) 23:53:00 ID:rIxdeolP
>>421
あーそうか。

423 :名前は開発中のものです。:2010/02/01(月) 23:54:05 ID:+pYkEDb4
俺まだ若造なんだが。どうでもいいや。
つーか、年寄りは良いよなー。
日本経済の先行きが不安すぎて死ねる。40年持ってくれるだろうか。
あーー高度経済成長期を体験してぇ。

424 :名前は開発中のものです。:2010/02/02(火) 00:05:31 ID:TvvdBrjj
前スレから何度も書かれてることだが
「1タスク = 1オブジェクト」だの「タスク = オブジェクト」といったような
固定観念に縛られた自称タスクシステムは単なるオブジェクトのコントローラだよ

別の言い方をすれば「1タスク = 1オブジェクト」「タスク = オブジェクト」限定で
構わないならばタスク(処理単位)という汎化された概念にスポットライトは当たりようが無いし
意識する必要も無い。ただ単にオブジェクトをタスク言いたいだけちゃうんかとというのが
例えばCodezineのそれ

タスクはあくまでも処理単位、処理ステップ。別に上記の(ゲーム)オブジェクトとは
限らないし型があるとも限らない。何らかの理由でそこにある処理の一塊・切り身であり
機械的に演算器に割り当て流し込む存在でしかない


425 :名前は開発中のものです。:2010/02/02(火) 00:08:19 ID:MKh+klkF
>>424
むずかしくよくわからない。
別に議論したくない


426 :名前は開発中のものです。:2010/02/02(火) 00:13:16 ID:TvvdBrjj
>>424
>>2のLogicianLordとCodezineの差異

427 :名前は開発中のものです。:2010/02/02(火) 00:18:45 ID:b//H5lcG
弾幕ものとかって、弾をグループで管理したりとかする?

428 :名前は開発中のものです。:2010/02/02(火) 00:29:42 ID:TvvdBrjj
>>427
case1) an entity is treated by a task
case2) an entity is treated by multiple tasks
case3) a task treats multiple entities

case3 は普通にある


429 :名前は開発中のものです。:2010/02/02(火) 00:38:39 ID:TvvdBrjj
すまん処理じゃなくて管理か


・敵を倒したらその敵の撒いた弾も消滅するケース
・多段式誘導弾、MIRV弾頭、散弾、同時消滅あり

皆親子

430 :名前は開発中のものです。:2010/02/02(火) 00:42:56 ID:TvvdBrjj
あとハード君はタスクシステム云々以前に
さっさとゲーム作れるようになりなさい

431 :名前は開発中のものです。:2010/02/02(火) 00:43:21 ID:MKh+klkF
親子関係はいらないと思ってきた。自弾だったら自機知ってるし。

432 :名前は開発中のものです。:2010/02/02(火) 00:53:37 ID:A9NMST/q
反対に自機は自弾のことを知っているべきか

433 :名前は開発中のものです。:2010/02/02(火) 01:24:32 ID:j3kKEgDi
>>431
それも親子だろ。子→親の片方向の接続情報というだけの話。
親の認知がないと法的には親子とは認められない(怒)とか
そういう眠たいお話になるなら退散するが

434 :名前は開発中のものです。:2010/02/02(火) 01:29:58 ID:MKh+klkF
>>433
いや、タスクシステム自体には必要ないという意味で。。。

435 :ハ(ry:2010/02/02(火) 01:34:02 ID:iDWjAt2l
自機も自弾もデータだろ。
データに知ってるも糞もあるかよ。
データはデータ。そこに転がってるだけの単なるメモリブロック以上の解釈は必要ないだろ。
データに命を吹き込むのが制御構造、つまりプログラムなわけで、
プログラム中の自機と自弾を制御している箇所にそれぞれの在り処が分かればそれでよい。

自弾に自機のポインタを突っ込むことはあるだろうが、
それはそれらを処理するプログラム(関数)から、どの弾がどの機体のものか判別できるように、
便宜上突っ込んだってだけで、単に「そう実装した」っていう以上の意味は無い。手抜き実装。
別に別途、機体と弾の紐付けを管理するテーブルを用意したとしても、それはそれでかまわないわけで。
プログラムが自弾と自機のことを知ることが出来ればなんでも良い。

つまり、自機と自弾を知っているべき者はプログラムで、
自弾も自機も各々を知っている必要は無い。

436 :名前は開発中のものです。:2010/02/02(火) 01:37:00 ID:zzoDV2n3
俺の場合自弾は自機から離れた瞬間自機とは赤の他人としてたわ

437 :名前は開発中のものです。:2010/02/02(火) 13:36:47 ID:TD3K/R3K
自称ハード屋って相当に頭がコチコチのオッサンだよね
恥ずかしいから出てくるなよ

438 :名前は開発中のものです。:2010/02/02(火) 13:54:24 ID:mL4O4dAS
ここってメモリ管理とか処理の流れの受け渡しとかオーバーヘッドの話をするところじゃないの?
と思ってたけどただの基地外隔離スレだったのか。

439 :名前は開発中のものです。:2010/02/02(火) 14:13:33 ID:TD3K/R3K
メモリ管理?タスクコントローラが内包するのか?
関係なくね?

440 :名前は開発中のものです。:2010/02/02(火) 14:22:46 ID:jC7RnYPZ
別々にしときゃあいいもの一緒にしてしまうのはいつでも糞仕様。
曖昧な名前しか付かない単位でやりくりするのはいつでも糞仕様。

441 :名前は開発中のものです。:2010/02/02(火) 15:20:03 ID:TD3K/R3K
>>435を何度も読み返してみたがやはりこの人は本当にヤバイな
さすがOOPを否定する超人だけあって凡人には理解できない

442 :名前は開発中のものです。:2010/02/02(火) 16:26:13 ID:zzoDV2n3
誤爆してんじゃねえよwww

443 :名前は開発中のものです。:2010/02/02(火) 18:55:31 ID:bErugn9a
ハード屋さんって上のほうでオブジェクト指向を否定してた
凄腕のアンチさんでしょ。どう見ても彼は引数君クラスだね

444 :名前は開発中のものです。:2010/02/02(火) 19:29:20 ID:bErugn9a
>>436
>俺の場合自弾は自機から離れた瞬間自機とは赤の他人としてたわ

え?赤の他人って具体的にどういう状態なのそれ?
いくらなんでも弾の出自・所属を知る手段がないなんて話じゃないよね?


445 :名前は開発中のものです。:2010/02/02(火) 20:04:09 ID:jC7RnYPZ
なんかスレの血色が良くなってきたなw

>>442
     ____
    /∵∴∵∴\
   /∵∴∵∴∵∴\
  /∵∴∴,(・)(・)∴|
  |∵∵/   ○ \|
  |∵ /  三 | 三 |  / ̄ ̄ ̄ ̄ ̄
  |∵ |   __|__  | < うるせー馬鹿!
   \|   \_/ /  \_____
      \____/  

446 :名前は開発中のものです。:2010/02/02(火) 20:05:13 ID:zzoDV2n3
自機が弾吐き出す時自弾リストに追加して自機とは親子関係もないってこと
自弾リストが出自・所属の代わりになるのかな

447 :名前は開発中のものです。:2010/02/02(火) 20:24:48 ID:bErugn9a
だよな
そのリストの全要素は出自・所属がコード上で決定してるから
各要素が出自・所属情報を持つ必要が無いというだけの話で
コード上では親子として扱われてる

448 :名前は開発中のものです。:2010/02/02(火) 20:52:49 ID:rRkqKnAN
は?なんで?

449 :名前は開発中のものです。:2010/02/02(火) 21:15:54 ID:bErugn9a
ん?あー、すまん。>>447の「だよな」は>>446の2行目にかかってんだわ

>>447続き
だから親子関係も糞もないという話にはならねーだろっつーこと。
例えばツリー状コンテナ(内部収納でも外部収納でも可)内の配置で
(動的な)親子関係を表現されてなくとも、コード上で記述された
(静的な)親子関係というものがそこにはあるでしょと

450 :名前は開発中のものです。:2010/02/02(火) 22:47:32 ID:b//H5lcG
>>429
ありがとう。
でも、グループで管理されてる弾は、ひとつひとつは単発の弾として扱いたいので
普通の弾クラスを継承して、グループ管理者への参照を持つ弾とするのかな。
いいのかなこういうの。

ていうか、弾ごときにクラスとか作ったりするのって普通?
何が普通かももうわからんくなってきた

451 :名前は開発中のものです。:2010/02/02(火) 23:21:35 ID:rRkqKnAN
>>449
は?なにをいっているのか本当にわからない

452 :名前は開発中のものです。:2010/02/02(火) 23:30:21 ID:PKtd/uOj
まーたゴキブリアンチがわかんないわかんないって喚いてんのか
付ける薬ねーな

453 :名前は開発中のものです。:2010/02/02(火) 23:33:54 ID:PKtd/uOj
わりー。>>450のことじゃないから気にしないでくれ

>>450
それでいいんじゃね?

454 :名前は開発中のものです。:2010/02/02(火) 23:35:18 ID:rRkqKnAN
はぁ?どうせ初心者が意味不明なコード組んでるんだろ?
弾の発射にどうやったら自機と弾とで親子関係なんてできんだよ
マジで意味不明w

ためしに聞いてみるけど
自機からシーンの弾発射クラスに弾発射のリクエストもらうような実装だと
親子関係ってできるの?これだとできない?
それともこの実装でもできることなの?

455 :名前は開発中のものです。:2010/02/02(火) 23:43:27 ID:PKtd/uOj
>>454
>出自・所属

とやらが表現されてるって>>446は言ってんだろ?
出自・所属とやらが表現されてて親子関係も糞ねーってどんな状況だよ
論理的におかしいだろ。おかしくねーってんなら説明してみ?

456 :名前は開発中のものです。:2010/02/02(火) 23:57:10 ID:rRkqKnAN
>>455
コードの親子関係はあるってどういう意味なん?

457 :名前は開発中のものです。:2010/02/02(火) 23:58:53 ID:TvvdBrjj
出自・所属 → どこ中

458 :名前は開発中のものです。:2010/02/03(水) 00:01:09 ID:TvvdBrjj
データ構造内で親子関係が表現されてるか
ロジックの中で親子関係が表現されてるか
というだけのような


459 :名前は開発中のものです。:2010/02/03(水) 00:03:10 ID:rRkqKnAN
>>458
いや親子関係なんてまったくねーの
まったくねーのにあるとか言い出してる人がいるから
なんで?って聞いてるのがいまの俺の状況
なんでもインスタンスのことじゃなくてコード(?)のことらしい

460 :名前は開発中のものです。:2010/02/03(水) 00:07:25 ID:U22bVF1z
> いや親子関係なんてまったくねーの

ID:rRkqKnAN

この人誰?ID:zzoDV2n3と同一人物なの?怖い

461 :ハ(ry:2010/02/03(水) 00:08:58 ID:bEP4Y/OF
だからお前ら親子親子って、いったい何の親子だよ。
生存期間の親子か?座標系の親子か?何かの設定値の親子か?更新順序の親子関係か?
なんなんだよ。
第一いろんな親子関係が発生しうるのに、一緒くたにタスクシステムで管理する理屈はねぇんだよ。
理由がねぇ。初めからスレ違い。
それとも何か?親子関係基底クラスでも作って、多重継承するおつもりですか?
そもそもからして、タスクシステムは制御構造を管理するためのものだから、
データ構造まで足伸ばすと破綻するんだ。
もとより関係ないものを必要も無いのにくっ付けんなよなー。可搬性ってしらないのかよ。

462 :名前は開発中のものです。:2010/02/03(水) 00:14:03 ID:U22bVF1z
バカはすっこんでろ

463 :名前は開発中のものです。:2010/02/03(水) 00:15:41 ID:bEP4Y/OF
なんかもめてるようだが、
ゲームの仕様上に親子関係があるなら、そりゃプログラム的には親子関係はあるわな。
それともあれか?プレイヤーに「この弾を撃ったあいつに報復してやるぜ」って
勝手に親子関係を見出してもらう類の話をしているのか?
そう言うのは因縁って言うんだ。

464 :名前は開発中のものです。:2010/02/03(水) 00:23:42 ID:v+VjAJDV
話に乗っかるけど、因縁の管理ってどうやってやるんだろうね。
ホーミング弾とかって基本的に自機なり敵なりの座標を把握してるわけだけど
因縁変数として敵機のポインタを持っちゃうと、処理上まずいよね?
こういうときはどうするのがふつくしいんだろうか

465 :名前は開発中のものです。:2010/02/03(水) 00:24:51 ID:gGt1YOQG
俺は自機と自弾の間には親子関係ないってつもりで言ったんだがな
俺の言う親子関係とは例えば敵の吐き出す弾はその吐き出し元の敵を壊せば皆消滅する
この場合敵を親、その弾を子と見て、更新関数呼び出す場合は親の更新関数中で子群の更新関数を呼び出せばいいんじゃないかな
それとは違い自機と自弾はそういう関係がないから並列に処理すればいいと思うのだが

466 :名前は開発中のものです。:2010/02/03(水) 00:37:02 ID:bEP4Y/OF
>>464
それは俺の言ってる因縁とは意味が違うんだが・・・
ホーミング弾の場合はターゲットを追いかけるって仕様がはっきりしてる。
当然プログラム中にもそう言うコードが含まれてる。
俺の言ってる因縁は、コード上どこにもそんな関係は示してないのに、
プレイヤーが勝手に関係あると思い込んで因縁つけるという。
たとえば、「コンテニューどっかでカウントしてて密かに成績に響いてるんじゃねぇだろうな」とか。
そう言う風に匂わす作りは大切だと思うけど。

>>465
生存期間の親子関係以外は親子関係とは言わないと?
初めから、「親子関係は要らない」とは言わず、「生存期間に依存は要らない」
と書けばよかったものを。

467 :名前は開発中のものです。:2010/02/03(水) 00:37:05 ID:U22bVF1z
>>465
弾が敵性オブジェクトと衝突しそれを破壊したら
誰の得点を加算するのかどうやって知るんだい?

母機が誰なのかを知る術が必ずあるはずだろう
データ構造なりロジック中でハードコードされてるなり

468 :名前は開発中のものです。:2010/02/03(水) 00:39:39 ID:U22bVF1z
お、ハード君、今日は冴えてるじゃないか
何か悪いものでも食ったか?

469 :名前は開発中のものです。:2010/02/03(水) 00:42:58 ID:gGt1YOQG
その自機なり自弾なり敵なり敵弾なりを操ってる大元のクラスが知ればいいんじゃねーの

470 :名前は開発中のものです。:2010/02/03(水) 00:45:50 ID:bEP4Y/OF
>>467
残念ながら、それを親子関係と呼ぶかどうかは、ID:gGt1YOQG が決めるとこ。
ID:gGt1YOQG の仕様書では、生存期間の依存のみを親子関係と表記するらしいから、
これはもう仕方が無い。
一般的には親子関係というと木構造を指すことが多いのだが、
本人が「親子関係ではなく、ただの木構造です」と言いはりゃそれまでだわな。

471 :名前は開発中のものです。:2010/02/03(水) 00:46:01 ID:nZwcqGzl
>>447が1人で馬鹿なだけだろ

472 :名前は開発中のものです。:2010/02/03(水) 01:13:22 ID:U22bVF1z
>>469
「自」機と「自」弾リストがある。コンテナ(の要素)の所属があるということ。
それが要素の所属であり、その大元のクラスとやらのメンバ関数の中の
ロジック中でそういうものとして取り扱われてるんでしょ?
所属があるということは何らかのヒエラルキーがありその中の位置関係が
あるってこと

これを親子関係も糞もない赤の他人だという主張は非論理的に見えるが

473 :名前は開発中のものです。:2010/02/03(水) 01:15:29 ID:U22bVF1z
× それが要素の所属であり、その大元のクラスとやらのメンバ関数の中の
○ 君の言うその大元のクラスとやらのメンバ関数の中の

474 :名前は開発中のものです。:2010/02/03(水) 01:16:18 ID:U22bVF1z
あとよ、ID:rRkqKnAN って誰なの?

475 :名前は開発中のものです。:2010/02/03(水) 01:19:05 ID:gGt1YOQG
それなら親子関係というより兄弟関係といったほうがいいんじゃね

476 :名前は開発中のものです。:2010/02/03(水) 01:23:32 ID:U22bVF1z
>>475
自弾とは「自機の弾」なのだろう?

477 :名前は開発中のものです。:2010/02/03(水) 01:34:22 ID:bEP4Y/OF
>>475
親子関係の仕様を満たすために、兄弟関係の実装を使ったってんなら、
それは親子関係を表現したといえる。逆もまたしかり。
結局、仕様上はどうなってるのかってだけ。仕様を作った奴がどう言い張るのか。そんなもんは知らん。

>>476
自機の弾を子供と見なすかどうかなんて、仕様書書いた本人にしか分からん。
子供ではなくて、単に自機の打った弾のグループです、と言われればそれまで。

478 :名前は開発中のものです。:2010/02/03(水) 01:45:14 ID:tVURMSFQ
自弾も敵弾も敵も一緒くたにリストなり配列なりに入ってる場合はどうなんだろう?
例えば画面外から謎の隕石が飛んできてそれにあたると自機も敵機も死ぬゲームで
自弾もその隕石と同じように処理されてるとしたら
>>469の作ったものは寛容に捉えればそういうものだったんじゃないかと推測するんだが

479 :ID:bErugn9a:2010/02/03(水) 01:54:05 ID:vgI8VqRc
>>465
>俺の言う親子関係とは例えば敵の吐き出す弾はその吐き出し元の敵を壊せば皆消滅する
>この場合敵を親、その弾を子と見て、更新関数呼び出す場合は親の更新関数中で子群の更新関数を呼び出せばいいんじゃないかな
>それとは違い自機と自弾はそういう関係がないから並列に処理すればいいと思うのだが

君の親子関係の定義ってかなり独特というか狭すぎる気がするな
兄弟ってのも何をもって兄弟なんだっつー。赤の他人との閾値は何みたいな

480 :名前は開発中のものです。:2010/02/03(水) 02:12:17 ID:gGt1YOQG
親子関係って生成元と生成先ってだけの関係だったのか
それならすまんかった

481 :名前は開発中のものです。:2010/02/03(水) 02:20:57 ID:2WIvJqEh
タスクシステムにどこまで機能を入れ込むかはそのゲームでの使われ方次第だな・・・

極限までシンプルに、その機能使うタスクだけ別途組込み、という原理主義的な戦略は一見常に正しそうなんだが
実際には全体の8割のタスクが親子関係使ってる、とかのケースなら
タスクシステム自体に親子関係の処理を入れた方が全体では綺麗なコードになる。

全体の一割以下のタスクしか使わない機能をタスクシステムの根幹に組み込む、
とかは肥大化したダメな設計の典型だけど。

要はケースバイケースという当たり前の話。
全てのケースを満たす唯一の最適解という銀の弾丸は無いってことだね。

482 :名前は開発中のものです。:2010/02/03(水) 02:26:54 ID:WfpwjXA3
>>481
ケースバイケースが当たり前なのに、なんで「タスクシステム」と呼ばれるものの存在だけは
前提になってるの?

483 :名前は開発中のものです。:2010/02/03(水) 02:28:17 ID:U22bVF1z
>>478
それはおそらく複数の侵入式コンテナに格納されてるオブジェクトだろうな。
複数のコンテナのパラメータがオブジェクトのメンバ変数として侵入してる。
例えばその「ごった煮」リストであったり、木構造であったり。片方向かもだが

484 :名前は開発中のものです。:2010/02/03(水) 02:35:20 ID:2WIvJqEh
>>482
使った場合の前提でしょ。当たり前すぎの話だからあえて書く必要無いと思ったんだけど。
タスクシステム以外の方がいいケースなら別の方法採用するのは当たり前。

逆にこんなこと聞いてくる方が疑問。
何で目的に対して手段は一つだけ、と考えちゃうんだろう・・・?

485 :名前は開発中のものです。:2010/02/03(水) 02:44:27 ID:WfpwjXA3
>>484
ふーん。当たり前の話と当たり前すぎの話で書くか書かないか切り分けたんだね。
よくわかんないけど、後ろについてる「疑問」もさっぱり脈絡がわかんないけど、まぁいいや。

486 :名前は開発中のものです。:2010/02/03(水) 02:52:48 ID:ugBdhh7W
>>484
ゆとり教育の弊害じゃね?
ゆとりの学校では一個の問題に一個の答えしか教わらないもんだから
どんな問題でも答えは一つしかないと信じてるんだよ。きっとww
アンチの頭はみんなこんな感じ。
「タスクシステムは唯一の答えじゃない!だからまったく使えない!」ってww

487 :ID:bErugn9a:2010/02/03(水) 03:05:03 ID:vgI8VqRc
>>480
自機と自弾の場合、生成先と生成元という関係に終わらないよ
生成後にも自弾と自機には関連性がしっかりとある。
例えば自弾が敵をぶっ壊したら誰がポインヨゲトするのか、とか

自弾のこの状態変化(敵撃破&消滅)によってポインヨ情報更新処理が
発動する唯一の存在が自機。自弾を所有し放った存在

488 :ID:bErugn9a:2010/02/03(水) 03:06:17 ID:vgI8VqRc
生成先と生成元じゃなくて生成元と生成先かな

489 :名前は開発中のものです。:2010/02/03(水) 03:16:38 ID:gGt1YOQG
そもそもポインヨ管理自機がするのか
俺の場合自機関係せずゲームクラスでやるがなあ
自機はポインヨノー関与よ
態々自機と自弾関連性持たせる必要あるのか
俺のやり方だと自機と自弾は全くの独立した存在

490 :ID:bErugn9a:2010/02/03(水) 03:21:50 ID:vgI8VqRc
ところでゆとり脳の>>448>>451は死んだのかな?

491 :ID:bErugn9a:2010/02/03(水) 04:20:55 ID:vgI8VqRc
>>489
それ自機に関するパラメータ・処理の置き場所がコード上で
複数箇所に分かれてる(構造体・クラスが違う)というだけで
自弾の状態変化が自機に関するパラメータ・処理にしっかり
作用してるでしょ

例えば自機についてのオブジェクトAとBがあり異なるコンテナ・
オブジェクトに格納され、AとBは相互に作用がないが両者とも
自機についての情報を格納してる。それだけ

492 :名前は開発中のものです。:2010/02/03(水) 04:55:48 ID:gGt1YOQG
ポインヨ=自機に関するパラメータなのかな
俺はそう捉えてないから違うのかな
俺の場合スコア=ゲームの所有物だから
スコア=自機の所有物という捉え方の違いじゃないのか

493 :名前は開発中のものです。:2010/02/03(水) 09:42:21 ID:jwvwywkY
俺も結局はgGt1YOQGみたいにする。
親子関係なんてどこにもでてこない。
自機と弾はフラットな関係。
それでなーんも問題ない。
相互作用は相互作用として別途用意する。

弾や機体がある使われ方を想定したような設計にしはしない。
何か用のポインタを想定しただけ用意しておくようなことはしない。
弾は弾、機体は機体として自分の内側だけを見とく。

494 :名前は開発中のものです。:2010/02/03(水) 10:23:12 ID:U22bVF1z
オブジェクト間の直接通信を避けて例えば調停者(mediator?)が
オブジェクト間の通信(作用)を仲介しているということならば
実装上の結合度は下がるもののオブジェクト間の関係が
解消されアカの他人になるわけじゃない。調停者がオブジェクトの
関係を承知している。処理フロー、データフローは調停者を
介して繋がっている

それが兄弟なのか親子なのかというのは俺の知ったこっちゃないが

495 :名前は開発中のものです。:2010/02/03(水) 10:59:01 ID:AvbpB89G
mediator,obsererパターンもポインタ相手のもってるだけじゃn

496 :名前は開発中のものです。:2010/02/03(水) 11:30:42 ID:Dz8aJXdc
>>493
各オブジェクトは他オブジェクトの情報を直接持たず、
調停者が全て通知したり制御するってこと?
グラディウスのレーザーとかオプションみたいなものだと
レーザーやオプションに自機の位置を伝えるのは調停者?

497 :名前は開発中のものです。:2010/02/03(水) 21:54:47 ID:nZwcqGzl
誰だよw
親子関係とか言ってたクズw

498 :名前は開発中のものです。:2010/02/03(水) 22:47:24 ID:QhQqVfSI
で、解決したのでしょうか?

499 :名前は開発中のものです。:2010/02/03(水) 23:23:34 ID:9IuFtIPR
まーた似非平等主義者のお花畑アンチが「私は不当な差別を受けてる」
「差別反対!階級社会断固粉砕!」とか喚いてると聞いて飛んできました

>>497
『あなたと私はフラットな関係です。私を見下さないで下さい(怒)』
ですね。わかります


500 :名前は開発中のものです。:2010/02/04(木) 00:20:19 ID:BYcM6SUP
こう言っちゃ怒られそうだけど言い争ってるの全員糖質っぽく見えるぞ
煽りの内容ももはやタスクシステム関係無いじゃん

501 :名前は開発中のものです。:2010/02/04(木) 01:24:38 ID:8Fl7u3Rw
「別にアンタ(自機)のために往くんじゃないから。勘違いしないで」 
「これで私も一人前の飛翔体だから。半人前扱いしないで」
「もう行くから。金輪際アンタと私は赤の他人だから。バイバイ」
自弾はそう言い残し敵に体当たりして名誉の戦死を遂げ
遺族への報償金は自機の銀行口座にふり込まれた



ここまで読んだ

502 :ID:bErugn9a:2010/02/04(木) 01:55:43 ID:KMqiOHV1
>>501
いや「自機の銀行口座」ではない
自機の上位の存在、世界の創造主、調停者、神、ゲームクラスが“管理”する銀行口座だ
というのが>>489

それはつまり神が“管理”する自機の銀行口座 ということだろ、というのが俺。>>491
自機というのは別に1Pで置換しても可。銀行口座は積立口座で置換しても可。

1P・2P協力プレー可能な縦STGなら神は複数の積立口座を“管理”するんだろ。
誰の積立口座なのかを識別する情報が必ずそこにある。1Pの口座、2Pの口座。
1Pに関する情報、2Pに関する情報。

503 :名前は開発中のものです。:2010/02/04(木) 09:33:26 ID:umXdUc81
>>500
ヒント:このスレはヲチされておりますw

504 :ハry:2010/02/04(木) 21:42:38 ID:SJJT8x69
お前ら少なくともタスクシステムの話しろって。親子関係とかマジどうでも良すぎる。
お前ら本当は頭悪いだろ。俺もそんなに良い方じゃないのに、お前らどうするの?
俺が情報系の学科選んだのも、他学科よりも合格偏差値が低かったからだしなぁ。
おっと、自己紹介はここまで。
さっきから自己紹介の粋を出て無い会話が永遠と続いているから
俺もつい自己紹介したくなった。

505 :名前は開発中のものです。:2010/02/04(木) 21:47:40 ID:YTrJV+xt
http://d.hatena.ne.jp/yaneurao/20090203

これ読みづらくて意味わかんない。。。

506 :名前は開発中のものです。:2010/02/04(木) 21:50:28 ID:SJJT8x69
はたから見てて、何をもめてるのかさっぱり意味不明なんだが。
ESPの範囲外。道端の石ころにさえ気を配る俺を置いてけぼりにするとは、
なかなかやるなー。頭痛が痛いから珍しく放置に放って置く。

507 :名前は開発中のものです。:2010/02/04(木) 21:59:39 ID:SJJT8x69
>>505
意味の無いものに意味を見出すためには、
頭を強打するか、悪い薬でもする必要がある。

508 :名前は開発中のものです。:2010/02/04(木) 22:01:41 ID:bJyIuZOF
>>505
読み辛いか?
確かにC++の文法(特にtemplate周り)や型操作、
現代の一般的なコンピュータのアーキテクチャ(メモリの動的な確保のコスト、マルチスレッドや実行の並行性)
に関する知識がないと分からないと思うが
それらは今一般的なコンピュータ上で製作時及び実行時に効率良く動くプログラムを作る上で必須。
使えるものを最大限に利用して徒労を回避するのは当たり前の思考だし、
低レイヤーな部分を記述できるC++でそれを実装しようという試みも間違ってない。

509 :名前は開発中のものです。:2010/02/04(木) 22:08:28 ID:wLvdZIgG
>>508
PG脳だな
相手の望むものを意図的にズラして自分の有利なように話ししてるだけじゃん
お前>>505の問題を解決するようなレスじゃねーし
>>508の内容がすべていいわけを敷き詰めて「リンク先は間違ってねぇ!」っていいはってるけど
実際読みづらいと感じた人間にそんなレス付けて君は一体どうしたいのかね?w

510 :名前は開発中のものです。:2010/02/04(木) 22:12:28 ID:bJyIuZOF
うん、分からない言葉が出てきたらぐぐろうね。

511 :名前は開発中のものです。:2010/02/04(木) 22:13:47 ID:SJJT8x69
>>508
本を本棚に置くために必要な時間は、何回か反復すれば、すぐに見積もれるようになる。
しかし、本棚の整理整頓術は、なかなか身につかないものなんだよ。
特に間違ったOOPやデータ構造主体で物を考えてるうちは。
プログラムの主体はあくまで制御構造であるということや、
モジュールは機能ごとに構築するのが基本だという、
そこいらへんね。理解しなきゃどつぼにはまる。

512 :名前は開発中のものです。:2010/02/04(木) 22:16:58 ID:SJJT8x69
ホワイトノイズに音楽性を見出せといわれてもなぁ。
スピーカー(話し手)の歪を測定するのには最適だが。

513 :名前は開発中のものです。:2010/02/04(木) 22:24:52 ID:bJyIuZOF
これがホワイトノイズだと思うのは単に理解が足りないだけだよ。
俺の書いてる事にタスクシステムに対する生産性はないからやねうらおの記事をわかるまで読んでみるといい。
古典タスクシステムでネックになっていた特定のタスクへのアクセスが
メモリに最適なリニアサーチ、実行時間に最適なハッシュによる検索、古典ではこれ以上できなかった両者のアルゴリズムよりも
有利な実装ができる。
そういう探求が記してあるだけなのに何をそんなに攻撃的になっているんだ?

514 :ID:SJJT8x69 あくきん:2010/02/04(木) 22:41:12 ID:eaHxFLwl
>>513
そんなもんは普通の脳みそ持ってる奴だったら半年、
遅い奴でも3年ありゃ習得できんだよ。
足下ら先にもう一歩踏み出せるかが重要なんだ。
大体お前、検索が遅いなら事前にインデックス作っとくとか、そんなの当たり前すぎるだろ。
何をいまさら。
型ごとに列挙したいなら、型ごとにリストつくっときゃいいじゃん。
Type値ごとに列挙したいなら、Type値ごとにリストつくっときゃいいじゃん。
配列の空きIndexを高速に見つけたいなら、空きIndexリストつくっときゃいいじゃん。
3分で思いつくことだろー

515 :名前は開発中のものです。:2010/02/04(木) 23:06:50 ID:wLvdZIgG
>>514
同意
まったく無駄だよね

しかもこんなくだらんことわけわからん単語使わなきゃ説明できないとか
自分を過大評価しすぎだろw
酔ってる自分をみる他人の目とかちょっと考えれば恥かしくて表でれないレベル

516 :名前は開発中のものです。:2010/02/04(木) 23:31:53 ID:GbnLg6h5
典型的な>>3の論理でワロタw

517 :名前は開発中のものです。:2010/02/04(木) 23:38:59 ID:H9tFotfP
boost::unordered_map<type_info*,std::list<Task*> > tasksList;

struct PseudoIterator
{
std::list<Task*> container;
std::list<Task*>::iterator iterator;

void erase() { container.erase(iterator); }
};
boost::unordered_map<Task*,PseudoIterator> taskToIterator;



んー

518 :名前は開発中のものです。:2010/02/04(木) 23:42:26 ID:RNNw5Qiv
PCエロゲワールドの貴公子であらせられる自称高額納税者のアレは
リソース制限の緩々な微温湯プラットフォームの小山の大将なんだからさ
彼がタスクシステム云々なんて話を始めるときは眉に唾をたっぷり付けて
聞いとき

519 :名前は開発中のものです。:2010/02/04(木) 23:51:30 ID:TO/fep7E
大手でプログラマやってるけどコンシューマ機でboostやtemplate使うチームは間違いなく大量のバグを生産してる

520 :名前は開発中のものです。:2010/02/04(木) 23:53:44 ID:RNNw5Qiv
Codezineの記事(出た当初からSTGスレで散々に言われてた)を参考として
リンクしてる辺りであのPCエロゲ屋の理解のほどを察してやれよ

ゲームオブジェクト(エンティティ)を格納したコンテナとその操作についての
お話に終始しておきながら、これタスクの話です近代的なタスクのシステム
なんですね、などと得意げにどや顔するPCエロゲ屋の姿を想像してごらん
なかなかハートウォーミングだろう

521 :名前は開発中のものです。:2010/02/05(金) 00:15:39 ID:R2LkfXR4
>>519
boost::spiritでも使ったのか?w

522 :名前は開発中のものです。:2010/02/05(金) 00:25:43 ID:rcLEhboZ
wをつけてこの程度

523 :名前は開発中のものです。:2010/02/05(金) 00:44:56 ID:E+eP97Dg
俺が泥沼にハマったのはboostとtemplateのせい。俺は悪くない



まで読んだ

524 :名前は開発中のものです。:2010/02/05(金) 00:47:20 ID:rcLEhboZ
また文盲が来た

525 :名前は開発中のものです。:2010/02/05(金) 01:08:24 ID:E1XcL7Rh
やねはコード書いて主張してる分だけ俺らよりはマシだけどな
粗悪なコードから学べる事だってたくさんあると考えれば
余談だが彼の叩かれっぷりを見てるとネットにソース公開
するのをいつも躊躇ってしまうw
その辺のジメジメした日本のネット事情は好かんな

526 :名前は開発中のものです。:2010/02/05(金) 03:31:58 ID:z61zW9dx
コード書いてるぶん批判しやすいのかもしれない。

まぁ書かれてあるコードがどうあれ、
変な例え話だけよりもコード書いてあったほうがうれしいですよね。

527 :名前は開発中のものです。:2010/02/05(金) 19:41:46 ID:1Uvqe3cJ
データベースのインデックスみたいなのってどうやって実現するのでしょうか
タスクループごとに再構築しなおすの?

528 :名前は開発中のものです。:2010/02/05(金) 20:15:37 ID:pZFWXanD
何を想定してるのかわからない
まずはお前のタスクシステムを説明しろ

529 :名前は開発中のものです。:2010/02/05(金) 20:41:27 ID:C7mEESsV
このタスクシステムとやらの何が凄いのかサッパリ分からん。
少なくとも、>>2に書いてあるような奴の事を言うなら、システムっていうよりは、ただのプログラム上のお作法とかセオリーの部類じゃないのか。

530 :名前は開発中のものです。:2010/02/05(金) 23:12:58 ID:ADi/zHvo
>>528
>>2の古典なタスクシステムで、型を指定してタスクを取得したい場合

531 :名前は開発中のものです。:2010/02/05(金) 23:48:34 ID:pZFWXanD
>>530
はじめからわけときゃいいじゃん

532 :名前は開発中のものです。:2010/02/05(金) 23:59:14 ID:muF0CXYE
まるでセオリーがすごくないみたいな

533 :名前は開発中のものです。:2010/02/06(土) 00:04:05 ID:E8xqra+P
一言で>>2つってもリンク先によって中身だいぶ違うけどな

534 :名前は開発中のものです。:2010/02/06(土) 00:51:40 ID:nCDaYUMn
>>531
同期取るの大変じゃない?

535 :名前は開発中のものです。:2010/02/06(土) 00:52:35 ID:tZakNLHk
>>534
いきなり同期とか意味不明すぎて反応できないぜw
あったま悪いからそんなレスしちゃうんだぜ

536 :名前は開発中のものです。:2010/02/06(土) 01:14:57 ID:nCDaYUMn
>>535
ああ、ごめんなさい。頭悪いのは認めるよ。

537 :名前は開発中のものです。:2010/02/06(土) 01:32:17 ID:ajoGIZRs
必要以上に攻撃的なのはなんなんだwww
デスマ真っ只中でイラついてるとかか?

538 :ハry:2010/02/06(土) 02:40:25 ID:1tXKnkh3
単になれなれしいだけだろう。お互い頭悪いことは分かりきってるし。
頭悪い奴が分別のつかない奴を叩いてる、そんなスレッド。ちょっと変わった愛情表現。

539 :名前は開発中のものです。:2010/02/06(土) 04:06:28 ID:8uFKuDe8
芸は身をタスク

540 :名前は開発中のものです。:2010/02/08(月) 01:02:07 ID:zDF3T9r4
>>529
このタスクシステムとやらの何が凄いのかっていうと
名前だけで「もしかして凄いものかもしれない」と勘違いさせるのには
最高の撒き餌になるってことだろうな。現にお前みたいな慌てん坊さんが
ホイホイ釣られてやって来るわけだから

541 :名前は開発中のものです。:2010/02/08(月) 01:18:14 ID:zDF3T9r4
昨夏にも張ったような気がするが

          _Y_
            r'。∧。y.
         ゝ∨ノ     バカがタスクシステムに        ,,,ィf...,,,__
          )~~(            幻惑されてる間に    _,,.∠/゙`'''t-nヾ ̄"'''=ー-.....,,,
         ,i   i,                        ,z'"    ̄ ̄ /n゙゙''''ー--...
         ,i>   <i     文明はどんどん発達し    r”^ヽ      く:::::|::|:::〔〕〔〕
         i>   <i.     ていく・・・・・・。      入_,..ノ ℃      ̄U ̄_二ニ=
`=.,,ー- ...,,,__ |,r'''"7ヽ、|  __,,,... -ー,,.='               >ーz-,,,...--,‐,‐;;:'''""~
  ~''':x.,,  ~"|{ G ゝG }|"~  ,,z:''"                     ___
      ~"'=| ゝ、.3 _ノ |=''"~      <ー<>         /  l ̄ ̄\
        .|))    ((|        / ̄ ゙̄i;:、      「 ̄ ̄ ̄ ̄| ̄| ̄ ̄ ̄\
             ))|       r'´ ̄「中] ̄`ヾv、   `-◎──────◎一'
                   ├―┤=├―┤ |li:,
                   |「 ̄ |i ̄i|「.//||「ln|:;
                   ||//__|L_」||__.||l」u|:;
                   |ニ⊃|  |⊂ニ| || ,|/
                   |_. └ー┘ ._| ||/
                   ヘ 「 ̄ ̄ ̄| /

542 :名前は開発中のものです。:2010/02/08(月) 02:24:25 ID:v1ov3My8
なんか"タスクシステム"を"ポインタ"に置き換えても成り立ちそうだな、このスレ。
JAVAとかC#とかしか知らない若い子がCのポインタが何なのか理解できないのと同じ臭いがする。

古株にとっては「プログラマでポインタ理解できないなんてゆとり」という感覚なんだろうけど。
「ポインタなんて年寄りの戯言、何のメリットがあるのかわかりませーん」という世代とのギャップが埋められず。

543 :名前は開発中のものです。:2010/02/08(月) 02:34:40 ID:vyr3UvLe
まったく違う
>>3をポインタに変えたら話が成立しない

544 :名前は開発中のものです。:2010/02/08(月) 02:45:34 ID:v1ov3My8
ポインタのわからないプログラマの頭の中では
「ポインタなんて裸の王様」が成立してると思うよ

545 :名前は開発中のものです。:2010/02/08(月) 03:16:06 ID:/rTmd7Nr
21世紀にもなって今だにポインタやタスクシステムについて熱く討論してる時点で
時代遅れというならそうかもなぁww

そんな原始的な話はみんな20年前に通り過ぎてとっくに先に行ってる、と

546 :名前は開発中のものです。:2010/02/08(月) 03:18:28 ID:eoh1A31Y
>>545
今のトレンドは何?

547 :名前は開発中のものです。:2010/02/08(月) 03:25:16 ID:/rTmd7Nr
マルチコアを無駄なく使いきれるフレームワークとかかねぇ
まぁこれもPS3とか360が出始めのころの各社が研究してたトレンドだったからもう古いかもねぇ

548 :名前は開発中のものです。:2010/02/08(月) 08:01:44 ID:84SYwGYH
マルチコアを有効に使うシステムがそれこそ現代のタスクなんじゃないの?


549 :名前は開発中のものです。:2010/02/08(月) 13:09:52 ID:aofKpcas
ゲームプログラマの求人見てみるとタスクシステムって言葉出てくるよ
使われてるんじゃないかな

550 :名前は開発中のものです。:2010/02/08(月) 15:21:39 ID:DRPj+0ga
デザパタみたいなもんで名前があることにも意義がある
一番不思議なのは親の敵の様にタスクシステムを
否定する輩がこのスレに現れる事だ
温故知新とも言うし簡単な仕組なんだから
使わないにせよ知ってて損は無いのにね

551 :名前は開発中のものです。:2010/02/08(月) 15:30:32 ID:KhZHHWak
ヒント:適切な単位に適切な名前

552 :名前は開発中のものです。:2010/02/08(月) 17:11:28 ID:DRPj+0ga
>>551
おっと失礼
訂正させてもらう
×:一番不思議なのは親の敵の様にタスクシステムを
○:一番不思議なのは親の敵の様に>>2

553 :ハ(ry:2010/02/08(月) 22:21:47 ID:VnpQvf7D
>>550
間違った(というか遅れた)考え方を知ってて特になるって・・・。
確かに自衛の意味ではやくにたつな。
無駄なことを知ってるって超重要だからな。
永久機関の開発に一生を費やしでもしたら、そりゃ悲惨だ。

>>547 >>548
マルチコアを無駄なく使う?俺はトレンドになんねぇとおもうがなぁ。
そう言うのは、forループの並列展開程度にしれっと応じておいて、
他の事に時間を割り振った方が自分のためだろうな。

でもforループの並列展開だったら、SIMDの方が相性良いかもしれん。
ということで、コアは8個程度で打ち止めにして、
今後はSIMDの拡張方面を頑張って欲しいね。

ただ、サーバー用途だとマルチコアの方が有利だし、
CPUメーカー的にはその辺の事情があるんだろうなぁ。

554 :名前は開発中のものです。:2010/02/08(月) 23:54:58 ID:Maa0pfRP
ハァ…ため息しか出ない





静的型付け言語の型情報と
一致しない

555 :名前は開発中のものです。:2010/02/08(月) 23:56:57 ID:Maa0pfRP
すまん途中送信してしまった

スレッドレベルではなくインストラクションレベルの並列化の強化に期待とか
かなり独自の世界観を持ってるな。。。

556 :名前は開発中のものです。:2010/02/09(火) 00:03:22 ID:6mlob5lK
1命令でいっせーのーせどんを強化した先にベクトルプロセッサがあり
HPC分野では。。。ソフトウェアの開発がスカラー機に比べて簡単とか
聞いたこと無いな



557 :名前は開発中のものです。:2010/02/09(火) 00:07:32 ID:6mlob5lK
あと並列化なんてループアンローリングだけで十分だろというならば
その程度の最適化はコンパイラに任せなさいで終わりだ。アホか



558 :名前は開発中のものです。:2010/02/09(火) 00:14:59 ID:6mlob5lK
ハードウェアはソフトウェア開発者に優しくありなさいというならば
スレッドレベルの並列化(別の言い方をすればSMPな)を前提に進化した
ターゲットハードウェアのほうが格段に優しい。SIMD大強化マンセー
ベクトルプロセッサマンセーなんてNECかNVIDIAの周り者かっつーの。
糞くらえだ。現場を知らないクズは死ねばいい


と思いました。あーすっきり。ワナビー大嫌い

559 :名前は開発中のものです。:2010/02/09(火) 01:13:48 ID:yhZ2PHKk
好き嫌いじゃなく、今のゲーム機のアーキテクチャがマルチコアなんだから
使わないわけにはいかないだろうに。

処理落ちしてる時に遊んでるコアがありゃゲームプログラマならコア駆使して
何とかするもんだ。

560 :名前は開発中のものです。:2010/02/09(火) 01:16:25 ID:aJ0FiuET
自称ハード屋(>>553)は素人オジサンだから放っといたほうがいい
たまーにマグレでまともそうなこと言ってるように見えるが
基本的にゲーム作れないのでピントがずれてる。たぶんキチガイ


561 :名前は開発中のものです。:2010/02/09(火) 01:17:38 ID:H1Nr8694
1フレ単位の処理でマルチコアなんて使う場所ねーじゃん
せいぜい裏で次のシーンのデータロードしておくか
超複雑なAI(将棋とか)走らせるとかぐらいじゃね?
このスレの話題としてマルチコアなんてでること自体おかしくね?

562 :ハ(ry:2010/02/09(火) 01:18:56 ID:4uRxejvM
>>557
まさしく。並列化なんてしたくねぇ。
だからこそのSIMD。
コア増やす方法だと、キャッシュのコヒーレントの問題で、どっかでコア数の限界が来る。
コア数が少ないからforループを展開しても大して速くならない。
結果、自分でスレッド立ててシコシコする羽目になる。

その点SIMDだとそんなのかんけぇねぇから、並列度をどんどん上げれる。
64ループ分ぐらいを一発で処理できる。もっと多くしても良いだろう。
分岐を展開しなければならない弱点があるが、
そんくらい並列度が上がればペイできるだろう。
コンパイラ拡張して勝手にSIMD展開してくれるfor_parallelとかが組み込まれれば、
気軽に使えるようになる。それでいいじゃない。

563 :名前は開発中のものです。:2010/02/09(火) 01:26:28 ID:4uRxejvM
>>561
そうなんだよ。
結局マルチコアはサーバー用途に作られたもの。
それをゲームで一生懸命使おうと頑張ってる皆さんは、仕事とはいえご苦労様。
マルチコアが使いやすいとか何の冗談だよ。
マルチコアはスレッド使うって時点で十分面倒だ。可搬性を考慮したライブラリ化がしずらい。
だんぜんSIMDの方が気軽だね。俺は気軽な方がいいや。

564 :名前は開発中のものです。:2010/02/09(火) 01:26:35 ID:6mlob5lK
>>558 ×周り物 ○回し者

>>548
> マルチコアを有効に使うシステムがそれこそ現代のタスクなんじゃないの?

http://2chart.fc2web.com/2chart/pic/naniwo.jpg
タスク(処理単位)ってのは時代で変わるものなのか?違うだろ。
いつの時代もハード、ライブラリによって多種多様。大昔も今も
ハード、ライブラリ毎にタスクの粒度、構成要素、何もかも違う。
時代で一意に定まるタスクなんてないよ

あとマルチコア(マルチプロセッサ)がトレンドだゲンダイだとか眠たすぎる。
複数プロセッサのやりくりなら15年近く前には既に零細のソフトハウスだって
64bit級のために四苦八苦しながらやってた

565 :名前は開発中のものです。:2010/02/09(火) 01:35:05 ID:4uRxejvM
SIMDの何が良いって、プログラムカウンタが共用なのがいいね。
プログラムは上から下にだらだら逐次実行していくものだという基本に忠実。
それでいて、並列化も行われるわけで。
スーパースカラの投機的命令実行で十分じゃねって言われればそうかもだが。

566 :名前は開発中のものです。:2010/02/09(火) 01:50:08 ID:6mlob5lK
>>563
君の言うSIMD強化って、具体的にどんな絵を描いてるのかよくわからんのよね。
その新命令って例えば何してくれんの。それはゲームの中の何に使えるの。
ゲームプログラムに共通した、ゲームプログラムに特化した便利なインストラクションセットを
オーダーメイドで作ってもらえちゃうの?それならそれで便利だよねドラえもん


567 :名前は開発中のものです。:2010/02/09(火) 01:56:44 ID:6mlob5lK
>>563
君はどんな処理をどんな粒度で分割しどんだけの量を並列化するお話してるの?
インストラクションレベルの並列化で十分つーてるんだから当然それは細粒度の
分割に適した多量の何かを処理するお話なのだろうとは思うけど

568 :名前は開発中のものです。:2010/02/09(火) 01:58:31 ID:4uRxejvM
>>566
普通に64個ぐらいのデータを一つの命令で並列に処理してくれるようにしてくれりゃそれでいいよ。
マルチコアなんてせいぜい4個とか8個とかだろ。苦労してそれじゃね。

569 :名前は開発中のものです。:2010/02/09(火) 02:02:17 ID:4uRxejvM
>>567
forループの展開って言ってんだから、そりゃ、ループカウンタの粒度での分割だ。
カウンタの0から63までを並列に処理してくれりゃいい。

570 :名前は開発中のものです。:2010/02/09(火) 02:05:52 ID:6mlob5lK
>>569
それはゲームプログラムの中で具体的にどういう処理なの?
あなたの想定する既存CPUでワークロードの中の何パーセントを
占めてる処理なの?

571 :ID:4uRxejvM あくきん:2010/02/09(火) 02:10:25 ID:2TaB1p6/
だから、ループを展開するって言ってるだろ。
ループしてるってことはそこの処理は必然的に重たいわけだ。
そこを重点的に展開するわけだから、それで十分だろ。
ループしてるとこ以外に重たい処理なんてあるか?無いだろ。

572 :名前は開発中のものです。:2010/02/09(火) 02:12:09 ID:6mlob5lK
>>570は非常に重要な質問なんだけど

573 :名前は開発中のものです。:2010/02/09(火) 02:19:12 ID:2TaB1p6/
どうせ、全体の25%しか並列化できなかったら、
最大でも処理時間は75%にしかならないよ、とか言うんだろ。
でもそんなもんはマルチコアでも一緒だ。
いちいちスレッドの面倒を見なきゃいけない分
小回りがきかないマルチコアの方が分が悪いと思うがね。

574 :名前は開発中のものです。:2010/02/09(火) 02:22:38 ID:aJ0FiuET
ハード君…

575 :名前は開発中のものです。:2010/02/09(火) 03:03:32 ID:2TaB1p6/
ゲームの場合、1フレーム毎に同期をとらなきゃならないという制限があるから、
大きな粒度での並列化には無駄が出来る。
かといって、マルチコアで小さな粒度の並列化をしようと思うと、
コンパイラが自動でやってくれない限りは地獄を見る。
タスクシステム的な何かを用意する必要があるからな。その時点で却下だ。

サーバー用途だとマルチコアはいいものだと思うよ。

576 :名前は開発中のものです。:2010/02/09(火) 08:09:14 ID:/9pFkwAc
有名なところではカプのMTフレームワークも
マルチコアを考慮したタスクシステムを使っているよ。

ttp://game.watch.impress.co.jp/docs/20070131/3dlp10.htm


577 :名前は開発中のものです。:2010/02/09(火) 09:22:20 ID:RhKkBaLk
何度も何度も何度も何度も言っているが、その記事の「タスク」は、
並列にやらせる仕事の単位をそう呼んでいるだけで、このスレの「タスクシステム」じゃない。

578 :名前は開発中のものです。:2010/02/09(火) 10:57:06 ID:gAZSDjrV
並列更新と同期更新が同じ「タスク」単位になってるから
案外「タスクシステム」と似たような処理なのかもね
使った事ないから本当のところは分からないけど

579 :名前は開発中のものです。:2010/02/09(火) 11:53:50 ID:YL0tD2tx
>>577
なに必死になってんの?
>>2じゃないってことでしょ
>>1くらいよんどけよ

580 :名前は開発中のものです。:2010/02/09(火) 21:37:56 ID:xprr509T
ゲームを作ったこと無いんだが、タスクシステムってのは
リアルタイムシミュレーションゲームを作るのに便利なフレームワークってことでいいのか

581 :名前は開発中のものです。:2010/02/09(火) 22:07:48 ID:hLju4F/g
http://d.hatena.ne.jp/kataho/20080430/p1

582 :名前は開発中のものです。:2010/02/09(火) 22:22:54 ID:sxqDUdhn
魔法のシステムです

583 :名前は開発中のものです。:2010/02/09(火) 22:41:29 ID:H1Nr8694
茶色の小瓶です

584 :名前は開発中のものです。:2010/02/09(火) 23:23:17 ID:z1hzZKP1
>>581
それゲームオブジェクト(エンティティ)のお話
ユーザー側の、アプリケーションの層のお話
ゲームオブジェクト(エンティティ)は複数の関連・相互作用の図の中に参加するというお話。
そらそうだ。物理的・力学的な繋がり。制御の繋がり。通信の繋がり。組織の繋がり。色々ある。
それぞれのコンテナ(外部収納・内部収納は問わない)に格納される。自然なことだわな

ところで低層のターゲット依存部の中に、非プリエンプティブな処理単位を格納する
レディキューが一本あるとする。これは>>581のページ内で言われてるような
「一般化されたゲームオブジェクトのリストを一本持つ」というお話とは一致しないわな

ユーザー側の、アプリケーションの層の中で定義されるゲームオブジェクトの単位と
それより下層の、システム側の、ターゲット依存部の中で定義される処理の単位というのは
分割の基準・動機が違う。そうでないならそれはゲームオブジェクトをタスクいいたいだけの
Codezine状態なんだろ。1task = 1object限定とか。ネット発生型の都市伝説システムだろ

585 :名前は開発中のものです。:2010/02/09(火) 23:55:51 ID:z1hzZKP1
>>573
> どうせ、全体の25%しか並列化できなかったら、
> 最大でも処理時間は75%にしかならないよ、とか言うんだろ。

君はすぐそうやって後頭部を強打したりESP使ったりして妄想先回りするけど
ちと被害妄想が激しすぎるんじゃないのか。そんな警戒しなくていい

> でもそんなもんはマルチコアでも一緒だ。
> いちいちスレッドの面倒を見なきゃいけない分
> 小回りがきかないマルチコアの方が分が悪いと思うがね。

SIMDに適した、細粒度の分解に適した、君に都合のよろしい処理対象を
君は一体全体どういう形でマルチコア(マルチプロセッサ)に配当してるの?
君に都合のよろしいその処理対象はその64-wideのSIMDを使ったほうが
適してるんだからそれでいいじゃない。

で、その、いっせーのーせーどん方式で処理を再構築、データを再配置
しやすい処理は一体なんなの?ゲームの中の何を処理してるの、と
聞いてるだけなの。そしてそれはあなたのゲームではワークロードの
何パーセントを占めていたの?あなたの想定する既存のCPUコアは何?
あなたの想定する既存のターゲットハードウェアは何?

586 :名前は開発中のものです。:2010/02/10(水) 07:32:27 ID:IOwVY6cw
脱線はなるべく無しでお願いしたいものです

587 :名前は開発中のものです。:2010/02/10(水) 14:32:47 ID:3eKhnnI4
シェーダーとメッシュ等のジオメトリって分けますか?

588 :名前は開発中のものです。:2010/02/10(水) 19:35:44 ID:VgzFznsI
>>585
>で、その、いっせーのーせーどん方式で処理を再構築、データを再配置
>しやすい処理は一体なんなの?

ぱっと思いつくところでは、布との当たり判定とかはマルチコアよりもSIMDの方が相性良いだろう。
ゲームの中には大概人型のキャラクタが出てきて、大概が服着てるわけだから、有用そうだよね。

こまかいことほじくって屁理屈並べても仕方ないんだって。
マルチコアは、
大きな粒度の並列化向け、一方ゲームは1フレームごとに同期が基本
&キャッシュのコヒーレントでコア数増やしづらい
&スレッド使うから関数レベルでの可搬性が保ちづらい
ってんで、ゲーム用途には十分つんでるかと。
サーバー用途だと、何もしなくても恩恵にあずかれるのに、ゲームだと、
MTフレームワークにしろspursにしろ、あんなもん用意しなきゃいけない時点で、
無理やり感が漂ってる。なんていうか、小手先?
仕事の人は大変だね。素直にSIMDの要求しておけば、次々世代あたりでかなうかもよ。

589 :名前は開発中のものです。:2010/02/10(水) 19:59:29 ID:/h0b22kQ
そもそも複数のCPUに向けたデータを用意するだけで疲れるし
ぶっちゃけやりたくないなw
コンパイラが頑張ってくれたほうがみんな幸せになれそう

590 :名前は開発中のものです。:2010/02/10(水) 21:56:44 ID:kS9ezNOp
ゲームを作ることを目的とするのではなくて
オブジェクト指向の勉強を目的とするので
特に問題は無いです。

591 :名前は開発中のものです。:2010/02/10(水) 22:03:57 ID:HrOb+RLe
ゲーム制作はオブジェクト指向の勉強には不向きだと思う

592 :名前は開発中のものです。:2010/02/10(水) 22:06:59 ID:VgzFznsI
オブジェクト指向を勉強するって意味が分からない。
あれはセンスのもんで、
うまい人が作ったクラスは機能ごとにまとまってて、
下手な人が作ったクラスはデータ構造主体でまとまってる。

593 :名前は開発中のものです。:2010/02/10(水) 22:58:29 ID:SNZd9kJP
オブジェクト指向ってゲーム向きじゃなかったのか

594 :名前は開発中のものです。:2010/02/11(木) 00:03:06 ID:kS9ezNOp
実際のところ、ゲームゲームな感じのゲームには適切ではないと思う。
ラリーXとかプーヤンみたいなゲーム作るときにどう使えばいいのか
無理やりクラスを設計するのは楽しいけど、仕事ではそんなコードにしたくない。

敵も味方も石ころもみんな等価な物理演算っぽいゲームだとうまくハマるとは思うけど
識者の意見を聞いてみたい。

595 :名前は開発中のものです。:2010/02/11(木) 00:06:39 ID:UroIWicT
PCや数学由来の技術はメモリ管理が組み込み向きに考えられていない。
机上の空論好きはその辺考えないからね。

596 :名前は開発中のものです。:2010/02/11(木) 00:12:52 ID:0/qfWJRv
データ構造ありきで考えるから難しいんだって。

描画エンジンクラス
サウンドエンジンクラス
コントローラIOクラス
ゲームロジッククラス
セーブデータIOクラス
データローダークラス
リソース共有クラス

こんな風に機能ごとにクラス化していけばいいと思うよ。
モジュール化の基本はOOPでも同じ。

597 :名前は開発中のものです。:2010/02/11(木) 01:56:09 ID:EdodrCY4
それに関する反論(機能分解やモジュール化でも駄目)が
design pattern distilledの最初の方に載ってる
勿論その議論の中でもデータ構造によるものとか名詞抽出は論外だけど
8年前のしかも入門書だから今どうかは知らんけど

598 :名前は開発中のものです。:2010/02/11(木) 02:05:16 ID:q7qw6G8d
そろそろその「載ってる」とかそういう表現どまりのレスってやめない?

読んでない奴にとってそれによって何が主張したいのかまったくわからないし
仮に読んでみても本に書いてある意図とレスの主張が全然違うこともあるしで
照合するにもえらい時間がかかるそれを受け手に全部押し付けるってえらい傲慢もいいとこじゃないか?
もう引用とかしなくていいから

○○だから、○○である

と自分の言葉で説明しろよ
それは本のまる写しでもいいからあくまでも自分の発言としてレスにそえろよ

599 :名前は開発中のものです。:2010/02/11(木) 02:15:25 ID:0/qfWJRv
そーそ。デザパタ本なんて糞食らえで読む気しねぇんだよ。
どうせ、おたかいんでしょ?

600 :名前は開発中のものです。:2010/02/11(木) 02:19:45 ID:0/qfWJRv
どっちゃにしろ、ライブラリがそれが持つ機能で掻き集められる物である以上、
無理にでも機能で分割するしかねぇんだよ。答えは決まってる。
後はどう枠にはめるか。

601 :名前は開発中のものです。:2010/02/11(木) 06:03:17 ID:wLw9WprW
>無理やりクラスを設計するのは楽しいけど、仕事ではそんなコードにしたくない。

失礼な言い方で悪いけど、それって設計者に問題ある気がするが…
無理矢理クラス設計せんといけないような状況に出会った事が無い
俺の経験不足かもしんないけど
OOPに問題を転嫁しちゃったら、もうどうにもならんのじゃないか

602 :名前は開発中のものです。:2010/02/11(木) 12:19:49 ID:bO+sOHwd
>>588
>仕事の人は大変だね。素直にSIMDの要求しておけば、次々世代あたりでかなうかもよ。
「僕、素人だから現行アーキテクチャでゲーム作る方法が想像つきません」と。

今のアーキテクチャですら作るの無理って人間はSIMDとか以前にもっと根本的な部分で
何かが不足してるんだと思う。

603 :名前は開発中のものです。:2010/02/11(木) 12:39:48 ID:ZeQP1ZdK
>>598
相手とレベルに差がありすぎるときは情報の出所を示して自分で学習してもらう、
くらいしかできんよ。
それか抽象的なたとえ話にするぐらいしか。

四則演算も変数も数式も知らない小学生一年生に「因数分解を教えて」って言われて
たとえ話じゃなく具体的に自分の言葉で相手に理解させられるならたいした物だけど。

あ、君なら出来るのかな?
義務教育で9年間かけて理解させることを掲示板のレス一つで理解させることが。

604 :名前は開発中のものです。:2010/02/11(木) 12:45:09 ID:pq8QUUui
レベルの差、ということにしておきたいんですねw
あ、コレがうわさの>>3現象ですねw

605 :名前は開発中のものです。:2010/02/11(木) 12:48:29 ID:ZeQP1ZdK
>>604
>>542-544


606 :名前は開発中のものです。:2010/02/11(木) 12:50:01 ID:q7qw6G8d
>>603
折衷点を見つける気はないってことね
そしたら君が出てくしかないんじゃないの?

悪いけどそんなリンク先なんてだれも読む気もしないし
少なくとも君の言ってる内容とリンク先が完全に一致してる証明ぐらい自分でやってほしいもんだけど
そういう負担をこっちに全部押し付けるなら君とはまったく会話できないな

自分は正しい正しいって必死に弁解してるようにしか見えないけど
仮に君が正しいとしてそれで誰も君の話を聞いてくれなかったとしても
永遠に自分の正しさだけを叫び続ければいいよw独りでw

607 :名前は開発中のものです。:2010/02/11(木) 12:50:52 ID:EQAnMjR+
>>603
自分の言葉で語ればいいと思う。理解するかしないかは読む人が決めるし。

608 :名前は開発中のものです。:2010/02/11(木) 12:52:27 ID:ZeQP1ZdK
>>607
その結果が>>606
なんだよね。

609 :名前は開発中のものです。:2010/02/11(木) 12:56:16 ID:q7qw6G8d
そのわかりやすさも含めて話し手の能力だよね
自分の言葉で語れない奴はどこいっても誰も受け入れない
色んな会社転々とすることになるよ

数式や公式なんて知らなくても相対性理論説明できる人間だっているってことよ

610 :名前は開発中のものです。:2010/02/11(木) 12:57:57 ID:5Io58pGR
数式公式知らない奴に相対論語られてもさすがに困る

611 :名前は開発中のものです。:2010/02/11(木) 12:58:49 ID:ZeQP1ZdK
>>609
では小学生一年に因数分解理解させてみて。
自分の発言の証明ヨロww

612 :名前は開発中のものです。:2010/02/11(木) 12:59:09 ID:q7qw6G8d
>>610
アインシュタイン 数学 苦手
でググレ

613 :名前は開発中のものです。:2010/02/11(木) 13:01:14 ID:ZeQP1ZdK
>>612
>相手とレベルに差がありすぎるときは情報の出所を示して自分で学習してもらう、
私の発言の証明ありがとうww

614 :名前は開発中のものです。:2010/02/11(木) 13:01:49 ID:q7qw6G8d
>>611
極論持ち出して悦にいってるけど
そういう話じゃないよね?
君のレスに興味をもつかどうかの話

まあはっきりいうけど

お前のレスなんて誰も読みたくないから書き込むのやめたら?

って遠まわしに言ってるの

615 :名前は開発中のものです。:2010/02/11(木) 13:02:03 ID:5Io58pGR
>>612
アインシュタインが本気で数式公式知らないとでも思ってるの?
ベースとしてる電磁気学の数式の理解もできずに相対論の論文がかけたとでも?

616 :名前は開発中のものです。:2010/02/11(木) 13:03:45 ID:q7qw6G8d
>>615
うん、他の人にやってもらったのさw
でもいまの話題でそれって中心じゃないよね?
食いつくところ間違ってるんだけど

617 :名前は開発中のものです。:2010/02/11(木) 13:04:47 ID:5Io58pGR
>>616
きみのレスに信憑性がないって話だから問題ないでしょ。

618 :名前は開発中のものです。:2010/02/11(木) 13:08:07 ID:ZeQP1ZdK
結局さ、
>そういう負担をこっちに全部押し付けるなら君とはまったく会話できないな
って呆れるほどゆとり思考なんだよね。完全に。

分からない事を分かるようになる労力は分からない人がするもの。
最近のゆとり学校の弊害で
「先生は教える仕事で生徒はお客だから先生が努力して生徒に教えるもの」
って考えてるのが増えてるけど。

>お前のレスなんて誰も読みたくないから書き込むのやめたら?
「僕に努力要求する奴なんて嫌いだ!そんな話聞きたくない!」って
どんだけゆとりなんだか。ww

619 :名前は開発中のものです。:2010/02/11(木) 13:12:48 ID:5Io58pGR
議論じゃなく荒し行為をしたいだけなんだろ。

620 :名前は開発中のものです。:2010/02/11(木) 13:13:45 ID:pq8QUUui
いや、荒らしってことにしておいて、
議論で負けた場合の体面を保とうとしてる気がする。

こんなスレでなにを守る必要があんのだか。

621 :名前は開発中のものです。:2010/02/11(木) 13:14:47 ID:0/qfWJRv
ID:ZeQP1ZdK
お前さー、何関係ないこと言ってんの?
「9年前の〜って本に書いてあったよ」
って言われても、そんな本もってねーし、読んだことねーし、買えってか?
何が書いてあったかぐらい書いてもらわないと、何にもなんねぇじゃん。

622 :名前は開発中のものです。:2010/02/11(木) 13:15:02 ID:ZeQP1ZdK
>>620
つ 鏡

この自爆率の高さは・・・ハード屋?

623 :名前は開発中のものです。:2010/02/11(木) 13:15:39 ID:0/qfWJRv
俺はここに居る

624 :名前は開発中のものです。:2010/02/11(木) 13:16:10 ID:AmfEndDE
もはや何スレかわからなくなってきたな

625 :名前は開発中のものです。:2010/02/11(木) 13:16:11 ID:q7qw6G8d
>>617
ああ、反論できないから人格批判して外堀から潰してやろうって作戦ね

.>>618
自分のレスは読めっていうくせに人のレスはまったく読まないんだねw
もう一度いうけど君のレスなんてつまらないからやめろっていってるの
お前だろ?誰も興味も持てないようなリンク貼って長文連投してるの
このスレにやけに多いけど
誰もよまないし邪魔だからやめてくれないかな
って言ってるの

626 :名前は開発中のものです。:2010/02/11(木) 13:18:53 ID:5Io58pGR
>>625
レスの信憑性がないこと=人格批判
これに納得する人間がどのくらいいるのだろうか

627 :名前は開発中のものです。:2010/02/11(木) 13:20:00 ID:ZeQP1ZdK
>>621
9年前の本って何の話?まぁともかく、

>って言われても、そんな本もってねーし、読んだことねーし、買えってか?
知りたいなら取り寄せて買えば?何が問題?
知りたいのは君なんだし。ソースを示してもらっただけでも御の字でしょ。

628 :名前は開発中のものです。:2010/02/11(木) 13:23:13 ID:0/qfWJRv
俺は知りたくねぇ。
反論するなら根拠を示せと言ってるだけだ。

629 :名前は開発中のものです。:2010/02/11(木) 13:23:24 ID:q7qw6G8d
A:このゲームは○○で△△だからおもしろいはずなんだ!
B:ああ、そう・・・

って話な
聞き手は○○で△△がどういうものかなんて調べる気もないし
○○で△△を知ってる人間だってそれが上の例でいうとゲームのおもしろさと
直結してるかどうかなんてわかっちゃいない
その状況で○○や△△について調べろだのなんだのなんて言われたって
調べないに決まってるだろ

俺のたとえ話はわかってくれたかな?
(なんのリンクも引用も必要なくて結構わかりやすく書けたと思うんだけど)

630 :名前は開発中のものです。:2010/02/11(木) 13:24:43 ID:5Io58pGR
信用のない人間のレスは無視されるか信用に足るか確かめるしかない。
いつまでたっても信用できないものに執着する必要性がない。
レーティングや評価システムのない2ちゃんで
煽りやあらしではなく議論したいと本心から思っているならそこを意識する必要がある。

631 :名前は開発中のものです。:2010/02/11(木) 13:26:35 ID:q7qw6G8d
では>>629の状況において○○や△△がどんなものかわかってないBに
Aのゲームの楽しさを否定することはできないのか?
っていわれればそんなことないよね?

こんな状況なんだよ
小学生に因数分解の話とは決定的に違う

632 :名前は開発中のものです。:2010/02/11(木) 13:28:13 ID:ZeQP1ZdK
>>629
「ああ、そう…」
で話終わってるからこれ以上調べるとかどうとかならん話だな。

このスレと関係ないのでたとえ話として成立してないけど。

633 :名前は開発中のものです。:2010/02/11(木) 13:28:28 ID:0/qfWJRv
"design pattern distilled" の検索結果
http://www.google.co.jp/search?hl=ja&q=%22design+pattern+distilled%22&lr=&aq=f&oq=

googleで引っかかりもしない書籍もちだして、
「それに関する反論がこの本に載ってたよ」
って、なめてんのかよ。



634 :名前は開発中のものです。:2010/02/11(木) 13:37:24 ID:q7qw6G8d
>>633
マジで?ねーの?
一応どっかのリンクにはアクセスしてるかと思ったらそれすら怪しいのかもな
本人だって読んでるのかどうかすら怪しくなってきたな

義務教育の批判がギッシリかいてある「学問のすすめ」を薦める
文部科学省ぐらい怪しいなw

635 :名前は開発中のものです。:2010/02/11(木) 14:03:11 ID:ZeQP1ZdK
結局ID:q7qw6G8dは
>>611
には答えられず義務教育を否定か・・・

自説の誤りを認められずに最後は追い詰められてOOP否定しだしたハード屋
の流れと同じだな。

636 :名前は開発中のものです。:2010/02/11(木) 14:13:08 ID:0/qfWJRv
のうのうとあらわれたw
さすがの神経

>知りたいなら取り寄せて買えば?何が問題?
>知りたいのは君なんだし。ソースを示してもらっただけでも御の字でしょ。

むなしく響くねぇ。で、どうやって買うの?
君が俺の家に宅配してくれるの?

637 :名前は開発中のものです。:2010/02/11(木) 14:20:08 ID:q7qw6G8d
>>635
その問題が今回の話に適切かどうかもわからないよね
因数分解は義務教育でみんながやるけど
いまは小学生が相手のスレじゃないしね
少なくとも高等教育卒業レベルの知識をラインにしてもいいと思うんだけど
いきなり小学生に因数分解の極論だしね君の

まずは今回の問題と小学生に因数分解の例がたとえ話として適切かどうかの
議論をしてもらいたいね

638 :名前は開発中のものです。:2010/02/11(木) 14:27:18 ID:0/qfWJRv
またどうでも良い話。

反論の根拠として示された入門書が、
まずもって売ってねぇ、誰が書いたのかもわからねぇ、検索にすら引っかからねぇ。
それじゃ根拠になんねぇ。それだけだ。

運河ユニバースで宇宙人に会いました、でも写真はありません。
根拠は運河ユニバース。知りたい人はそこに行けば?そんな話。

639 :名前は開発中のものです。:2010/02/11(木) 14:31:34 ID:EQAnMjR+
因数分解とかはどうでもいいけど

>>597
>design pattern distilledの最初の方に載ってる
まず、この本にどういう風に載っていたのか説明してほしい。
その上で、8年前の本らしいから 今の現状と照らし合わせて
それでも>>596がダメだと思った理由を聞かせてほしい。

640 :名前は開発中のものです。:2010/02/11(木) 14:34:53 ID:pq8QUUui
>>639
> この本にどういう風に載っていたのか

無理だと思うよw 何一つ自分の言葉で語れないから彼はw
とてもとても手間で、とてもとても難しいんだそうだw

641 :名前は開発中のものです。:2010/02/11(木) 14:42:33 ID:q7qw6G8d
やっぱり自分の言葉で語れない奴ってダメだよな
まず、バックボーンに信用や共有する知識があってこそ会話って成り立つってことを学習するべきだよ
このスレでも毎回、毎回、こんな会話繰り返してるよな
また、やったよってうんざりするわ
たくさん本読んでるって割りにはなんにも学習しないのな

642 :名前は開発中のものです。:2010/02/11(木) 15:25:25 ID:HfUZhlid
ざっとレスを読んだがID:q7qw6G8dとID:0/qfWJRvの勝ちだな

もうスレ違いはこれぐらいでいいだろう

643 :名前は開発中のものです。:2010/02/11(木) 15:44:24 ID:OhWI7ZPq
>>597が糞野郎なのはともかくとして>>596もろくなこと言ってないけどな。
そもそもそれゲーム作ってるのか?ゲーム用ライブラリじゃなくて
ラリーXとかプーヤンを機能ごとにクラス化した場合の話とか提示できないかな



644 :名前は開発中のものです。:2010/02/11(木) 15:59:12 ID:0/qfWJRv
>>643
まともにゲームでOOPするんなら、こんな感じになると思うよ。
http://gmdev.dtkr.info/st/up/3.png
あー、これは俺がさっき書いた図だからあんま信用するなよ。

645 :名前は開発中のものです。:2010/02/11(木) 16:05:35 ID:0/qfWJRv
図に出てくる「機能(インターフェース)」ってのは、
関数じゃなくて、あくまでOOPで言うところのインターフェースな。
複数のメソッドが提供されうる。
class hoge
{
  method1();
  method2();
  method3();
}
これ全体で「hogeの機能」ってことな。

646 :名前は開発中のものです。:2010/02/11(木) 16:16:30 ID:vV+m6uqD
>>544 (>>605)
ポインタなら、実際に使われてるところを標準ライブラリなり何なりのライブラリから
探せばすぐに具体的に必要性が示せると思うよ。

647 :名前は開発中のものです。:2010/02/11(木) 16:27:03 ID:EQAnMjR+
>>644
これでプーヤンを記述するのはちょっとしんどいかも。

648 :名前は開発中のものです。:2010/02/11(木) 16:54:45 ID:OhWI7ZPq
>>644
図まで描いてくれてありがたいが具体性がなくて解りづらい
スーパーマリオでいいから特定のゲームの例か、せめて>>596に当てはめた例で書いてもらえないだろうか

あとなんとなく下の塊は上の塊を参照するが、下とか同列の塊は参照できないのかなとは思ったが
下の塊のデータと上の塊の機能が線で結ばれてるのがよくわからない
下の塊の機能から上の塊の機能を呼び出すのではなくて?
「機能と機能が紐づいてデータ構造に」って言うのが説明なんだろうけどピンとこない
できれば具体的なプログラムの方法で説明してくれるとありがたい

649 :名前は開発中のものです。:2010/02/11(木) 16:58:45 ID:q7qw6G8d
>>644
ちょっとまって
機能からデータに線が伸びてるけど
どの辺がカプセル化してあるのか説明してくんない?

650 :名前は開発中のものです。:2010/02/11(木) 17:15:03 ID:0/qfWJRv
あーごめん。
あの図は上が低レイヤー層なんだ。
下が低レイヤー層だと思って見た人には意味不明だわな。
ボトムアップ式に書きたかったんだけど、上から読んでいくことを考慮して、
ボトムを上に持っていったら、上下がさかさまになっちゃったw

あの図のミソはクラスとデータの結びつきが弱い点かな。

651 :名前は開発中のものです。:2010/02/11(木) 17:29:24 ID:8QhybTeu
機能とかではまだ俺が上手く使えてないから説明できんが
敵の狼とか自機の豚とか弓矢とか風船とか肉をクラスにしたらあかんのか

652 :名前は開発中のものです。:2010/02/11(木) 19:46:44 ID:i+ii9DC3
>>650
レイヤー層ってファンクション関数みたいなものか

653 :名前は開発中のものです。:2010/02/11(木) 20:45:02 ID:i+ii9DC3
>>588
ぱっと思いつくところがクロスシミュ程度って何とも言えない違和感あるな。
いいのかそれで。そんなんで。それぐらい君にとって活用法を見出すのが
難しいものということでいいの?その、インストラクションレベルの、データ並列
による高速化手法というのは。だとしたら、君が期待しても君の利得少なくない?

654 :名前は開発中のものです。:2010/02/11(木) 21:15:36 ID:i+ii9DC3
そういえば自称ニート屋君はさ、以前に引数君と呼ばれていなかったかい?
芸風がとても似てるなぁと思ってね。気のせいかな

655 :名前は開発中のものです。:2010/02/11(木) 21:45:50 ID:0/qfWJRv
今やお前の方が痛いのだよ

656 :名前は開発中のものです。:2010/02/11(木) 21:57:04 ID:i+ii9DC3
誰も痛いとは言っていないぞ。君はやはり被害妄想に過ぎるな。
俺は引数君のファンであり、ニートというのはある意味勝ち組だろうとも
感じている。薄給で馬車馬のように働かざるをえない人生を送っている
身としてはニートというのは貴族階級にすら見える。正直羨ましいと思ってる

657 :名前は開発中のものです。:2010/02/11(木) 22:01:56 ID:0/qfWJRv
俺は引数君じゃねぇし、お前でもねぇし、第三者だし、被害妄想とか何言ってんだか。

658 :名前は開発中のものです。:2010/02/11(木) 22:08:20 ID:i+ii9DC3
なんだ気のせいだったのか。それは残念だ。

さて、君はシングルスレッドマンセー教団に所属する貴族様であるから伺いたい。
君がターゲットとしているであろうそのハードウェア。何なのかなかなか答えて
くれないので予想をするしかないわけだが、基本スカラー型の汎用プロセッサを
積んでいるのであろう?そのシングルスレッド性能が順調に向上する見込みは
あるのかい?それとも緩やかな向上を待ち続ける余裕がある裕福な環境にあるのか。
後者ならこれも羨ましいと思っている

659 :名前は開発中のものです。:2010/02/11(木) 22:11:05 ID:0/qfWJRv
だからSIMDっつってるだろ。

660 :名前は開発中のものです。:2010/02/11(木) 22:16:43 ID:q7qw6G8d
>>650
したら図を書き直すなりなんなりしろよ
もうちゃぶ台はひっくり返ったんだろ?

661 :名前は開発中のものです。:2010/02/11(木) 22:20:52 ID:0/qfWJRv
上下さかさまはわざとだ。

662 :名前は開発中のものです。:2010/02/11(木) 22:31:06 ID:i+ii9DC3
>>659
君がSIMD強化を期待しているそのプロセッサというのは基本スカラー型なんだろ?
で、仕方がないからベクトル型の命令群によるシングルスレッド性能向上に期待している

そうでしょ?

663 :名前は開発中のものです。:2010/02/11(木) 22:40:05 ID:0/qfWJRv
だから、SIMDに期待しているっつってるだろ。頭悪いな。なんでスカラーの話になるんだよ。
スカラーじゃ遅いからSIMDつってんのに。

664 :名前は開発中のものです。:2010/02/11(木) 22:44:57 ID:i+ii9DC3
>>663
だから、それは基本的にはスカラー型なんでしょ?違うの?
こことても重要なの。トランジスタをどこに多く割り振ってるの?

つーかグダグダ言ってねーでさっさとターゲットハードウェアが
何なのか晒せっつーとんの。おわかりになって?

665 :ID:0/qfWJRv あくきん:2010/02/11(木) 22:52:50 ID:mk+K23Dj
>>664
じゃあCore i7やPowerPCでいいよ。
これのマルチコアに割いてる分のトランジスタを少しはSIMDに回せと。

666 :名前は開発中のものです。:2010/02/11(木) 23:27:41 ID:i+ii9DC3
渋ってた理由が謎だがそうやっと出たか。ありがとうね。
さて、Ci7は4コアだっけ?これを1コアでいいから残りのトランジスタはSIMDにまわせと。
そういうのを期待して64-wideのSIMD。高並列SIMD。これベクトル型のプロセッサよね。
スパコンみたいね

これ、同じ計算を沢山のデータにまとめて適用できる処理が主に利得を得るプロセッサよね?
同じベクトル計算、行列計算を大量のデータに適用する、例えば空間を格子でぶったぎる
CFDだとか、ゲームならジオメトリ処理やサウンド処理や画像処理などが恩恵を受けるよね?

ゲーム用のハードのメインのCPU、おまけにシングルコア。これのリソースの配分として
SIMDに資源を大量に割くというのはバランスとしてどうなの?高並列SIMDって柔軟性×よ?

667 :名前は開発中のものです。:2010/02/12(金) 01:55:23 ID:H4eC2zu/
ちゃんと読めよ。少しは回せって書いてあるだろ。
これから先プロセスルールがまだいくらかは改善するとして、
このまま8コア16コアってなっても意味無いだろ。
そこまで行ってもたかだか16倍だ。
だったら少しはSIMDにもトランジスタ回せって。
SIMDは演算器が沢山あるだけだから、
マルチコアみたく、コアごとにキャッシュやらOoO用意したり、
コヒーレント考えたりしなくて良いから、
トランジスタ効率が良いんだよ。
だから、
>SIMDに資源を大量に割く
これは無い。
柔軟性に関しても、ゲームの場合、マルチコアよりもSIMDの方が相性よいと思うね。

668 :名前は開発中のものです。:2010/02/12(金) 02:26:00 ID:H4eC2zu/
具体的には、8コアにするぐらいだったら、
6コアにして、あまったトランジスタをSIMDとレジスタとキャッシュに使って欲しい。
それがバランスってもんだと思う。

669 :名前は開発中のものです。:2010/02/12(金) 21:14:48 ID:WvwnijxN
まあi7フル活用できるようなゲームが出るのはまだまだ先だろうけど
常にハイスペックのGPUを求められるグラフィック面の異常進化に反して
最近のCPUだとゲーム程度じゃパワー余りがちなんだな

670 :名前は開発中のものです。:2010/02/12(金) 23:32:05 ID:PsnAaA3T
セルオートマタ的な処理すればあっという間にCPU時間食うけどね

671 :名前は開発中のものです。:2010/02/13(土) 01:16:52 ID:cJ3wKAYa
ごめんちょっと聞きたいんだけども、
C++でstd::listにオブジェクトを突っ込んで、マネージャークラスで管理するってのと、>>2ってどう違うの?
そして古典タスクと現代のタスクシステムの決定的な違いは何?

頑張ってスレの内容から読みとこうとしたんだけど、俺には無理みたいだ。

672 :名前は開発中のものです。:2010/02/13(土) 01:32:27 ID:VN1jDHhN
>>671
std::list を使うと同じことを楽チンに、より直接的に実装できるということです。
「タスクシステム」などという実体の無いものを軸にして考えようとするからわからなくなるのでしょう。
それはオブジェクトのリストであり、それ以上のものではないのです。
それ以上の意味付けはすべて、具体的な利用箇所の仕様によって成されるのであって、
それで良いのです。

673 :名前は開発中のものです。:2010/02/13(土) 01:36:56 ID:lWQUr/eL
>>671
C++でstd::listにオブジェクトを突っ込んで
これが>>2のタスクシステムでしょ?

674 :名前は開発中のものです。:2010/02/13(土) 01:37:46 ID:cJ3wKAYa
>>672
直接的に、というのはオブジェクト一つ一つに、
次のオブジェクト(タスク?)へのポインタを持たせる、って意味なの?
処理の流れとしては同じものって解釈で大丈夫そう?

675 :名前は開発中のものです。:2010/02/13(土) 01:40:18 ID:cJ3wKAYa
>>673
std::listを使った実装が古典タスクと大体等価だとすると、
古典じゃないタスクシステムはどうなのか、ってのが見えてこなくて困ってるんだ。
単に効率的な処理を突き詰めているだけなの?
1年前くらいからちょくちょく覗いてはいたんだけど、結局そこが分からなくて今回聞いてみたんだ。

676 :名前は開発中のものです。:2010/02/13(土) 01:45:37 ID:AgXIkFqe
>>671
一行目から何がごめんなの?

677 :名前は開発中のものです。:2010/02/13(土) 02:42:35 ID:VN1jDHhN
>>674
直接的に実装できるというのは、プログラムの意図に即した記述ができるということです。

必要も無いのに「タスク」などという過度な抽象化をする必要はありません。
敵のリストでも弾のリストでも、必要なものを必要なだけの抽象化レベルでソースに
記述すればいいのです。

678 :名前は開発中のものです。:2010/02/13(土) 09:35:54 ID:0QMPwegN
キミたち、魍魎を知っているか?
魍魎の匣の魍魎だ。あの魍魎だ。
これ以上は言わなくても分かるだろう?

679 :名前は開発中のものです。:2010/02/14(日) 02:58:34 ID:WWZjcbBJ
タスクシステム使った市販ゲームっていっぱいあるんでしょ?
その事実がある以上、ゲームなんて作ったことこもなさそうな人たちが
いくらタスクシステム必要ないとか言っても、童貞が語る女の口説き方みたいで
説得力0なんだけど・・・


680 :名前は開発中のものです。:2010/02/14(日) 03:27:24 ID:uyDAoCTh
>>679
匿名掲示板でプロの発言しか信用できないみたいな言い方は無粋だなぁ。
飲み屋の酔っ払いが「野茂のフォークはだめだねぇ」とか言ってるのと同じで
素人の愚痴でも別にいいじゃん。2chはそーいうところなんだし。

あんたは飲み屋で「お前はプロじゃないから野茂のフォークなんて分からないだろ!」
とか言って場を盛り下げてる空気読めない馬鹿と一緒。

一生野球しない親父が野球批判したっていいし、一生ゲーム作ることもないハード屋
みたいなのがタスクシステム批判したって別にいいでしょ。
説得力なんて無くてもその話題で盛り上がれれば。2chはそーいうところ。空気読め。

681 :名前は開発中のものです。:2010/02/14(日) 04:18:36 ID:JEdR2sNX
>>680
空気読めてないのお前の方だろw
リアルじゃ「説得力0wうざいwかこわるいw」て思っても言わないけどな
2chならいっていいやん

682 :名前は開発中のものです。:2010/02/14(日) 04:21:30 ID:cfoN4TJ2
>>680
飲み屋の酔っ払いはまさか本気で野茂に勝てるなんて考えて話してないだろうけど
ここの坊やたちは、タスクシステムつかってる日本中のゲームプログラマーなんて
タスクシステムを見切った僕に比べればたいしたことないって本気で信じてるんじゃない?
もし飲み屋の酔っ払いが本心から野茂に勝てると信じきって話してたら、周りの人間も同じ突っ込み入れると思う。
「お前の言ってること説得力無い」って。

そーいや自分の名前書くのがやっとの知恵遅れ気味の人たちが、
「ゲームなら僕にも作れるはず」ってゲーム専門学校にたくさん入ってきて
講師が困ってるという話を何故か思い出した。

683 :名前は開発中のものです。:2010/02/14(日) 04:24:07 ID:gpTdAh1n
>>679
>>236なら信じるわけ?

684 :名前は開発中のものです。:2010/02/14(日) 04:26:20 ID:e+nQn9Mg
そりゃ自分に都合のいいレスは支持して当然だろうw
そういうのも含めて2chってことだなw

685 :名前は開発中のものです。:2010/02/14(日) 04:31:57 ID:cfoN4TJ2
2chなら「僕、野茂です」と誰でも言えるからなぁ
それでプロ野球選手と認めてくれるのはよほどピュアな心の持ち主。
そんな人は2chなんてやってないだろうけどww

686 :名前は開発中のものです。:2010/02/14(日) 04:50:44 ID:wn7HdP6K
匿名掲示板で誰が言ったなんて証明できないし意味ないでしょ。
誰が言ったかより何を言ったかでしか判断しようがない。

そのうえでSIMDとかFSMとか何とかパターンとか、聞きかじった難しい言葉を
背伸びして使ってるようにしか見えないアンチの人たちの具体性の無い話よりも、
泥臭い >>2 の方がまだゲーム作るうえで実用的で参考になると判断する。

687 :名前は開発中のものです。:2010/02/14(日) 05:15:31 ID:e+nQn9Mg
>>2ってなにも書いてないじゃん
自分で何がいいか検証してみたんだろか?
紹介してるもんのメリットを一度でも考えてみたことはあるのかと?
そんな程度のこともできない技術者でいいのか?

688 :名前は開発中のものです。:2010/02/14(日) 06:50:04 ID:gpTdAh1n
>>686
まさにこのメンタリティがタスクシステムの本質。
問題は何年たっても判断基準がこのままの奴らが多いこと。

689 :名前は開発中のものです。:2010/02/14(日) 09:18:26 ID:TzpjHJgJ
>>2が出てからもうかなり時間が立ってるけど
そろそろ追加を検討してもよいサイトって出てきてないの?

690 :名前は開発中のものです。:2010/02/14(日) 09:59:13 ID:nfEV65GK
その3 タスクシステムと「ゆるゆる」なキャラクタ

http://marupeke296.com/GDEV_No3_TaskSystem.html

691 :名前は開発中のものです。:2010/02/14(日) 10:31:07 ID:GjQ4ObVB
>>687
> >>2ってなにも書いてないじゃん
ここでピントのずれた話してる人たちより
よほど内容のあること書いてあるけど・・・
何も書いてないじゃなく君にとっては何も理解できない、
ってだけじゃない?

>そんな程度のこともできない技術者でいいのか?
そんな程度のこともできない技術者でいいのか?

692 :名前は開発中のものです。:2010/02/14(日) 10:36:30 ID:zAQ6mq0H
さぁ裸の王様のお話がはじまりましたよ。

693 :名前は開発中のものです。:2010/02/14(日) 10:39:32 ID:e+nQn9Mg
>>691
じゃあ、タスクシステムのメリットを説明してみせろよw

694 :名前は開発中のものです。:2010/02/14(日) 10:48:01 ID:GjQ4ObVB
>>692
またピントのずれた話を・・・
タスクシステムつかった市販ゲームが存在してる時点で
裸の王様とやらは破綻してるんだけど。
まさに >>544 の通りなんだと思う。

>>693
>>2 にメリット・デメリットと丁寧に解説されてるんですけど・・・
リンク先、そんなに難しいこと書いてないと思うんだけど。

695 :名前は開発中のものです。:2010/02/14(日) 10:53:06 ID:ujwt9v5u
>>694
メリット説明しろってのは >>23
なんだから、相手しても無駄。

696 :名前は開発中のものです。:2010/02/14(日) 11:02:44 ID:zAQ6mq0H
まさか >>2 に挙がってるメリットが今でもすべて有用なものだとは思ってないよね?

C++標準ライブラリが普通に使える現代的な環境でも有用な
「タスクシステム」ならではのメリットをひとつ引用して見せてくれない?

それを検証するのは面白いかもしれない。

697 :名前は開発中のものです。:2010/02/14(日) 11:17:32 ID:e+nQn9Mg
>>694
いや、そうやって誤魔化さないで
はっきりと自分の口で1つだけでいいから挙げてもらえないかな?

698 :名前は開発中のものです。:2010/02/14(日) 11:21:02 ID:ujwt9v5u
>>697
リンク先があるのに何でわざわざ相手に労力かけさせようとするのかな?
wwwのハイパーリンクって何のためにあるかわかる?www
>>23
> って逃げ回って相手に労力をかけさせて諦めるのを待つ見え見えの方法。
相手に労力かけさせたいだけでしょ。
初めから話を聞くつもりがない奴を相手にする人はいないよ。

699 :名前は開発中のものです。:2010/02/14(日) 11:23:00 ID:ujwt9v5u
今気づいたけど、 World Wide Web ってwwwで笑ってるみたいだなwww

700 :名前は開発中のものです。:2010/02/14(日) 11:57:00 ID:zAQ6mq0H
まぁ予想通りの展開なわけなんだけども、毎度毎度残念なことだよ。ほんとうに。

>>694
> タスクシステムつかった市販ゲームが存在してる時点で
> 裸の王様とやらは破綻してるんだけど。
そこに歩いてる王様がいるのだから、王様が裸であるわけがない、と?

701 :名前は開発中のものです。:2010/02/14(日) 12:35:57 ID:xd0RcPpW
なんで>>23を引用するのかも不思議だ。

メリットの説明をして、ニートに「納得させる」のは難しいかもしれないが、
説明を「して見せる」こと自体は簡単だろう?

その後、相手がどんな批判をしてこようとも、
説明を「して見せた」のならこのスレとはまったく様相が違う。

ここでは、その第一歩すら出てこないのだ。

>>544にしたって同じ。
ポインタのメリットは?という奴に「納得させる」ことが出来るかどうかは別だが、
メリットこ個別にあげたりして、説明「して見せる」ことなど簡単じゃねえの?

702 :名前は開発中のものです。:2010/02/14(日) 14:08:08 ID:m7XQbrTT
タスクシステムのデメリットと、タスクシステムに代わるフレームワークを示せばいいんじゃない?
そっちにメリットがあると判れば、みんな違う方法使うだろう

ゲーム作成=タスクシステム、と思ってる人にはそう説明するしかない
タスクシステムを使わなければRPGもSTGも作れないと思ってるだろうし、
どのゲームを作るにしてもタスクシステムの構築から始めるだろう
それでいて、タスクシステム以外のフレームワークを認めようとしない

703 :名前は開発中のものです。:2010/02/14(日) 14:47:11 ID:ujwt9v5u
>>701
メリットは既に上げられるのにそれは無視してメリットの説明の要求を繰り返してるからね
>>23 のニートが就職のメリット聞いてるのと何も変わらない。下衆なやり口が見え見え。

>>702
>それでいて、タスクシステム以外のフレームワークを認めようとしない
そんなやつ一人でもいたか?
少なくとも全てのゲームをタスクシステムで作れ、なんて奴はこのスレで一度も見たことないんだが。

アンチ:タスクシステムは全てのケースで使えない! >>136-137とか
容認派:ケースバイケース、メリットがあるのなら使えば? >>481とか
信者:全てのゲームはタスクシステムを使うべし >>アンチの妄想上の見えない敵

>タスクシステムを使わなければRPGもSTGも作れないと思ってるだろうし、
お前の言うように全てのゲームでタスクシステム使えってやつ、過去スレからでもいいから
アンカーつきで見つけ出してくれる?ww

アンチが救いの無い馬鹿だからってそれに反対する奴が同じように馬鹿だと思わないほうがいいぞ
見えない敵との戦い、ご苦労さんwww


704 :名前は開発中のものです。:2010/02/14(日) 14:50:05 ID:hWfbVx4t
あんたは誰と戦っているんだ

705 :名前は開発中のものです。:2010/02/14(日) 14:59:33 ID:xd0RcPpW
なんだかしらんが、ニートが就職のメリットを何度も尋ねるんなら、
何度かは答えてやっていいと思うが。自分の言葉で十分言える。

就職のメリットの一つははお金が手に入ることです。
働かなくてお金が入るならそれがベストじゃないかって?
そりゃそうだろうね。俺もそう思うよ。それは羨ましいよ。
ただ、働かなくてお金が手に入ったりする人じゃなければ、
お金を手に入れるには働くのが手っ取り早いね。
他にもメリットはあるだろうけど、今俺が思いついたのはコレだね。

706 :名前は開発中のものです。:2010/02/14(日) 15:05:58 ID:ujwt9v5u
>>705
ニート「何それ?ぜんぜんメリットになってないじゃん。
ほら早くメリット教えろよ、自分の言葉で。
やっぱり誰一人メリット説明できねーwww」

って感じ?このスレのアンチタスクとまったく同じ反応。
その程度のメリットならこのスレで過去いくらでも出てるし。

ニート「さ、早く自分の言葉でメリット教えてwww」

707 :名前は開発中のものです。:2010/02/14(日) 15:07:18 ID:xd0RcPpW
> スレで過去いくらでも出てるし。

過去は知らないんだw すまんw
だから今、誰かにメリットを明言してみてほしいんだが。

708 :名前は開発中のものです。:2010/02/14(日) 15:09:38 ID:xd0RcPpW
>>706
> ニート「さ、早く自分の言葉でメリット教えてwww」

うん、じゃあもう一回言うね。
やっぱり俺は賃金をもらえることだと思うよ。
過去スレにもそう言ってた人がいるかもしれないけど、
やっぱり俺は賃金だと思うね。
国が最低賃金を保証してくれてるんだっけ。
だから、どんなに過酷にみえても、
それなりの賃金はもらえるからメリットあると思うよ。

709 :名前は開発中のものです。:2010/02/14(日) 15:13:04 ID:ujwt9v5u
>>707
ニート「過去は知らないんだw すまんw
だから今、誰かにメリットを明言してみてほしいんだが。 」

これに答え続ける馬鹿いると思う?

710 :名前は開発中のものです。:2010/02/14(日) 15:13:06 ID:xd0RcPpW
あと、会社が社会保険の保険証をくれるかもね。
国民健康保険よりはお得だったハズ。
まあ、そういう付加的なメリットもあるかもね。

711 :名前は開発中のものです。:2010/02/14(日) 15:14:03 ID:xd0RcPpW
>>709
逆に、なんで答えることすら渋るのか不明だね。

712 :名前は開発中のものです。:2010/02/14(日) 15:15:30 ID:ujwt9v5u
>>708
>>710
>>706

ニート&アンチタスク「さ、早く自分の言葉でメリット教えてwww」


713 :名前は開発中のものです。:2010/02/14(日) 15:17:25 ID:ujwt9v5u
>>711
ニート&アンチタスク「さ、早く自分の言葉でメリット教えてwww」

渋らずに永遠に相手してくれるんだ。がんばってねwww

714 :名前は開発中のものです。:2010/02/14(日) 15:19:42 ID:e+nQn9Mg
だって一度もメリット説明できた人いないもんねw
メリットの説明求めるだけで連勝記録さらにアップだよw

715 :名前は開発中のものです。:2010/02/14(日) 15:27:09 ID:ujwt9v5u
>>714
ニート「だって一度もメリット説明できた人いないもんねw
メリットの説明求めるだけで連勝記録さらにアップだよw
働いたら負け!!!」www

ニートにしろ毒男にしろアンチタスクにしろ、認めなければ負けなしで最強だよね。www
働く能力とか、結婚できる魅力とか、ゲーム作る才能とかが無くても
現実を認めない限り最強だから生きていけるwww

716 :名前は開発中のものです。:2010/02/14(日) 15:32:58 ID:e+nQn9Mg
>>715
どうした?
それで終りか?w

717 :名前は開発中のものです。:2010/02/14(日) 15:34:32 ID:xd0RcPpW
連続投稿規制で弾かれてた…。

>>712
やっぱ賃金かな。一言で言うとね。

>>713
永遠に答えなくて良い。一度で良い。
一度で良いから早く自分の言葉でメリット教えてよw

718 :名前は開発中のものです。:2010/02/14(日) 15:34:32 ID:ujwt9v5u
>>716
ニート&アンチタスク「どうした? それで終りか?w」


719 :名前は開発中のものです。:2010/02/14(日) 15:38:23 ID:ujwt9v5u
>>717
ニート&アンチタスク「一度で良いから早く自分の言葉でメリット教えてよw」

720 :ハ(ry:2010/02/14(日) 15:38:24 ID:OC4y/061
ニートとか出してきてイメージ戦略しなきゃいけない時点で負けてるよ。
低脳すぎてそのことにすら気づかないようだが。

721 :名前は開発中のものです。:2010/02/14(日) 15:40:34 ID:xd0RcPpW
>>719
俺が思うに一言で言うと賃金、お金だね。

で、タスクシステムのメリットは?

722 :名前は開発中のものです。:2010/02/14(日) 15:44:16 ID:ujwt9v5u
>>721
ニート&アンチタスク「早く自分の言葉でメリット教えてよw」

いい加減気づいたら?

723 :名前は開発中のものです。:2010/02/14(日) 15:47:43 ID:xd0RcPpW
>>722
うーん。今日はコレで最後だよ。
やっぱね、俺は就職のメリットは賃金にあると思うよ。
だって就職でもしなきゃお金手に入りそうにないし。
株とかするの? あー。それならそれでも十分かも。
でもね、この先ずっとそれで食っていくのって怖くない?
俺ならちょっと怖いなあ。自信が無い。
だから手っ取り早く安定した収入を得たいがために、
俺なら就職するね。

技術と資金があれば起業とかでもいいだろうけど、
そんなにカンタンじゃないだろうし。
やっぱり、消去法かもしれんが、
お金が欲しかったら就職。

就職のメリットは一言で言うと賃金。

他の人の意見とはまた違うかもしれないし、
ほかにメリット出てくるかもしれないけど。

今日はこんくらいで勘弁してね。
で、タスクシステムのメリットは?

724 :名前は開発中のものです。:2010/02/14(日) 15:49:58 ID:ujwt9v5u
>>723
ニート&アンチタスク「やっぱり誰一人メリット説明できねーwww」

725 :ハ(ry:2010/02/14(日) 15:52:19 ID:OC4y/061
働くことのメリット:
色々な人と関わることが出来る。
分別がつくようになる。
ある程度の更生力がある。
ID:ujwt9v5u みたいにならなくてすむ。
会社、業界選びは慎重に。

726 :名前は開発中のものです。:2010/02/14(日) 15:54:54 ID:e+nQn9Mg
数々の奴がタスクシステムのメリットの説明に挑戦しても結局こんな最期を迎えるんやなw

727 :名前は開発中のものです。:2010/02/14(日) 16:00:29 ID:gpTdAh1n
働くことのメリット:賃金
説得力はともかくひとつでたね
でタスクシステムのメリットは?

728 :名前は開発中のものです。:2010/02/14(日) 16:02:17 ID:xd0RcPpW
>>727
説得力なくてゴメンねw
まあ、自分の言葉で精一杯説明してみせたつもりだから、
借り物の言葉じゃないから、そこんとこだけ胸を張りたい。

729 :名前は開発中のものです。:2010/02/14(日) 16:02:38 ID:ujwt9v5u
>>726
それが初めから分かってるからねぇ・・・
過去スレでは親切な人も沢山いたけど、学習能力のある人ならもうこんなの相手にしないでしょ。
ROMれば出てくることを聞くしかできない教えて君の相手をしても無駄。

730 :名前は開発中のものです。:2010/02/14(日) 16:05:27 ID:gpTdAh1n
とにかく論拠を出さなければ議論は始まらない。
説得は相手のベースがあるから成功するかは限らないが
それなりの論拠があれば賛同者は出てくる。
お前を説得できないから論拠は出せないじゃ>>3てことだよ。

731 :名前は開発中のものです。:2010/02/14(日) 16:11:09 ID:OC4y/061
ID:ujwt9v5uはなんかしらんが自分の殻に閉じこもり始めた。
自己カプセル化となずけよう。(裸の王様現象)
確かにタスクシステムのタスクは他タスクとの関わりが苦手かもしれないけど、
それを自分にまで当てはめる必要は無いんじゃないか。
低能は傷ついてなんぼだと思うがなぁ。

732 :名前は開発中のものです。:2010/02/14(日) 16:35:33 ID:eAxvOj2x
>>729
アンチタスクと容認派では、どう見ても容認派の方が正しいとは思うけど
相手しても無駄とか言うなら初めから2chやる必要も無いんじゃない?

肥溜めに入って糞で汚れるから嫌とか言っても説得力無いというか・・・

相手しても無駄とか言いながらアンチタスクのマネして同じように糞まみれに
なってるあんたもアンチタスクと同じくらい馬鹿に見える。

733 :名前は開発中のものです。:2010/02/14(日) 16:57:02 ID:pjCkL54h
取りあえず就職のメリットなんて語り続けても仕方ないだろ
ここで必要なのは同じメリットでも就職でなくタスクシステムのそれだろ
過去に書いただろとかリンク辿れとか言っても納得させられないぞ
まあ語ったところで納得させられるとは限らないが
少なくともこんなどうでもいい議論続けても埒が明かんだろ
取りあえず次の問題に答えろよ
「タスクシステムのメリットを40字以内で説明せよ。」

734 :名前は開発中のものです。:2010/02/14(日) 17:08:46 ID:OC4y/061
じゃ、俺から。
1.実行順番を動的に変更できる
2.実行コードとデータをパッケージ化すると、Cellの糞SPUに仕事振れる
3.仕事している振りが出来る
4.現実逃避が出来る

735 :名前は開発中のものです。:2010/02/14(日) 17:25:23 ID:eAxvOj2x
就職のメリット聞かれて「金が稼げる」とか答える程度でいいなら
タスクシステムのメリットは「ゲームが作れる」程度で丁度いいんじゃない。

736 :名前は開発中のものです。:2010/02/14(日) 17:26:41 ID:gpTdAh1n
>>734
1.はあまり必要性を感じたことがない
だけどこれがタスクシステムでの一般的なイメージだな。
でこれは必要なら実装したほうがいいんだけど必要ないところでやられると
バグを追跡するのが困難になるというデメリットが残るだけなので困る場合がある。

2.はMTフレームワークで言われてるようなことだろうけど実物見て見ないとなんともいえないな。
それに特化できる実装アイディアを見たことがない。
おれもそういうシステム模索中だけど実用レベルで実装できる人間てそうそういないだろと思う。
並行化のためのシステムや実行順序の最適化・管理はそれなりのアイディアが必要だし。
だからこのネタは議論のネタとして楽しみではある。
で、そこまでやったらおれはタスクシステムとは呼びたくないわ。
だって実装できたのは>>2で言われているようなタスクシステムのおかげじゃないもんw。

3.4.はよく見るけどまわりに迷惑かけるからやめてくれw

737 :名前は開発中のものです。:2010/02/14(日) 17:31:15 ID:OC4y/061
>>732
>>733
>>735 (=>>732)

この流れw
糞まみれだな。

738 :名前は開発中のものです。:2010/02/14(日) 17:36:45 ID:e+nQn9Mg
>>734
>1.実行順番を動的に変更できる
なにこれ?どこで使うの?
壁判定とキャラ判定が逆になったりするの?

>2、3、4
笑えるほど意味ない

739 :名前は開発中のものです。:2010/02/14(日) 17:37:10 ID:gpTdAh1n
>>735
おれは>>2のような「タスクシステム」なしに必要な機能をC++べた書きで「ゲームをつくってる」。
具体的には毎フレーム処理用関数のあるクラスをメインループからベタに呼び出している。
切換はswitch。(FSMっぽくなる。)
これによるメリットはベタに処理が書かれているのでデバッガで直感的にデバッグしやすい。
またベタにコードにかくとコードを見るだけでの理解がしやすい。
このシステムには実行順番の動的変更機能はないがそれにより困ったことはない。おれはね。
これが「金が稼げる」と同じくらいのメリットかどうかはその人次第。

740 :名前は開発中のものです。:2010/02/14(日) 17:44:37 ID:Q6BMs8gS
ニート(仕事をしない人)に対して就職のメリットを解くのは
仕事をしないに対して仕事をするメリットを解けばよくて解りやすいんだが
タスクシステムのメリットはと聞かれても、何に対して話せばいいのかわからんからメリットがあるという説明がしづらいんだよな
タスクシステム自体も曖昧で、例えば実行順序を動的に変更できないものもタスクシステムと呼ばれていることがあるし
就職のメリットだって相手が何者かわからなければ、例えば相手が起業を主張してたり、パチプロだったりする可能性がある場合は
金が得られるじゃ通用しないわけだし

741 :名前は開発中のものです。:2010/02/14(日) 17:46:05 ID:e+nQn9Mg
つまり、本当は意味ないんだけど
仕方なく使ってるってことだね?

742 :名前は開発中のものです。:2010/02/14(日) 17:48:40 ID:eAxvOj2x
>>739
それこそ
「就職しなくても株やギャンブルで楽して金稼げるから就職のメリット無し」って
ニートが言いだしそうな理屈だな。
結局ID:ujwt9v5uの言うとおりなんだな。

743 :名前は開発中のものです。:2010/02/14(日) 17:52:42 ID:gpTdAh1n
>>740
何のために使ってるかを聞きたいんだよね。
で「ゲームが作れる」ならおれは>>2的なものならデメリットも多いし実際使わずにつくれてるから
疑問視するわけ。
次に言われてる実行順番動的変更ってあまり魅力感じないんだけど
これが「ゲームが作れる」に汎用的なメリットあるなら聞いてみたい。
なにか新しい考えがわかるかもしれないし。
で並行化のためにというならもう少し技術的な実体について触れて欲しい。
もしそれで使えると思ったら敬意を持って「タスクシステム」支持者になりますよ。
だって「タスクシステム」として教えてもらったシステムが有用なんだから。

744 :名前は開発中のものです。:2010/02/14(日) 17:53:46 ID:fCtHbjFq
各要素をそれぞれ独立したオブジェクトとして設計する。
それぞれがお互いに絶対依存しないようにする。
(ほかの要素の情報は必ず神様に頼んで取得する)
地形も弾も自機も 同一に見るインターフェースをひとつ用意する。

あとなんかあったっけ?

745 :名前は開発中のものです。:2010/02/14(日) 17:58:39 ID:gpTdAh1n
>>742
だから言ってるでしょ。説得は相手の考え方がベースになるから必ず成功するものではない。
>>730
とにかく論拠とそれに対する反論ということに意味があるんだよ。
無駄ジャン。わかりきってるジャン。じゃ情報量ゼロ。
すくなくともおれは
「実行順番の動的変更機能の必要性は低い」「べた書きでゲームつくれるしメリットもある」
といってるわけだからこれら2つが「俺とはまったく違う」「必要性・メリットはこういうときにある」
のどちらか位は情報くれないと意味がない。
「俺とはまったく違う」以上出せないならああそうかここから違うんだなってあきらめるしかない。

746 :名前は開発中のものです。:2010/02/14(日) 17:59:14 ID:e+nQn9Mg
>>744
ちょっとまって何をしゃべったの?
まさか、メリットの話をしてるわけじゃないよね?

747 :名前は開発中のものです。:2010/02/14(日) 18:00:08 ID:eAxvOj2x
・ジャンルを問わず様々なゲームに適用できる
・並列処理をうまい具合に実現できる
・ゲームの流れを自然な形で表現できる
・大規模なゲームも開発できる
・タスクごとに独立しているため、複数人で開発できる
なんでレス元に初めから出てるメリットを出さずに実行順番動的変更なんて
誰が言い出したかわからんへんてこな話をしてるんだ?

748 :名前は開発中のものです。:2010/02/14(日) 18:02:54 ID:e+nQn9Mg
>>747
全部根拠ないなw

749 :名前は開発中のものです。:2010/02/14(日) 18:05:35 ID:eAxvOj2x
>>748
あんたのいう根拠の基準を説明してくれ。


750 :名前は開発中のものです。:2010/02/14(日) 18:05:51 ID:gpTdAh1n
>>747
・ジャンルを問わず様々なゲームに適用できる

これはべた書きにもいえます。

・並列処理をうまい具合に実現できる

これはぜひ教えて欲しいので具体的なヒントください。

・ゲームの流れを自然な形で表現できる
・大規模なゲームも開発できる
・タスクごとに独立しているため、複数人で開発できる

これはそうは思いません。
少なくともべた書きよりデバッグは複雑になります。
これらはクラスベースオブジェクト指向でも同じことがいえるはずです。
(私の解釈ではタスクシステムはクラスの生成呼び出し部分のシステムのはずで
 そこがべた書きであってもこのメリットは消えないと思います。)
タスクシステム独自のどこが「クラスベースオブジェクト指向」以上のメリットがあるか
指摘する必要があります。

751 :名前は開発中のものです。:2010/02/14(日) 18:09:28 ID:hWfbVx4t
べた書きで毎回毎回コード書き直してたら
生産性悪すぎる

752 :名前は開発中のものです。:2010/02/14(日) 18:13:22 ID:gpTdAh1n
>>751
実際に書いたことある?
タスクシステム上でも生成・消滅は書くでしょう。
ここをベタに書いたのと生産性が違うと思いますか?
一段抽象化するということはデバッグするとき一段追跡するものが深くなる分面倒になります。

各タスク側自体はクラス記述に比べてなんら生産性の違いはないでしょう。
というかこちらは同じような形になるでしょう。

753 :名前は開発中のものです。:2010/02/14(日) 18:13:22 ID:e+nQn9Mg
>>751
それも根拠ないな
例えば5つのケースをベタ書きするのと
一箇所にまとめて書くのとじゃ

ベタは5箇所単純に手を入れればいいけど
一箇所にまとめた場合はそれぞれの差分がif文で分岐してるだろ
実行してみないとどこ通るかわかんねーぞ

結果として生産性最悪になるかもわかんねーなw
ぶっちゃけ早く帰れるのはベタ書きだぜ

っていうかそもそもタスクシステムがベタ書きの反対の表現に使えるかどうかも微妙だけどねw

754 :名前は開発中のものです。:2010/02/14(日) 18:15:57 ID:OC4y/061
>>751
まるでタスクシステムを介した機能モジュール群が
使いまわしに優れているかのような言い方だな。

ベタなコードだからこそ、どこども依存しないから、
切り離しが容易で、ライブラリ化しやすいんだろうが。

755 :名前は開発中のものです。:2010/02/14(日) 18:29:24 ID:eAxvOj2x
>>750
つまり、君にとってはべた書きで十分に思えるし並列処理の話はリンク先の
説明読んでも理解できなかった、と言ってるのね・・・

>>753
>ベタは5箇所単純に手を入れればいいけど
>一箇所にまとめた場合はそれぞれの差分がif文で分岐してるだろ
>実行してみないとどこ通るかわかんねーぞ
んー・・・
この考えだとタスクシステム云々以前に、ライブラリや共通処理の関数化とか
構造化プログラムレベルのことを否定しているように見える・・・
なんか同じような処理を少しだけ変えたコピペを量産する典型的なダメプログラマ
の発言に見えて怖いのですが・・・

756 :名前は開発中のものです。:2010/02/14(日) 18:30:36 ID:gpTdAh1n
>>755
すごいね並列化の話が>>2に載ってるんだ。
おれは理解できなかったよ。もしよければもう少しだけヒントくれないかな。

757 :名前は開発中のものです。:2010/02/14(日) 18:34:02 ID:OC4y/061
まー>>747を素直にメリットだと感じるような奴がタスクシステム使ってるってこった。
俺は、タスクシステムのメリットっつったら、
まず筆頭が「実行順序の動的な変更」だと思うがなぁ。
じゃなきゃ、
わざわざプログラムを細切れにしてまでリストに突っ込んでる
意味が無いよ。
並べ替える気が無いのに、なんでわざわざプログラムを断片化して
リストに突っ込む必要があるんだ?何のためのリスト?
って話になる。
それこそ支離滅裂で、メリット以前に意味すら無い。
プログラムを使いまわしたいってだけなら、関数で十分だからな。

758 :名前は開発中のものです。:2010/02/14(日) 18:45:53 ID:eAxvOj2x
>>756
普通に載ってると思うけど、何か別のページ見てるのかな・・・?
それとも並列処理の定義がこのページに載ってる使い方と君の想定が違ってるとか?
その場合はすまんが君の脳内定義がわからんのでこちらには答えようが無い。

>>757
ま、結局プログラマ個人の受け取りかた次第ということなんだろうけど。
そうなると >>679 のように、使ってる側の方が説得力があるな、個人的には。

759 :名前は開発中のものです。:2010/02/14(日) 18:52:00 ID:gpTdAh1n
>>758
いやいやリンク貼ってくださいよ

760 :名前は開発中のものです。:2010/02/14(日) 18:52:23 ID:fCtHbjFq
>>746
タスクシステムの設計がゲームによって異なるとしても
根っこになる揺るがない部分ってのは必ずあるはずで、
面倒でもそれって何かというのを書き出していった方が
建設的な議論になると思うんで、続きを書いてほしい。

知識の前提の共通化が先だよね。

761 :名前は開発中のものです。:2010/02/14(日) 18:56:08 ID:gpTdAh1n
>>758
見直してみたら
http://codezine.jp/article/detail/297?p=1
>並列処理をうまい具合に実現できる
これのことか・・・
http://ja.wikipedia.org/wiki/%E4%B8%A6%E5%88%97%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0

>並列コンピューティング(へいれつ-、parallel computing、並列計算、並列処理)とは、コンピュータにおいて複数のプロセッサで1つのタスクを動作させること。

じゃないのね。

762 :名前は開発中のものです。:2010/02/14(日) 19:02:25 ID:hWfbVx4t
> ・ジャンルを問わず様々なゲームに適用できる
>
> これはべた書きにもいえます。

これに対して

> べた書きで毎回毎回コード書き直してたら
> 生産性悪すぎる

と返しただけで別にタスクシステムに対してだけ答えたわけじゃないよ
フレームワーク等を利用したほうが生産性あがるでしょ?
コード書き直せばテストが増えてしまうし

763 :名前は開発中のものです。:2010/02/14(日) 19:06:24 ID:gpTdAh1n
>>762
この文脈ではタスクシステムの部分を「べた書きに置き換えても」という意味で書いたから
他の人もそう思ったんじゃないかな。
そりゃなんでも書き散らせば生産性が悪いのは同意しますよ。

764 :名前は開発中のものです。:2010/02/14(日) 19:06:43 ID:OC4y/061
掲示板で難しいこといってもどうせ伝わらないから、あえて簡単に書くけど、
タスクシステムのタスクの実行を並列化するってことは、
どのタスクをどの順番に実行してもかまわないってことで、
だったら、静的にタスクの実行順を決めてしまってもかまわないってことになる。
てことは、普通にtask1();task2();task3()...とベタでコードに書いてしまっても問題ないってことになる。

副作用に依存関係の無いタスク(並列化可能なタスク)
の実行に、
スケジューラ(タスクシステム)
は必要ないわな。

どの順で実行してもかまわないのにスケジューラ?はて、おかしいよな。
何のためのスケジュール?

実際にはどの順で実行して構わなくても、スケジューラは必要なんだけど、
それは>>2には書かれて無いし、話のレベルが違う。

765 :名前は開発中のものです。:2010/02/14(日) 19:40:42 ID:eAxvOj2x
>>764
んー・・・
>俺は、タスクシステムのメリットっつったら、
>まず筆頭が「実行順序の動的な変更」だと思うがなぁ。
と誰もメリットとして上げていない実行順序の動的な変更とやらを自分で上げてから

>どのタスクをどの順番に実行してもかまわないってことで、
>だったら、静的にタスクの実行順を決めてしまってもかまわないってことになる。
>てことは、普通にtask1();task2();task3()...とベタでコードに書いてしまっても問題ないってことになる。
とそれを自分で否定してるのは矛盾してるというか錯乱してるというか・・・

君の言ってることって少なくとも>>2で出てるタスクシステムとは直接関係ない話じゃない?
スケジューラ=タスクシステムと限定してしまってるところとか、君の脳内だけにある
何か特定のシステム相手に一人相撲とってるように見える。

766 :名前は開発中のものです。:2010/02/14(日) 19:43:42 ID:e+nQn9Mg
また>>2と俺タスクとの不一致ですね?
わかりますw

767 :名前は開発中のものです。:2010/02/14(日) 19:53:34 ID:OC4y/061
>>765
だったらお前の言うタスクシステムって何なんだ?
もっと言えば、お前の言うタスクシステム内にあるであろう、「タスクのリスト」、
あれはいったい何の為のリストなんだ?
プログラムってのは元より処理のリストで構成されてるのに、
なぜそれを自前で用意するの?なぜ重複して持つの?
func(){ task1(); task2(); task3(); /*←タスクのリスト*/ }
では駄目で、これと同等の物を自前のタスクリストで構成する理由は何?
順番の動的な変更(スケジューラ)目的以外に何があるの?
教えて。

768 :名前は開発中のものです。:2010/02/14(日) 20:09:35 ID:Q6BMs8gS
>>743
そもそも>>739ってそれだけの内容じゃわかんない部分もあるけどタスクシステムの範疇なんじゃないの?
実行順序の動的変更は不要だから省いて、関数ポインタは苦手だから使わないように変形したしたってだけで
ゲームオブジェクトって呼べるようなデータの配列なりリストなりはあるんでしょ?推測で悪いけど

実行順序の動的変更は描画に関することでスプライトとかと相性がいんだよ
並列化に関しては関わったことないから知らない

769 :名前は開発中のものです。:2010/02/14(日) 20:22:00 ID:OC4y/061
配列使ったらタスクシステムですか。

そりゃ、配列の中に関数ポインタが入ってたらタスクシステム的だがな。

>実行順序の動的変更は描画に関することでスプライトとかと相性がいんだよ
描画エンジンの仕事。

770 :名前は開発中のものです。:2010/02/14(日) 20:25:36 ID:Q6BMs8gS
>>769
それで理解はできたの?

771 :名前は開発中のものです。:2010/02/14(日) 20:27:17 ID:gpTdAh1n
>>768
これをタスクシステムと呼ぶんならそういう立場なんだろうからそれでいいよ。
おれは不自然だと思うから呼ばないという立場だけどね。

まずcodezineの記事はまったく用なしになるね。
少なくともcodezineの記事はタスクリストの切換生成消滅管理技術実装の説明であって
最初に出てくる長所がなぜ生まれてきてるかの説明が一切ない。
この長所は技術的には、毎フレーム処理関数あるクラスによる分割によって生まれている。
これってC++とゲームループというアイディアから自然に生まれるものであって
「タスクシステム」と呼ぶのは不自然だと思う。
事実そのように説明されずタスクリストの管理に解説が割かれている記事になっている。

>関数ポインタは苦手だから使わないよう
この精神がおかしい。必要ないものをなぜわざわざ苦手と表現するのか。
関数ポインタは継承があれば(このレベルでは)必要なくなることくらいは理解してるでしょ?
あとスプライトがライブラリもしくはハードで対応してない状況にお目にかかったことがない。

772 :名前は開発中のものです。:2010/02/14(日) 20:33:41 ID:eAxvOj2x
>>767
>だったらお前の言うタスクシステムって何なんだ?
>>2 でいいんじゃない?スレ元のリンクだからこのスレはこれを共通知識として話するんでしょ?
実際には今まで使ったことあるのはこんな単純なコードでは無かったけど、まぁ考え方は共通してるから問題無し。

>プログラムってのは元より処理のリストで構成されてるのに、
>なぜそれを自前で用意するの?なぜ重複して持つの?
その理屈だとJAVAとか.NETのVMとかもレイヤー的に重複してるから不要ってことになるな。
VMはたとえ話だけど、重複してても別に持ったほうがメリットのあるケースってのが存在することは理解できるかな?
重複=不要、では無くメリットがあれば重複も可、ということ。

それが理解できるなら、多人数開発とかゲームオブジェ単位の生成・消滅とか、
ゲーム作るのにあった粒度の単位で切り分けられたほうがいいケースもあるかもね、と想像できそうだけど。

>では駄目で、これと同等の物を自前のタスクリストで構成する理由は何?
駄目、とは言ってないんだけどね。
別にその方法じゃなくても、タスクリスト使ったほうがいいケースもあるんじゃない、といってるだけの話。
その例みたいにtaskが3つしかなくて生存期間も全て一緒、みたいなケースならべた書きの方がいいかもね。

あぁ、あとタスクシステムとか以前にべた書きが最高、と単純に言い切ってしまうようなのは別の意味で・・・

>順番の動的な変更(スケジューラ)目的以外に何があるの?
>>747

ちょっと不思議なんだけど、こちらは今まで順番の動的な変更とやらが必要になったケースってあんまり遭遇してないし
タスクシステムのメリットにそんなのが出てるのも見たこと無いし・・・
どうも >>2 とは別物に見えるんだけど、君の言ってるタスクシステムって具体的に何?


773 :名前は開発中のものです。:2010/02/14(日) 20:44:12 ID:Q6BMs8gS
>>771
なんで不自然だと思うの?
っていいかたは悪いけど、俺もこのスレは>>2みたいな「古典的」タスクシステムのスレなのかなと思ってたけど
スレの流れとか見ていて、もっと広義にタスクシステムを捉えるスレだと判断した
そもそも>>2は古典であって現在じゃ通じない部分も多いから捉われない方がいいし
タスクシステムをゲームオブジェクトを扱う方法ぐらいで捉える方がいいんじゃないかと提案するって感じだろうか

codezineの記事は読み返してなんか書くことがあったら書くけど、おそらく大したこと書いてないだろう

>>739でswitchって書いてあったからswitch,case文で関数を呼ぶようなものだと思ったんだけどクラスでメンバ関数を呼び出したりもしてるのだろうか?
>>769は関数ポインタつかってたらタスクシステム的だって認めてるし
スプライトに関してはこれだけじゃ解らないかもと思ったから説明するけど

774 :名前は開発中のものです。:2010/02/14(日) 20:47:03 ID:e+nQn9Mg
でも説明をしてくれる人に悪いんだけど
口を開くたびに>>2とは違う俺タスクを紹介してくれるよね?w

775 :名前は開発中のものです。:2010/02/14(日) 20:53:53 ID:gpTdAh1n
>>773
>>739もタスクシステムと呼ぶのならば特に反論はない。
ただ>>2>>739ではタスクリストの管理実装の有無に差がある。
つまり>>2はあまり必要性のない技術について解説してるってことでいい?
実際この実装が邪魔になることが多いからね。

ただ並行処理に対応するためには>>2でいうタスクシステム的なものが必要になると思われるから
そういう技術はおれもチャレンジ中。
やっぱりひとつ抽象化するために実装・デバッグしづらくなるし
そもそも並行処理のスケジューリングは依存関係の管理など解決が必要な問題がある。

776 :名前は開発中のものです。:2010/02/14(日) 21:05:55 ID:gpTdAh1n
三点リーダーやめろよ

777 :773:2010/02/14(日) 21:16:00 ID:Q6BMs8gS
スプライトはハードで実装されているんだけど、その性能が不十分というか
レイヤー数が4枚とかしかない場合があって、
それ以上の描画優先度(重なっている部分をどう表示するか)を決めたいときには、登録順序でどうにかする必要がある。
そうするとスプライトセットオブジェクトかなんか作って登録前にソートする方法もあるだろうけど、
ゲームオブジェクトを描画優先度順に並べられるようにしとけば処理の中でスプライト登録やっちゃえて簡単に終わる

778 :名前は開発中のものです。:2010/02/14(日) 21:29:40 ID:OC4y/061
>>772
> 別にその方法じゃなくても、タスクリスト使ったほうがいいケースもあるんじゃない、といってるだけの話。
随分弱い言い方になったな。ではそのケースとやらを教えてくれ。
.netやJAVAのVMは明確な目的があって使うものだ。
タスクシステムの「タスクのリスト」がどういったケースで有用なのか、
何のために必要なのか。
動的な実行順序変更以外に教えてくれ。

779 :名前は開発中のものです。:2010/02/14(日) 21:35:51 ID:oYbjKJUB
データ構造の連結リスト(双方向リスト)に関数アドレスやら優先順位やらをつけて
後に纏めて処理できるのがタスクシステムの基本的な部分でしょ。

と、これだけでもタスクシステムの構造的なメリットデメリットがわかる。
この構造的メリットが活きてくるケースは少なくないと思うけどなぁ。

タスクシステムに限らず、活かせないのなら使わないほうが良いですね。
ここでメリットを聞いてる人はそういう人でしょう。

780 :名前は開発中のものです。:2010/02/14(日) 21:36:12 ID:eAxvOj2x
>>778
>動的な実行順序変更以外に教えてくれ。
>>747

これで3回目ぐらい?
「おじいちゃんごはんはさっき食べたでしょ」って感じ・・・

781 :名前は開発中のものです。:2010/02/14(日) 21:50:02 ID:OC4y/061
いっとくが、タスクのリストってのは
仕事のリスト、処理のリスト、プログラムのリストってことで、
データのリスト、ゲームオブジェクトのリストではないぞ。
ゲームオブジェクトやデータを配列やリストで管理するなんてことは誰でもすることだ。

>>780
タスクシステムはいわばVMもどきなんだから、そりゃやろうと思えば何でも出来る。
だから>>747が出来るのは当たり前。でも使わなくても>>747は出来る。
あえて使うのは何故かと聞いているのだが。

>>779
データ構造に関数アドレスを付けるんですか、そうですか。
俺はデータ構造はデータ構造、制御構造は制御構造で別物で、
交ぜるのは泥沼化の入り口だと思うがなぁ。

>この構造的メリットが活きてくるケースは少なくないと思うけどなぁ。
具体的によろ。

782 :名前は開発中のものです。:2010/02/14(日) 21:58:56 ID:eAxvOj2x
>>781
>仕事のリスト、処理のリスト、プログラムのリストってことで、
>データのリスト、ゲームオブジェクトのリストではないぞ。
その俺俺タスクシステムの定義は何・・・?
>>2のタスクシステムはデータ、ゲームオブジェクトのリストという機能も普通に含んでるけど。
元々のタスクシステムからそれら機能を勝手に引いた時点で、君の言う”タスクシステム”
の話は君の脳内でしか意味の無い話になってるんですが。


783 :名前は開発中のものです。:2010/02/14(日) 22:03:42 ID:OC4y/061
具体性がなくなってきたから。

for(;;)/*メインループ*/
{
  obj1.update();
  for( size_t i=0; i<obj2_list.size(); ++i )
  {
    obj2_list[i]->update();
  }
  for( size_t i=0; i<obj3_list.size(); ++i )
  {
    obj3_list[i]->update( x, y );
  }
  for( size_t i=0; i<obj2_list.size(); ++i )
  {
    obj2_list[i]->update( u, v, w );
  }
}

これじゃ駄目な理由はいったいなんだ?
引数だって自由に使えるし、こっちのが良いだろ。
ただ、動的な実行順序の変更だけは出来ないけどな。
お前らの欲しいのって、タスクシステムじゃなくてゲームオブジェクトDBなんじゃねぇの?

784 :名前は開発中のものです。:2010/02/14(日) 22:08:26 ID:hWfbVx4t
それ
"ゲームの流れを自然な形で表現"
することが出来ていると言えるの?

785 :名前は開発中のものです。:2010/02/14(日) 22:10:47 ID:e+nQn9Mg
>>784
ゲームの流れ?はぁ?

786 :名前は開発中のものです。:2010/02/14(日) 22:11:30 ID:eAxvOj2x
>>783
んー・・・
>>782の時点で、君の言うタスクシステムは
君以外の人間にとっては無関係というか・・・

君の脳内タスクシステムを使うよりは>>783の方がいいと君が判断するなら
君にとってはそれが一番いいんじゃない?
としか言えんなぁ・・・

787 :名前は開発中のものです。:2010/02/14(日) 22:12:23 ID:OC4y/061
>>782
>>2のタスクシステムは便利と感じ、
俺の言う純粋な純粋なタスクシステムは要らないと感じるなら、
単純に引き算すればよい。
(>>2のタスクシステム)-(純粋なタスクシステム)=(ゲームオブジェクトDB)

for(;;)
{
  container = db::select(型名);
  for( itr=container.begin(); itr!=container.end(); ++itr )
  {
    itr->method();
  }
}

これが出来りゃ満足なんだろ。

788 :名前は開発中のものです。:2010/02/14(日) 22:19:54 ID:eAxvOj2x
>>787
>これが出来りゃ満足なんだろ。
君はいったい何と戦ってるの?

「純粋な純粋なタスクシステム」とやらを勝手に脳内で妄想して
「(俺の考えた)タスクシステムは使えない!」って・・・誰に向かって叫んでるの?鏡?

まさに一人相撲。

789 :名前は開発中のものです。:2010/02/14(日) 22:29:41 ID:OC4y/061
>>786
残念ながら、俺の言ってるタスクシステムの方が、
>>2よりも「まだ」まともなんだよ。
>>2は制御構造とデータ構造をごった煮にしてる時点で、
純粋なタスクシステムよりも寄りいっそうたちが悪いんだよ。
タスク(処理)とゲームオブジェクトが密接に結びついてるなんておかしいだろ。別のものなのに。
複数のオブジェクト間にまたがる処理は何処に書くんだって話になる。
ゲームオブジェクトとゲームオブジェクトの間をとりもつのが「処理(タスク)」の重要な機能でもあるのに、
それがゲームオブジェクトにくっついてるって変だよね。

>>788
ここまで提示されても、自分の陥ってる状況が分からないって重症だぞ。
純粋なタスクシステムってのは>>2にも含まれてる。
>>2からアロケーターやらtype値検索機能やらを取り除いて
名前どおり、タスクの処理をする部分のみを抽出したのが「純粋なタスクシステム」だ。
それが本当に必要なのかどうかって話だ。
必要ないなら、>>2からタスクの処理をする部分だけを取っ払えばよい。
すると残るものはゲームオブジェクトDBだ。

790 :名前は開発中のものです。:2010/02/14(日) 22:32:50 ID:e+nQn9Mg
結局、タスクシステムなんていっても内容はグローバルアクセスできる
ごった煮ウンコリストだからなぁ・・・設計とか完全無視の本当のウンコなのに
よくこんなもん使おうとするもんだよ
の割りには設計云々語ろうとするアフォばっかりだな

791 :名前は開発中のものです。:2010/02/14(日) 22:33:18 ID:gTtOteDI
チンカスアンチ共は情けないな。目の前に最高のエサがそこに転がってるのに…
珍しくタスクシステム信者が現れているんだから反転攻勢のチャンスよ?
火力をID:eAxvOj2xに集中したまえよ。いくらなんでもこの程度は倒せるだろ…

792 :名前は開発中のものです。:2010/02/14(日) 22:42:41 ID:eAxvOj2x
>>789
>残念ながら、俺の言ってるタスクシステムの方が、
> >>2よりも「まだ」まともなんだよ。
すまんが、いきなり
「俺の妄想の方が一般に言われてるタスクシステムよりまともなんだ」
と言い出して

>ここまで提示されても、自分の陥ってる状況が分からないって重症だぞ。
とか言われても・・・
「そうか、重症なんだな。かわいそうに。」と思うだけというか。

君の脳内では何か「純粋なタスクリスト」について考えがあるみたいだけど
それこそ >>2 みたいに図解つきで説明してくれないかな。
いきなり君の妄想を暴露されても君以外の人間にはチンプンカンプン・・・

793 :名前は開発中のものです。:2010/02/14(日) 22:58:37 ID:OC4y/061
お前以外は皆分かってんだよ。
ゲームオブジェクトとタスクの結びつきが無いタスクシステムが
純粋なタスクシステムだ。
各タスクはコンテキストを持つだろうけど、
そこはゲームオブジェクトを入れるための領域ではない。
局所的なFSMの状態変数やゲームオブジェクトへのポインタなどを入れるWork領域。
そこに何を間違ったかゲームオブジェクトそのものを突っ込んで腐った物が>>2
お前は>>2のtypeが好きらしいが、あれは最も下劣で目も当てられない代物。
ゲームオブジェクトの管理がしたいなら、DB的なものを作ればよいし(データ構造視点)、
実行順序の動的変更や、CellのSPEに仕事投げたいなら、純粋なタスクシステムを作ればよい(制御構造視点)。
>>2の出る幕は無い。


794 :名前は開発中のものです。:2010/02/14(日) 22:58:55 ID:hWfbVx4t
>>790
ブログに書かれてることを引用しておきながら
人のことをアホ呼ばわりして
設計云々語るとは君はすごいな

795 :名前は開発中のものです。:2010/02/14(日) 23:05:41 ID:eAxvOj2x
>>793
>お前以外は皆分かってんだよ。
そーかぁ・・・
>>2のリンク先ページ書いた人はみんな分かってなかったみたいだけど
「僕の考えてることは皆も同じように考えてる」と疑いなく考えちゃう人なのかな・・・

>タスク(処理)とゲームオブジェクトが密接に結びついてるなんておかしいだろ。別のものなのに。
これ、純粋にOOPのデータと振る舞いの隠蔽によるカプセル化を否定してる考えみたいに見えるけど
クラスがメンバーとメソッド持つのもごった煮と考える人なのかしら?

796 :名前は開発中のものです。:2010/02/14(日) 23:23:24 ID:gTtOteDI
>>792
>君以外の人間にはチンプンカンプン・・・

いや申し訳ないけどそらねーわ
タスク = OBJ、 1タスク = 1OBJ とか、こういう勝手な固定観念に縛られたCodezine状態の
自称システムが古典です古典タスクシステムなんですーとか言われてもピンと来ないなぁ

あーいうお粗末な自作連結リストにオブジェクト格納しましたーみたいなものを
タスクシステムでーすとか喧伝してる人は10年くらい前からちょくちょく見るように
なったのは確かだけどね

ま、ローカル用語、バズワードですから、何をどう呼ぼうが好き好きだし、知ったこっちゃないけど
古典タスクシステムというくらいだから古典があるんだろうね?どれ?Codezineの記事か?w

797 :名前は開発中のものです。:2010/02/14(日) 23:27:35 ID:OC4y/061
>>795
> >>2のリンク先ページ書いた人はみんな分かってなかったみたいだけど
タスクシステムの擁護派でも、>>2を擁護できる奴は居ない。お前ぐらいだ。

> >タスク(処理)とゲームオブジェクトが密接に結びついてるなんておかしいだろ。別のものなのに。
> これ、純粋にOOPのデータと振る舞いの隠蔽によるカプセル化を否定してる考えみたいに見えるけど
これはちょっと表記がまずかったな。
「全てのタスク(処理)とゲームオブジェクトが密接に結びついてるなんておかしいだろ」
と変えとく。

798 :名前は開発中のものです。:2010/02/14(日) 23:36:22 ID:e+nQn9Mg
>>794
引用?どこどこ?

799 :名前は開発中のものです。:2010/02/14(日) 23:37:10 ID:gTtOteDI
>>795
>>2のリンク先ページ書いた人はみんな分かってなかったみたいだけど

んなこたーない。>>2の中ではlogician lordを書いた人間はタスクとOBJの区別を
つけている。松○さんとかいう素人の方は理解できなかったみたいだけど
Cマガで特集記事書いたり禿出版で何冊もタスクシステム本を出したりして
アマチュアの学生相手に布教・普及させようと頑張ってたね。その残滓が君か?

800 :名前は開発中のものです。:2010/02/14(日) 23:40:06 ID:eAxvOj2x
>>797
>タスクシステムの擁護派でも、>>2を擁護できる奴は居ない。お前ぐらいだ。
やっぱり「僕の考えてることは皆も同じように考えてる」と疑いなく考えちゃう人っぽいなぁ。

>「全てのタスク(処理)とゲームオブジェクトが密接に結びついてるなんておかしいだろ」
とりあえず>>2のタスクシステムのどこにも
「全てのタスク(処理)とゲームオブジェクトが密接に結びつく」
という前提は見つからないのだが・・・
全てのタスク云々はどこから生まれた話なんだろう?これも俺俺タスクシステムの脳内定義?


801 :名前は開発中のものです。:2010/02/14(日) 23:43:27 ID:e+nQn9Mg
で、結局メリットはどうなったの?w

802 :名前は開発中のものです。:2010/02/14(日) 23:45:16 ID:hWfbVx4t
>>798
>505のリンク先

803 :名前は開発中のものです。:2010/02/14(日) 23:46:01 ID:e+nQn9Mg
>>802
はぁ?どこ引用したか?って聞いてるんだよ
さっさと出せよボケ

804 :名前は開発中のものです。:2010/02/14(日) 23:48:42 ID:hWfbVx4t
引用がばれたら逆ギレかw
これは恥ずかしいww

805 :名前は開発中のものです。:2010/02/14(日) 23:53:48 ID:OC4y/061
だれかー、俺の替わりにID:eAxvOj2xの相手してー。
特にタスクシステム擁護派に相手して欲しい。
お前らの残党だろ。引き取って面倒みろよ。

>とりあえず>>2のタスクシステムのどこにも
>「全てのタスク(処理)とゲームオブジェクトが密接に結びつく」
>という前提は見つからないのだが・・・

http://codezine.jp/a/article.aspx?aid=297
>シューティングゲームを作る場合は「自機」「敵」「敵出現制御」「得点管理」「タイトル画面」など、
>ゲームを構成する全ての要素をタスクとします。

806 :名前は開発中のものです。:2010/02/14(日) 23:57:26 ID:e+nQn9Mg
>>804
引用場所を貼ったら終りだけど?
俺がいつ引用なんて貼った?

807 :名前は開発中のものです。:2010/02/14(日) 23:58:14 ID:uBD0Sdr5
今日一日でずいぶんスレ伸びたな。

今日のアンチは押され気味というか自爆が多いなwww
陰湿なID:eAxvOj2xと煽られて顔真っ赤なID:OC4y/061の戦い
まぁまぁ楽しめたぞwww

808 :名前は開発中のものです。:2010/02/14(日) 23:59:15 ID:gTtOteDI
>>801
タスクシステムという言葉のメリットか?これの響きは厨二魂を心地よく擽る。
ID:eAxvOj2x みたいな右も左も分からない子を幻惑して遊ぶことができる。

「よくわかんないけどタスクシステムはすごいに違いない!」
「タスクシステムありがたやナンミョホーレンゲー」

こういう信者状態に至るまで育てたらアンチの檻に放り込んで彼らとの相互作用
(化学反応・拒絶反応)を観察する。アンチとの触れ合いの末に信者が強烈な
アンチにジョブチェンジする場合がある。レアポケモンだ。ハード君ともいう

タスクシステムを信じて就活したら大手全部落ちたのではないだろうか。
アンチはゲームプログラマに対する逆恨みの仕方がとにかく半端ない。面白い

809 :名前は開発中のものです。:2010/02/14(日) 23:59:45 ID:e+nQn9Mg
>>747
あと、こんな話にならない嘘を書いちゃってる人とかなんも感じないわけ?
結局、挙げてもメリットとして説明できないでしょ?
なんでテキトーに感覚だけで主張しちゃうの?
それで何度も会社で失敗とかしてない?

810 :名前は開発中のものです。:2010/02/15(月) 00:00:23 ID:UBAP566f
引用しておいて白々しいw

811 :名前は開発中のものです。:2010/02/15(月) 00:05:34 ID:N6p1zrDK
ぶっちゃけ>>747も同じメンタリティでしょ?
多分、これがメリットになるんじゃないかな?とか検証もしないで
テキトーに主張したんでしょ?
そんなことばっかりやってるよね?
嘘吐きだよね君たち

812 :名前は開発中のものです。:2010/02/15(月) 00:08:46 ID:5sdrS/YH
定義のはっきりしないものを感覚以外の基準で判断しようとしても
みんなバラバラのこと言い出すだけで結論なんて出ないだろ。

結局、感覚で判断する >>679 とか >>747 程度の答えしか出ないよ。

813 :ID:OC4y/061 日付変わったね:2010/02/15(月) 00:10:13 ID:JP9Tc4yb
>>808
そこまで妄想しないと自分を保てなくなってるんなら、
お前こそジョブチェンジの頃合かと。気に病むことは無い。
若気の至りみたいなのは誰にでもあるよ。

814 :名前は開発中のものです。:2010/02/15(月) 00:13:32 ID:920Y2zqE
ID:OC4y/061 ってもしかしてハード君なの?

815 :名前は開発中のものです。:2010/02/15(月) 00:21:00 ID:JP9Tc4yb
>>814
>>720

816 :名前は開発中のものです。:2010/02/15(月) 00:27:38 ID:920Y2zqE
そうか、ハード君はタスクシステムに対する旺盛な好奇心が目を引くね。
君はタスクシステムの大ファンだよ。これからも幻惑され続けてほしい

817 :名前は開発中のものです。:2010/02/15(月) 00:41:11 ID:xRwaTxwn
>>781
データ構造はデータ構造、制御構造は制御構造で別物って当たり前でしょ?

818 :名前は開発中のものです。:2010/02/15(月) 00:50:24 ID:0XmofUdi
タスクシステムなんてTCBの実行と描画を同時に行っていた時代の遺物
もしも、オブジェクトの移動、当たり判定、描画etc.を別の処理単位に分けるなら
TCBで全てを済ませるタスクシステムとは相性が悪い

何で、タスクシステムは実行順番を動的に変更できる必要があったのかというと
TCBの実行時に描画も行うから、TCB自体を実行前にZソートしておく必要があったため
実行順とは別の順序で描画できるようなフレームワークなら必要ない

結局、タスクシステムを使ったのはコード量を節約したかったからじゃないだろうか
TCBの最大数が分かってるにもかかわらずtask1();task2();task3()...としなかったのは
双方向リストとイテレータの方がコード量が少なくてすんだのかもしれない
(俺はハード屋じゃないから実際のは分からないけれど)

819 :名前は開発中のものです。:2010/02/15(月) 01:28:57 ID:JP9Tc4yb
>>816
まかせとけ。
俺の理想のタスクシステムはこれ。
まずもって、タスクは「処理」だから、書くべき場所は関数の中。まーこりゃ大前提だわな。
void function()
{
  task1
  {
    //処理1をここに書く
  }
  task2
  {
    //処理2をここに書く
  }
}
もちろん書いた順に実行されることも保障される。
ところで、taskのくだりは無くても支障ないから、取っ払う。
void function()
{
  //処理1をここに書く
  //処理2をここに書く
}
そうすると普通のプログラムとなり、同時に俺の追及する理想のタスクシステムも完成する。
だから俺は、タスクシステムのアンチであり、同時に信者でもある。

820 :名前は開発中のものです。:2010/02/15(月) 02:10:20 ID:bh6op2hi
>>819
class TamaHoge : public Hoge{
 public void shori{
  // 弾の処理
 }
}
Class TekiHoge : public Hoge{
 public void shori{
  // 敵の処理
 }
}
とかやっといて、オブジェクトを適当に作って適当に順次shori()を呼び出す
のがタスクシステムの原型になるんじゃないの?
あと、書いた順に実行されることは必須じゃないんじゃない?

821 :名前は開発中のものです。:2010/02/15(月) 02:30:21 ID:7o/YpQTX
>>820
それは仮想関数を使った多態をコンテナと組み合わせたものだね。

仮想関数は便利だ。派生クラスで好きにデータを追加しながらクラスごとに動作を
記述することができるからね。

コンテナは便利だ。オブジェクトが増えたり減ったりするのを実に素直に書き表す
ことができるからね。

で、これを原型として何を加えると「タスクシステム」になるの?
何か加える必要があるの?

822 :名前は開発中のものです。:2010/02/15(月) 02:42:38 ID:bh6op2hi
>>821
何を足すかは知らん。これで全部かもしれん。

つか、うちはほとんどこれっぽいのでやってるので
これをタスクシステムというなら、確かに便利です。

823 :名前は開発中のものです。:2010/02/15(月) 02:44:17 ID:bh6op2hi
つーか、これだとシステムってんじゃなくてスタイルだよな。様式?

824 :名前は開発中のものです。:2010/02/15(月) 03:18:22 ID:ngtxgrVY
>>819>>820
これがタスクシステムというならああそうなのって思うが
そう説明してる「タスクシステム」って少なくとも>>2じゃないな。

825 :名前は開発中のものです。:2010/02/15(月) 03:41:44 ID:xRwaTxwn
難しく考えなくていいんじゃ?

いろんな処理をタスクという単位にして
リストで繋いで処理する事にタスクシステムって名前が付いてるだけ。
>>2のWhite Paper - Programming に「処理関数へのポインタ付きワーク構造体の連結リスト」って書いてあるし、
細かく決まりがあるわけじゃないでしょ。

「処理関数へのポインタ付きワーク構造体の連結リスト」な機能があるなら、タスクシステムって言えちゃうんだろう。

OC4y/061とかe+nQn9Mgみたいな人って相手にすると疲れるよね。。。。

826 :名前は開発中のものです。:2010/02/15(月) 07:02:37 ID:cbly0qco
引数っての何渡すんだろ
引数なしで統一した方が扱いやすいと思うのだが
それに一々毎回毎回引数渡すのやだな

827 :名前は開発中のものです。:2010/02/15(月) 08:33:19 ID:ngtxgrVY
>「処理関数へのポインタ付きワーク構造体の連結リスト」
これがいらないっていわれてるんだが

828 :名前は開発中のものです。:2010/02/15(月) 09:14:04 ID:FcwOh6Xd
>>827
C++なら不要だよね
Cでの話じゃない?

829 :名前は開発中のものです。:2010/02/15(月) 09:29:03 ID:TmV+tuR/
C/C++関係なく<連結リスト>はなくても動的変更なければ必要ない。
<リスト>ならC/C++ともにないと困難。
配列や呼び出しコード列挙もリストといえばリスト。

830 :名前は開発中のものです。:2010/02/15(月) 13:54:09 ID:vBkTf+IV
だからオールアセンブラ時代のテクだっつーの

タスクシステム使うとメモリ使用量も把握しやすいし、複数人で開発もできる
オールアセンブラでそれをやるのは大変

今あえてこのシステムを使う必要はないだろ

831 :名前は開発中のものです。:2010/02/15(月) 17:58:56 ID:n4qXt3PM
シーン管理もタスクシステムも同じっしょ

832 :名前は開発中のものです。:2010/02/15(月) 18:03:04 ID:TJaa1Km+
>>831
シーン管理?

833 :名前は開発中のものです。:2010/02/15(月) 22:34:52 ID:920Y2zqE
>>818
> タスクシステムなんてTCBの実行と描画を同時に行っていた時代の遺物

どういう話なのか知らんけど
昔のBGとOBJを表示するハードのことなら、あれラインバッファだから
V-BLANK期間内は描画処理というのはやんないよ。パターンテーブル
(VRAM)の書き換えは毎フレームゴリゴリやるような話じゃないし

> もしも、オブジェクトの移動、当たり判定、描画etc.を別の処理単位に分けるなら
> TCBで全てを済ませるタスクシステムとは相性が悪い

んなこたない。ひとつのオブジェの1フレーム分の差分処理を1タスクで
ドベーっと一気にやる必要はない。むしろそうしないことのが多い
logician lordの記事でも移動と当たり判定のタスクは分けてるでしょ

834 :名前は開発中のものです。:2010/02/15(月) 22:45:23 ID:l7qhUG1T
logician lordの記事ってなんですか

835 :名前は開発中のものです。:2010/02/15(月) 22:55:19 ID:bh6op2hi
>>834
>>2の記事あん♥

836 :名前は開発中のものです。:2010/02/15(月) 23:18:11 ID:920Y2zqE
>>819
相変わらず進歩ないな。昨夏から同じこと叫んでるだろ君
プログラマの責任の下でそんなふうに性的に列挙、記述できることばかりなら
それでやってりゃいいんだけどよ、おめーみたいなお気楽な庶民と違って
王様は気苦労が多いんだよ。おわかりになって?

837 :名前は開発中のものです。:2010/02/16(火) 08:25:29 ID:XV0KdIev
なんかタスクシステム許すまじ!って感じの人がちらほらいるけど
トラウマかなんかかな?
高級言語メインの現在でもアセンブラだって知ってる方がおいしいし
古い知識でも無いよりあったほうが飯の食いやすい業界だと思うんだけどな
そりゃ新しい技術の勉強だけで手一杯ってのは分かるけどもさ

838 :名前は開発中のものです。:2010/02/16(火) 08:30:08 ID:KVp6SKGG
おまえはレスも読めないのか

839 :名前は開発中のものです。:2010/02/16(火) 08:36:11 ID:VbGlioXC
翼システム

840 :名前は開発中のものです。:2010/02/16(火) 09:36:42 ID:ckg3nTQc
Google 検索 "タスクシステム" 1 年以内 日付順
http://www.google.co.jp/search?tbo=1&tbs=qdr:y,sbd:1&q=%22%E3%82%BF%E3%82%B9%E3%82%AF%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%22

841 :名前は開発中のものです。:2010/02/16(火) 11:54:02 ID:xvmuP10b
もう十分議論したわけだから先に進まないと

842 :名前は開発中のものです。:2010/02/17(水) 01:53:19 ID:LQ1cgj9u
>>837
彼らは裸の王様とか言ってるから自分には何も理解できないと言ってるんでしょ。

つまり、トラウマというより何も無いということにしないと
自分が馬鹿ということになって自我が崩壊しちゃうから
必死になってる、と。

普通のプログラマなら>>2見ても古いやり方だねぇ、程度で終わって
今さら特にこだわることも無いんだけど。
あれを見て何一つ理解できない人たちにとっては、自分は馬鹿という強迫と
見えないゆえに何かすごい秘密でも隠されてるように感じるのかね。

裸の王様ってのはいいたとえだね。逆説的に彼らの馬鹿さを証明してるwww

843 :名前は開発中のものです。:2010/02/17(水) 01:55:58 ID:HzkflD/c
>>842
裸の王様読んだことなさそうだなw君w

844 :名前は開発中のものです。:2010/02/17(水) 02:09:26 ID:UIfPBDxO
>>840
まだちらほらと新しく「タスクシステム」と名のつくコードが生まれているけども、
全体的に数はあんまりなくて、ゆっくりと絶滅に向かっているようで安心した。

845 :名前は開発中のものです。:2010/02/17(水) 02:09:49 ID:AreEMr0m
>>842はちょっと馬鹿にしすぎで意地悪に見えたけど
>>843みたいに皮肉られてるのすら気づかないレベルではしょうがないのか・・・

846 :名前は開発中のものです。:2010/02/17(水) 02:12:15 ID:HzkflD/c
だって>>842の文章って裸の王様のストーリー知ってたらおかしいだろ明らかに
突っ込んでほしいの?w

847 :名前は開発中のものです。:2010/02/17(水) 02:27:19 ID:AreEMr0m
サンタクロースを信じてる幼稚園児並みに純粋なんだね・・・
それぐらい純粋な人じゃないとタスクシステムのアンチなんて奇特なことは出来ないんだろうね・・・

848 :名前は開発中のものです。:2010/02/17(水) 09:09:37 ID:4hn/aGE3
また煽りあいか。技術的な話しろ。

849 :名前は開発中のものです。:2010/02/17(水) 17:34:42 ID:66llNhrl
タスクシステム否定派が定期的に湧くから荒れる
先人の遺した技術を今更否定した所で誰が得すんだよw

次スレがあるなら
・タスクシステム(>>2)での実装を強要するものではありません
・アンチな話題は専用スレを立ててください
ってテンプレに入れといたら荒れなくなるかも知れんなw
一々明文化せんといけんのがかなりアホ臭いが

850 :名前は開発中のものです。:2010/02/17(水) 18:22:34 ID:9BJtIeOd
アホ臭いのはタスクシステ(ry

851 :名前は開発中のものです。:2010/02/17(水) 18:38:01 ID:INTDuU9t
アンチがいなくてスレが盛り上がるのか?

852 :名前は開発中のものです。:2010/02/17(水) 18:41:00 ID:4xsUzPyK
基地外アンチと基地外信者が他のスレに迷惑をかけないように隔離するのが
このスレの存在意義だろう?

853 :名前は開発中のものです。:2010/02/17(水) 19:32:25 ID:wwMsnX/i
アンチはどのようなクラス設計をしているか教えて欲しい。

854 :名前は開発中のものです。:2010/02/17(水) 19:48:07 ID:HzkflD/c
>>853
フツーだよ
君らはフツーよりメリットがあるからタスクシステムを使うんだから
もちろんフツーがどんなのかなんて説明の必要すらないよね?
ね!

855 :名前は開発中のものです。:2010/02/17(水) 20:06:56 ID:INTDuU9t
俺は普通にオブジェクトのリストを

856 :名前は開発中のものです。:2010/02/17(水) 20:51:30 ID:wwMsnX/i
>>854
ふつうってなんだよ
ゲームによって変えるのかね

857 :名前は開発中のものです。:2010/02/17(水) 21:38:46 ID:l4ndeYei
作り方かえるって言われてもなぁ。
描画エンジンと物理エンジンと当たり判定ライブラリと
サウンドエンジンとメモリアロケータとその他もろもろ集めてきて、
ゲームロジック部と繋ぎ合わせるだけだしなぁ。

858 :名前は開発中のものです。:2010/02/17(水) 21:51:29 ID:l4ndeYei
ゲームによって変えるのは当たり前というか。
だって、仕様が違うんだからしかたない。
仕事の奴はそれが仕事だし、趣味の奴は、それが趣味なわけで。
それしないってんなら、仕事がなくなるというか、作る意味が無いというか。
何も一から作れって言ってるんじゃないぞ。
各種ライブラリはそりゃ利用するんだが、
ライブラリごとにインターフェイスがバラバラだから、
そこの整合性を取ってやる仕事は普遍的に残るだろう、という。
ライブラリの面子が毎回変わるんだから、
まとめ方が毎回変わるのは当たり前というか。
でも、仕事ってそう言うものだろ。じゃないと職失う。

859 :名前は開発中のものです。:2010/02/17(水) 22:13:35 ID:iS5E9BO2
>>858
なにか言っちゃあ二言目には「ゲームによって変えるのは当たり前」って
聞き飽きたんだよね

860 :名前は開発中のものです。:2010/02/17(水) 22:37:00 ID:l4ndeYei
もう意味がわかんない。
1)ゲーム作るよ。仕様ありますよ。プラットフォームも決まってますよ。
2)必要な機能も決まりますよ。使用するライブラリも決まりますよ。調達しますよ。
3)集めてきた材料を繋ぎ合わせますよ。
最後の繋ぎ合わせる部分は自分たちでやらなきゃ仕方が無いじゃん。
そこやらないなら、仕事して無いっていうか。
集めきてはい終わりじゃ素材集じゃん。ライブラリ集じゃん。ゲームじゃ無いじゃん。
ゲーム作るんだから、ゲームの形にするところは自分たちでやるもんだろー。

しかも俺は2)にタスクシステムも分類してあると思ってて、
素材としてタスクシステムは必要かどうか?って話が本筋と思うんだが。
>>856はなんか変なこと言ってるけど、
タスクシステムを使わない人は、「ゲームによって変えるのかね」じゃなくて、使わないの。
料理作るのにニンジンが必要無いって人に、「ニンジンは毎回変えるの?」って返すのはそりゃおかしいだろ。
使わないんだって言ってるのに。

861 :名前は開発中のものです。:2010/02/17(水) 22:53:38 ID:l4ndeYei
訂正)
料理作るのにニンジンが必要無いって人に、「ニンジンは毎回変えるの?」って返すのはそりゃおかしいだろ。

料理作るのにニンジンが必要無いって人に、「レシピは毎回変えるの?」って返すのはそりゃおかしいだろ。

862 :名前は開発中のものです。:2010/02/17(水) 23:10:48 ID:4hn/aGE3
また煽りあいか。技術的な話しろ。

863 :名前は開発中のものです。:2010/02/18(木) 01:37:08 ID:w5mf6MhD
敵が弾をプレイヤーに向けて発射する処理を
タスクシステムを使わないで書くとどんな感じ?

864 :名前は開発中のものです。:2010/02/18(木) 01:46:32 ID:aYz67sOH
for( size_t i=0; i<enemies.size(); ++i )
{
  if( hoge )
  {
    shots.push_back( new shot( player.x, player.y, enemies[i].x, enemies[i].y ) );
  }
}

865 :名前は開発中のものです。:2010/02/18(木) 01:56:16 ID:QoZAOaAb
敵が弾をプレイヤーに向けて発射する処理を
タスクシステムを使って書くとどんな感じ?

866 :名前は開発中のものです。:2010/02/18(木) 02:00:15 ID:ey3FJ+Fd
おまえの環境はメモリが自由でいいな

867 :名前は開発中のものです。:2010/02/18(木) 02:04:52 ID:aYz67sOH
アロケーターとカスタムコンテナぐらい自分で書けば?
my_container.push( new( my_alloc<shot> ) shot(...) );
こうすりゃ文句無いわけ?よくわからん。
どっちにしろタスクシステムと関係ない。

868 :名前は開発中のものです。:2010/02/18(木) 02:08:27 ID:aYz67sOH
あ、やべ。
my_container.push( new( my_alloc<shot>() ) shot(...) );

869 :名前は開発中のものです。:2010/02/18(木) 02:12:20 ID:ey3FJ+Fd
どうかくのかが問題なんだが。その自由な枠組みで。

870 :名前は開発中のものです。:2010/02/18(木) 02:15:50 ID:aYz67sOH
処理したい順番に書いてけば?

871 :名前は開発中のものです。:2010/02/18(木) 02:16:30 ID:w5mf6MhD
ここら辺の処理はあんま変わんないね

872 :名前は開発中のものです。:2010/02/18(木) 22:24:04 ID:lRtlm7Do
えっ

あんま違わないってことは違いがあるんだよな?
で、敵が弾をプレイヤーに向けて発射する処理を
おまえのタスクシステムを使って書くとどうなるんだ?
これとても重要な質問なの

873 :名前は開発中のものです。:2010/02/18(木) 22:43:35 ID:DeTW2Yau
つーかDSPSPでこんなコード書いてたら完成しないぞ

874 :名前は開発中のものです。:2010/02/19(金) 01:13:58 ID:lSpicQWT
>>873
>864 のコードに由来して特定の環境で受け入れられないオーバーヘッドが発生するとは
思わないんだけど、具体的に何の制限が問題になるの?

まともな C++ コンパイラが使えない( operator new やアロケータのカスタマイズができない)
とかいう事情ならまぁ納得なんだけど、そういうこと?

875 :名前は開発中のものです。:2010/02/19(金) 01:26:26 ID:mYNzjBiE
newを自由に呼べるシステムは分断化の回避が難しい。
回避方法は対処療法的なものも含めいろいろあるが
普通考慮するようならあまり自由にnewを呼ばない。

876 :名前は開発中のものです。:2010/02/19(金) 01:46:46 ID:lSpicQWT
>>875
それってつまり、メモリの断片化に対して operator new のカスタマイズでは不可能な、
より適切な対処があるってことだよね?具体的にどうするの?

最終的に使う領域が固定の配列から切られるとしても、記述としては new (...) shot(...) で
いけるようにしといたほうがいろいろ(可読性とかメンテナンス性とかの面で)有利じゃない?


・・・質問ばっかりで悪いとは思うけど、たまには技術的な話を掘り下げさせてもらえると
有意義かなぁと思ったり。

877 :名前は開発中のものです。:2010/02/19(金) 01:58:29 ID:vNuZTyH7
>>876
newを使わなければいいんじゃね?

878 :名前は開発中のものです。:2010/02/19(金) 02:15:34 ID:LbHH2H9z
どうせ弾の上限は決まってるんだろうから、shotsは固定の配列でいいんじゃね

879 :名前は開発中のものです。:2010/02/19(金) 08:16:01 ID:lTdPeAnA
new使わないとコンストラクタ呼び出せないんだっけ

880 :名前は開発中のものです。:2010/02/19(金) 14:07:21 ID:+Pv/DaT4
ハードの性能無駄に上がってんだからコアな部分以外は可読性保守性最重視で行きたいね
無駄にトリッキーな処理書かれると忘れた頃に見たときめんどくさい

881 :名前は開発中のものです。:2010/02/19(金) 22:22:12 ID:ahRx9x2K
どこまでいってもメモリは有限です。
またハードを使い切ろうとするとデータサイズは大きくなる。
可読性重視は同意だが無制限なコーディングはバグを誘発する。

882 :名前は開発中のものです。:2010/02/20(土) 01:08:54 ID:pCc18cCP
>>881
何が言いたいのかわからん。たとえば >864 の処理がどう書いてあれば満足なのさ?

883 :名前は開発中のものです。:2010/02/20(土) 01:45:22 ID:mKYEBXBm
無制限なコーディングなんて言ってないよ
ハード能力上がったからそれに依存して適当な設計で良いと
言った訳でもなくて、速度・効率重視の部分とそれ以外で
メリハリを付けたいなと

あと可読性重視なら適切なコーディング規約で
細部に至るまで事細かくルール化されてるはずで
無制限なコーディングにはならないんじゃないかな

884 :名前は開発中のものです。:2010/02/20(土) 02:06:55 ID:EdhnZX12
コーディング規約w

885 :名前は開発中のものです。:2010/02/20(土) 02:29:36 ID:5Did0Msj
よっぽど理不尽で無い限り、コーディング規約にはしたがうべき。
複数人開発でのソースの読みやすさが担保されるのはコーディング規約だけだ。
あと、1年後の自分にもやさしい。

886 :名前は開発中のものです。:2010/02/20(土) 03:04:34 ID:7pEDaLzT
ズレたコーディング規約って意味ねぇ
型とか先頭につけるのまったく意味ねぇ

887 :名前は開発中のものです。:2010/02/20(土) 04:07:10 ID:5Did0Msj
>>886
会社の信じるコーディング規約じゃねぇ
お前の信じるコーディング規約を信じろ

888 :名前は開発中のものです。:2010/02/20(土) 06:02:00 ID:N/T1Cm6Q
嗚呼グレンラガン

889 :名前は開発中のものです。:2010/02/20(土) 09:59:01 ID:U8OIvjqs
なんかこれ結論っぽくないか?
タスクシステム=コーディング規約の一種

890 :名前は開発中のものです。:2010/02/20(土) 11:22:37 ID:HOq51Lyp
まぁおまえのタスクシステムはそうなんだろ。
で、おまえの規約はどういう規約なの

891 :864:2010/02/20(土) 16:17:39 ID:sG4G6HXV
あのさー、お前らさー、newに上限付けたい?断片か防ぎたい?
言ったじゃん、カスタムアロケーターぐらい作れって。

my_vector< shot * > shots( 100 ); //上限100個
my_pool< shot > shots_pool( 100 );

shots.push_back( new( shots_pool.alloc() ) shot( player.x, player.y, enemies[i].x, enemies[i].y ) );

こうなってりゃ満足なわけ?好きにすりゃいいじゃん。
本当に、どうでもいいことばっか着目するよな。

俺はさ、タスクシステム使わないでゲーム作るとどうなるのか聞かれたから、
1) 用途や型ごとにコンテナにオブジェクトを突っ込む
2) メインループから各コンテナ内のオブジェクトを読み出して処理する
をコードで書いたまでで、
アロケーターやプールやコンテナは環境にあったもの用意すりゃいいことぐらい分かるだろ。

892 :名前は開発中のものです。:2010/02/20(土) 16:36:36 ID:I8cCNujg
>>891
それタスクシステムじゃね?

893 :名前は開発中のものです。:2010/02/20(土) 16:40:56 ID:wqzkd0Z7
どうでもよくないというか、タスクシステムの問題のひとつにメモリ分断化対策が面倒というものがある。
で、タスクシステム使わない方法があまりに無頓着なコードだったら一言言いたくなるのもわかる。
アロケータ書いても問題が解決しないのならなおさら。

894 :名前は開発中のものです。:2010/02/20(土) 16:49:27 ID:sG4G6HXV
>タスクシステムの問題のひとつにメモリ分断化対策が面倒というものがある。
初耳だが。
>>2で言うTCBって固定長なんだろ?分断化しないじゃん。

まー、891とタスクシステムの違いも分からんやつが要るようなスレじゃ何言っても馬の耳に念仏だが。

895 :名前は開発中のものです。:2010/02/20(土) 16:56:25 ID:I8cCNujg
>>893
newするクラスの大きさがまちまちだからメモリ分断化対策が必要ってことだよね?

896 :名前は開発中のものです。:2010/02/20(土) 17:02:44 ID:sG4G6HXV
どっちだって良いんだよ。
メモリ断片化対策はアロケーターの仕事だろ。タスクシステムは関係ねぇ。
タスクを基底に持つクラスをnewしたら断片化するってんなら、
class task{};
class my_task: public task{};
new task() ←断片化
そりゃお前、newがしょぼいだけの話じゃねーか。アロケーターがしょぼいだけじゃねーか。
タスクシステム関係ねぇ。

897 :名前は開発中のものです。:2010/02/20(土) 17:14:57 ID:wE/EVsGp
> タスクシステムの問題のひとつにメモリ分断化対策が面倒というものがある

タスクシステム使わずとも問題になると思うのはもしかして俺だけ?

898 :名前は開発中のものです。:2010/02/20(土) 17:49:56 ID:wqzkd0Z7
>>897
いや正しい。
しかし通常のタスクシステムは生成消滅タイミングが自由なのでさらに混乱することが多い。

899 :名前は開発中のものです。:2010/02/20(土) 17:52:30 ID:HOq51Lyp
まーたロクでもない自作アロケータを内包・癒着させて引き剥がせなくした
ウンコの塊にタスクシステムって名前付けたお子ちゃまがいるようだな

893君はさ、「僕ちんの自慢のタスクシステム」の抱える固有の不具合を紹介
するのは別にいいんだが、ちゃんと「僕チンの考えたタスクシステム」の話って
ことを断ったほうがいいと思うんだ

900 :名前は開発中のものです。:2010/02/20(土) 17:53:52 ID:sG4G6HXV
>しかし通常のタスクシステムは生成消滅タイミングが自由なのでさらに混乱することが多い。
それも、タスクシステム使わずとも問題になるな。

901 :名前は開発中のものです。:2010/02/20(土) 18:21:12 ID:wqzkd0Z7
>>900
いやわかってますよ。まずこれが出来ない奴のほうが多い。
でそれができないままタスクシステム導入してこれまたひどいことになる。
ちなみにこれと同様な現象としてSTL、俺様テンプレートもある。

902 :名前は開発中のものです。:2010/02/20(土) 19:07:33 ID:gmYFanrZ
>>900
要出典

903 :名前は開発中のものです。:2010/02/20(土) 19:21:22 ID:Eoe7/vmk
まぁアロケータの話はスレ違いだね、、、

904 :名前は開発中のものです。:2010/02/20(土) 19:37:31 ID:HOq51Lyp
>>892

えっ

905 :名前は開発中のものです。:2010/02/20(土) 20:48:39 ID:laHALteF
ID:sG4G6HXV
みたいなのが俺様のはタスクシステムじゃねー
とか思ってたからこのスレがあれてただけだったという訳かw
すべてが氷解した

906 :名前は開発中のものです。:2010/02/20(土) 23:26:48 ID:sG4G6HXV
タスクシステムじゃねぇじゃん。
コンテナにオブジェクトつっこんだらタスクシステムなら、
そりゃもう、何でもタスクシステムじゃん。
いまどきのプログラムなら、コンテナや配列の一つや二つは使うもんだろ。
タスク、仕事、つまり制御に関して何らかの仕組みが提供されないことには、
タスクシステムとは言えんよ。

907 :名前は開発中のものです。:2010/02/21(日) 00:44:10 ID:8GNvhcuQ
やはりごった煮リストにしないとタスカーにはなれないな

908 :名前は開発中のものです。:2010/02/21(日) 01:08:28 ID:p7hH+i8Z
タスクシステムがごった煮リストかどうかは実装によるんじゃない?
なんでもかんでもタスクにするわけじゃないでしょ

909 :名前は開発中のものです。:2010/02/21(日) 02:35:59 ID:n5tkGGLA
データ構造と処理手順をごっちゃにしてるとわかりづらくない?

910 :名前は開発中のものです。:2010/02/21(日) 03:22:11 ID:KdEz6TZb
1)データのポインタやらを配列やコンテナに入れてるのは、
 単にデータをそう言う風に管理してるってっだけ。
2)処理とワーク領域のセットのリストを逐次実行するのがタスクシステム。
3)ごっちゃになってるのが、糞タスクシステム。通称CodeZine。具現化された糞。

3)が糞というのはコンセンサスの得られるところ。もはや肩を持つものは居ない。
 若気の至りというかなんというか、分別がついていないころは、そういうこともしでかすだろう。
 生暖かい目で見守ってあげよう。

2)が必要かどうかは状況による。処理順番の動的変更が出来ることがメリット。
 マルチコアの普及に従い、脚光を浴びる事に成るかもしれない。
 しかし、出来れば使いたくない、というのがプログラマの本音だろう。

1)もタスクシステムの範疇だと考える奴も居る。頭おかしい。
 ミカンを果物で実装したために、リンゴの呼び名がミカンになっちゃった人たち。
 下手なアップキャストをしたためにダウンキャストで失敗している。
 自分の脳内までごった煮リスト状態なのだろうか。
 おそらく、3)に1)が含まれているので、そういう勘違いをしてしまったのだろうが、
 タスクシステムの本質が2)であることを、良く考えて欲しい。

911 :名前は開発中のものです。:2010/02/21(日) 04:33:24 ID:8GNvhcuQ
>>908
タスクシステムはごった煮リストじゃないって主張してるの?

912 :名前は開発中のものです。:2010/02/21(日) 10:19:21 ID:w53qIXyc
C++が悪い

913 :名前は開発中のものです。:2010/02/21(日) 10:42:00 ID:n5tkGGLA
処理順番を動的に変更する、ということは、
その背景にあるのは、処理は1本のスレッド上でのみ行われるってことだな。
もしくは、マルチスレッドの各スレッド間同期タイミングをチャート引いて管理出来るようにするかんじ?

914 :名前は開発中のものです。:2010/02/21(日) 11:24:53 ID:quMpQBzl
すげーな
勝手にタスクシステムを俺解釈して
勝手に脱タスクシステム叫んでるw

915 :名前は開発中のものです。:2010/02/21(日) 11:49:33 ID:A7aqaieW
少なくとも記事になってるものを対象にしてるだろ。
その記事が間違っているというならどこが違うか指摘してから議論してくれ。

916 :名前は開発中のものです。:2010/02/21(日) 15:44:30 ID:quMpQBzl
否定派がスレ立ててしつこく>>2を入れちゃうからおかしなことになるんだよw

917 :名前は開発中のものです。:2010/02/21(日) 16:11:48 ID:VDZtRAQe
>>2
もっとちゃんとしたサイト載せろよ

918 :名前は開発中のものです。:2010/02/21(日) 16:20:47 ID:KdEz6TZb
だったらタスクシステムの「ちゃんとした」サイト探してみろって。マジでねぇから。
だいたい大昔のアセンブリ時代の化石か、ごった煮リストかのどっちか。

919 :名前は開発中のものです。:2010/02/21(日) 16:32:24 ID:M35hw2mK
サイトというか、ソース晒せよ。

920 :名前は開発中のものです。:2010/02/21(日) 16:43:43 ID:KdEz6TZb
それは信者の仕事だろー

921 :名前は開発中のものです。:2010/02/21(日) 16:46:27 ID:iijEHPG4
タスクシステムを造語した外人エンジニアに
このスレを見せたらどんな反応するか見てみたい
いろんな意味で
英語圏のフォーラムじゃ水掛け論みたいな内容で荒れてるの
あまり見ないから呆れられてしまうかも知れんが…

922 :名前は開発中のものです。:2010/02/21(日) 17:19:28 ID:A7aqaieW
すげーな。「もっとちゃんとしたサイト載せろよ」って。
知ってるなら貼ればいいだけジャン。
>>2は違う。>>2と違うコード書くと「それもタスクシステム」
あげくに自分はコードもサイトも示さずに「もっとちゃんとしたサイト載せろよ」
まさに>>3だな。

923 :名前は開発中のものです。:2010/02/21(日) 17:30:13 ID:8GNvhcuQ
>>921
いや、海外にも仕立て屋は間違いなくいる
C++なんて流行るのもその象徴
最近、俺はオブジェクト指向なんてのも怪しく感じるようになってきた
なんも生産性を上げてねぇよコレ
ま、わざわざ職場のルール乱してまで主張しようとは思わないから
こんなところでこっそり言うが

924 :名前は開発中のものです。:2010/02/21(日) 17:49:12 ID:A7aqaieW
オブジェクト指向はタスクシステムに比べれば相当マシ。
議論のベースが整いやすい。wikipediaの項目くらいはあるし。

歴史的にも構造化など抽象化を推し進めるなかでてきたし。
少なくともカプセル化・継承・多態性は使い方によってはメリットがある。

ただとくにC++はこれらを実現する、またはついでに追加した機能が何でもありになっていて
これ以上のデメリットを引き起こすことがかなりある。

とくに組込み系ではEffectiveC++みたいなのだけでは問題が解決しないが
最近のゲーム屋は昔ながらの技術を再検討するより本のうわべをそのまま使うことが多くて・・・

CodeZineのは昔ながらの技術を謎のままC++ととりあえずミックスしてしまったものだけど。

925 :名前は開発中のものです。:2010/02/21(日) 18:13:34 ID:qS4VXyL2
そもそもタスクシステムは日本発じゃないのか
海外はどうなってるのか知らんが
あとごった煮リストって何をもってごった煮と言っているのか

926 :名前は開発中のものです。:2010/02/21(日) 20:51:04 ID:yoBS5Oyg
>>921
>タスクシステムを造語した外人エンジニアに

意味が分からんのだが。。。


927 :名前は開発中のものです。:2010/02/21(日) 21:23:03 ID:KdEz6TZb
C++やオブジェクト指向に関してはアレだね。
データ構造に着目して考えるならカプセル化などがあって便利なものだから、
データ構造を実装するの関してはどんどん使えばよいと思うよ。
実際STLの中でもvectorやlistが飛びぬけて使いやすいし。
ただ、制御構造や処理との相性は最悪だから、
そこにまで無理にオブジェクト指向を適応しようとしだすと、
とんでもない事になりがち。(仮想関数を初めとして、オペレーターのオーバーロード/ライド)
標準入出力なんてマジで糞いしな。ありゃ一体なんだ。printfの方が随分使いやすい。

「プログラムの本体は制御構造なんだから、データ構造になんか時間かけてらんねぇ。
 データ構造はオブジェクト指向でさくっとやるか。」
程度の感覚で良いかと。

928 :名前は開発中のものです。:2010/02/21(日) 21:35:24 ID:yoBS5Oyg
>>914
これまでのアンチの基本的傾向として、ゲーム作れない口先だけのお花畑脳童貞小僧が
実験も検証もせず学校で教わった知識だけで知ったような口利いては即バレして恥かく
というお約束パターンを繰り返す、という情けないものだったわけだが、最近のアンチは
やや持ち直しており若干の進歩が見られる。油断してはいけない

929 :名前は開発中のものです。:2010/02/21(日) 21:41:10 ID:A7aqaieW
と一切技術用語を出さずに煽ってもね。

930 :名前は開発中のものです。:2010/02/21(日) 21:50:36 ID:yoBS5Oyg
今までいっぱい書いたからもう書くことあまりないんだわ
>>910は厄介な子だね。Codezineみたいな噛み付きやすいところに
噛み付いていてくれれば話は楽なのに

931 :名前は開発中のものです。:2010/02/21(日) 21:55:56 ID:A7aqaieW
レスアンカーすらつけられずに書くことないって。
>>3そのものだ

932 :名前は開発中のものです。:2010/02/21(日) 22:16:57 ID:KdEz6TZb
>>910が厄介な子なのは、ハ(ryだから当たり前だ。

933 :名前は開発中のものです。:2010/02/21(日) 23:49:19 ID:yoBS5Oyg
さすがにハード君でもあれだけ沢山すっ転べば0.1歩くらいは進むのだな。
ところでハード君は処理の「順番」の変更ができるということに着目してるようだが
それはつまり順番の入れ替え、ソートするということに着目してるのかな?

データ構造のソートではなく制御構造のソートというのは何を想像してるの?

934 :名前は開発中のものです。:2010/02/21(日) 23:57:49 ID:KdEz6TZb
俺は「処理の「順番」の変更」はいらねぇんじゃねぇかって立場に立ってるわけで。
何を想定しているか聞かれても困るんだが。

935 :名前は開発中のものです。:2010/02/22(月) 00:04:49 ID:jPaGif/Y
ソートが不要なら静的に記述すればいいじゃないかということなの?

936 :名前は開発中のものです。:2010/02/22(月) 00:41:13 ID:9kPn5SCw
そうなるわな。
とはいってもif文とかは使うがな。
わざわざ処理のリストを自前で用意する必然性、そこが問いたいわけ。
ありえるとしたら、
1)処理の順番がダイナミックに変更される
2)ワーク領域の悪用
3)サブコアなど、どっか別のところに処理を投げる
こんなところかね。

でもさ、プログラムって基本は処理したいものを処理したい順に書いていくものだと思うよ。
書くときはともかくとしても、読むときはその方が読みやすいわな。

937 :名前は開発中のものです。:2010/02/22(月) 01:10:24 ID:jPaGif/Y
ソースコード中に、プログラマの責任の元で、静的に(制御構文で)記述できる
制御フローならばそうすればいいんじゃない。それは当初から否定されてない

938 :名前は開発中のものです。:2010/02/22(月) 01:11:59 ID:8N//epRT
でタスクシステムは何なのという話ではないの?

939 :名前は開発中のものです。:2010/02/22(月) 01:22:15 ID:9kPn5SCw
静的に記述不可能なら、タスクシステムを採用するかどうかは別としても、
何らかの仕組みはいるわなぁ。
俺ならそう言う部分はエンジン化して真っ先に外部に追いやるが。
エンジンって名前はちょっとアレだが。

940 :名前は開発中のものです。:2010/02/22(月) 01:45:46 ID:jPaGif/Y
そう。何らかの仕組みが要るわけ。名前なんざ別にどうでもいい。
タスクシステムという名前よりももっとかっこいい名前がいいなら
エターナル何とかでも僕ちんエンジンでも好きにすればいい

941 :名前は開発中のものです。:2010/02/22(月) 01:56:53 ID:8N//epRT
静的に記述不可能というのは例えばどのような状況?

942 :名前は開発中のものです。:2010/02/22(月) 01:59:16 ID:jPaGif/Y
例えば、複数スレッド(プロセス)を使う余裕がない貧弱なプロセッサ(コア)があり
例えば、割込で覚醒する(割込ハンドラから登録される)非周期性のタスクがあり
どこかに挿入したい

943 :名前は開発中のものです。:2010/02/22(月) 02:23:12 ID:8N//epRT
それタスクシステムのタスクとして扱わなければいけない状況が具体的にイメージできない。

944 :名前は開発中のものです。:2010/02/22(月) 02:47:10 ID:9kPn5SCw
スレッドの変わりにタスクシステム使うってのはかなりアホな失言だな。

945 :名前は開発中のものです。:2010/02/22(月) 02:48:08 ID:iSU0iGNn
タスクシステムのタスクって何すか?

946 :名前は開発中のものです。:2010/02/22(月) 02:48:39 ID:9kPn5SCw
処理とワーク領域をセットにしたもの。

947 :名前は開発中のものです。:2010/02/22(月) 02:55:39 ID:oNkwrvMU
自分の仕事しか見えてない人の事

948 :名前は開発中のものです。:2010/02/22(月) 03:11:13 ID:iSU0iGNn
>>944が言いたいことが見えってこないっす

949 :名前は開発中のものです。:2010/02/22(月) 03:17:18 ID:9kPn5SCw
だって、スレッドって非同期で使ってこそだろ。
でもタスクシステムって同期が前提だよね、1/60秒とかで同期するよね、
自分で処理を明け渡すよね、そのタイミングで同期するよね、意味無いよね。

950 :名前は開発中のものです。:2010/02/22(月) 03:52:27 ID:iSU0iGNn
うーん。やっぱ見えてこないッスね。。。

周期駆動系の組み込みシステムでIRQをトリガーに発動するタスクを
捌くとき、つまり>>942みたいな要求があるとき、周期駆動のタスク
ディスパッチャーのプライオリティキューにそのタスクを追加するという
のは、定石というか割とありふれたスタイルに見えるんすけど

951 :名前は開発中のものです。:2010/02/22(月) 20:54:43 ID:9kPn5SCw
キューにデータを突っ込めば?なんでタスクを突っ込もうとするの?

952 :名前は開発中のものです。:2010/02/22(月) 21:17:39 ID:9kPn5SCw
というか、さっきまでスレッドの話してたのに、何で割り込みの話に切り替わったのだろう。
>>942のスレッドの話と割り込みの話ってそれぞれ別の事例なんじゃないの?
俺の読解力が無いだけ?

953 :名前は開発中のものです。:2010/02/22(月) 22:04:06 ID:jPaGif/Y
普通にないだろ

954 :名前は開発中のものです。:2010/02/22(月) 22:17:36 ID:9kPn5SCw
だったら、逆に聞きたいんだけど、
割り込みとスレッドの関連性って何よ。
割り込みで発生した要求をサブスレッドで対応しても、それはそれでかまわないだろうけど、
でもゲームって1/30や1/60周期でポーリング可能なわけだから、
メインスレッドから割り込みの要求に対応するチャンスはいくらでもあるよね。
なんでスレッド作れないから割り込みの要求をタスクシステムでって話に成るの?

955 :名前は開発中のものです。:2010/02/22(月) 22:29:41 ID:9kPn5SCw
それとも、
http://www.nasuinfo.or.jp/FreeSpace/kenji/priority.htm
こういうことでもやってるの?これはダセぇ。

956 :名前は開発中のものです。:2010/02/22(月) 22:54:14 ID:jPaGif/Y
君のスレッドとタスクの関連性って何よ

957 :名前は開発中のものです。:2010/02/22(月) 23:22:01 ID:9kPn5SCw
それは俺が聞いてんだよ。
何でスレッド使えないからタスクって話になるんだって。

958 :名前は開発中のものです。:2010/02/22(月) 23:42:46 ID:jPaGif/Y
スレッドが使えないからタスクって何なの

959 :名前は開発中のものです。:2010/02/23(火) 01:28:48 ID:H3z/wak/
お前が自分で>>942に書いてるんじゃねぇか。
池沼かよ。

960 :名前は開発中のものです。:2010/02/23(火) 01:39:02 ID:RSl/LDk4
ハード君さぁ、>>942を百回音読してみ

961 :名前は開発中のものです。:2010/02/23(火) 01:49:33 ID:m+f6iOkH
ハード屋さんの目のフィルターは摩訶不思議だな

962 :名前は開発中のものです。:2010/02/23(火) 02:01:35 ID:H3z/wak/
>>954で、

>なんでスレッド作れないから割り込みの要求をタスクシステムでって話に成るの?

って書いてるだろ。
スレッドと割り込みとタスクシステムに一体どんな関係性が?

>>942で疑問なのが、
1)もしスレッドが自由に使える環境なら、「割込で覚醒する非周期性のタスク」とやらは、
 タスクシステムではなくスレッドで実行したいのか。
2)タスクシステムでスレッドの代用が出来るのか。
3)フラグとif文では記述できないのか。
 割り込みハンドラでフラグ立てて、そのフラグが立ってるときだけ
 処理を実行って感じでいんじゃねぇの。

963 :名前は開発中のものです。:2010/02/23(火) 02:26:43 ID:9kAEtD+3
> 959 :名前は開発中のものです。:2010/02/23(火) 01:28:48 ID:H3z/wak/
>  お前が自分で>>942に書いてるんじゃねぇか。
>  池沼かよ。

> 962 :名前は開発中のものです。:2010/02/23(火) 02:01:35 ID:H3z/wak/
>  >>954で、
> 
>  >なんでスレッド作れないから割り込みの要求をタスクシステムでって話に成るの?

>  って書いてるだろ。

これってつまり言いだしっぺは己自身だったと・・・
もう一人相撲乙としか・・・

964 :名前は開発中のものです。:2010/02/23(火) 02:31:45 ID:H3z/wak/
ちょっとまってよ。原文はこれだよね。

Q: 静的に記述不可能というのは例えばどのような状況?
A: 例えば、複数スレッド(プロセス)を使う余裕がない貧弱なプロセッサ(コア)があり
  例えば、割込で覚醒する(割込ハンドラから登録される)非周期性のタスクがあり
  どこかに挿入したい

俺の理解では、
「静的に記述が不可能な例えとしては、
 スレッドが満足に使えない環境で、
 割込みで発生する非周期な処理を、
 割込みハンドラ外で実行したい場合などがある。」
これであってる?

まー俺のESPは
「それってタスクシステム使ったから静的に記述できなくなっただけじゃねぇの」
と反応しているわけだが。

965 :名前は開発中のものです。:2010/02/23(火) 02:39:20 ID:H3z/wak/
で、俺が問いたいのは、
何で、
 スレッドが満足に使えない環境で、
 割込みで発生する非周期な処理を、
 割込みハンドラ外で実行したい場合、
 静的な記述が不可能
なんだ?ってこと。

966 :名前は開発中のものです。:2010/02/23(火) 03:48:40 ID:H3z/wak/
もうちょっと書いとくと、
「例えば、複数スレッド(プロセス)を使う余裕がない貧弱なプロセッサ(コア)があり」
これな、この一文。これは何のためにあるわけ?
俺は非常に疑ってるわけ。
この一文で、ID:jPaGif/Yの中で、タスクシステム的な何かを使うという前提が、
勝手に決定してしまってるんじゃないかと。
でも、もしそうだとすると、いくつかの問題が出てくる。

1) 割込み云々のくだりの意味が無くなる。
  タスクシステム使うことによって、「静的に記述不可能」は満たされるので、
  割込み〜を持ち出す意味が無くなる。

2) スレの流れ的に変。
  Q: タスクシステムはどのような場合に使いますか?
  A: 静的に記述できない場合。
  Q: 静的に記述できない例は?
  A: タスクシステムを使うとき。
  答えになってない。

そんなアホみたいな展開はさすがに勘弁だから、
原文を最大限好意的に解釈し直す。すると>>964-965となったってわけだ。
明日仕事から帰ってくるまでにエレガントな回答を頼むよ。

967 :名前は開発中のものです。:2010/02/23(火) 10:39:44 ID:HrCIHbGl
>>926
大ヒント:輸入した言葉ばかりのこの業界

968 :名前は開発中のものです。:2010/02/23(火) 21:58:29 ID:zkfJseXs
正解:素人しかここにいない

969 :名前は開発中のものです。:2010/02/23(火) 22:47:04 ID:zAzwz6Ie
(キリッ

970 :名前は開発中のものです。:2010/02/23(火) 22:59:00 ID:c+56TGEF
>>967
で、タスクシステムというものを最初に造語した人って誰なん?

971 :名前は開発中のものです。:2010/02/23(火) 23:12:29 ID:RSl/LDk4
愚鈍な中年にエレガントに教育を施せとは難しい課題だな

>割り込みとスレッドの関連性って何よ

真面目な話なんだが、これ本当にお分かりになりませんの?
ここから説明を要求されると正直やってらんないわ…
100,000モリタポくらいくれれば個人レッスンやってもいいぞ


972 :名前は開発中のものです。:2010/02/24(水) 00:19:39 ID:cpWp2BhG
LISPでタスクシステムを書けば何か見えてくるかもしれない

973 :名前は開発中のものです。:2010/02/24(水) 00:21:19 ID:q1xcMKbM
タスクシステムは、大農園において確立された奴隷に分業させるための制度のことだろう

974 :名前は開発中のものです。:2010/02/24(水) 00:33:41 ID:E88kdpum
また技術的な内容がない煽りばかりになったな

975 :名前は開発中のものです。:2010/02/24(水) 00:43:29 ID:D/vTrQxn
>>973
プログラマの責任の下で静的に記述すればそれで良しの
べた書きアンチとは相性悪いな

976 :名前は開発中のものです。:2010/02/24(水) 01:09:06 ID:wWaSpMCS
>>974
まあ、結局は>>3だから

977 :名前は開発中のものです。:2010/02/24(水) 01:33:16 ID:kFb4te9V
>>976
>>3はこれで終わってるだろ・・・>>842-847

978 :名前は開発中のものです。:2010/02/24(水) 01:40:32 ID:cpWp2BhG
なんとかシステムっていうのは、あんまり乱用しちゃいけない。
よくできたと評判のGoFのパターンでさえも乱用は危険。思考停止に陥るから。
常に設計の意味とか、見通しのよさとか、拡張のし易さを考えないといけない。

979 :名前は開発中のものです。:2010/02/24(水) 01:45:28 ID:D9nLu1L+
シングルトンはバカのリトマス試験紙

980 :名前は開発中のものです。:2010/02/24(水) 01:50:10 ID:974SWtkQ
>>977
「皮肉られてるのすら気づかないレベル」「幼稚園児並みに純粋」とか、
まさに >>3 の「馬鹿には理解できない」のバリエーションが量産されてるだけに見えるが、
何が言いたいの?

981 :名前は開発中のものです。:2010/02/24(水) 01:57:11 ID:GpUGuOFx
>>977
あー、それハード屋にすげー当てはまるww

「みんな俺と同じで>>2がわからないのに、馬鹿と思われたくないから
タスクシステムわかったふりしてるんだろ!」って本気で考えてそうwwww
真性の馬鹿だwwww

982 :名前は開発中のものです。:2010/02/24(水) 02:05:22 ID:wWaSpMCS
しかし、ホントこの業界は仕立て屋が食い荒らしてしまったな
まったく意味のない技術が広がりすぎ
検証もなんもされてねーゴミばっかり量産された
技術より話術ってのも現場では当たり前になってるしな

983 :名前は開発中のものです。:2010/02/24(水) 02:26:42 ID:1Xo0YX29
ハード屋とかどう見てもゲームなんて作れ無さそうな人達が技術的に
ピントのずれた話しながらベタ書きしか認めん、とか言っても
個人的には >>679 と同じ印象しか受けない。悪いけど。

984 :名前は開発中のものです。:2010/02/24(水) 02:28:16 ID:wWaSpMCS
この業界の糞はC++からはじまったな

C++ はひどい言語だ。これは、多くの平均以下のプログラマーが使ってるために
さらに輪をかけてゲロゲロになっていて、どうしようもないゴミが簡単に生産されるようになってる。
正直いって、C を選ぶ理由が C++ プログラマーを追っぱらうため *だけ* だったとしても、
それ自体、C を使う強力な理由になりうる。
-- Linus Torvalds

985 :名前は開発中のものです。:2010/02/24(水) 02:37:39 ID:yH0ksLVd
ハード屋と呼ばれてる人がなぜここまで叩かれてるかわからん
ハード屋アンチよりは具体的にレスしてると思うが?

ハード屋のレスしてる内容が分からないから叩いてるんだろうか?

986 :名前は開発中のものです。:2010/02/24(水) 12:16:10 ID:PxKBy/Xn
煽ってるだけでしょ。
技術的な内容がないもん。

987 :名前は開発中のものです。:2010/02/24(水) 19:06:46 ID:vFuKqqgG
>>985
>553 :ハ(ry:2010/02/08(月) 22:21:47 ID:VnpQvf7D
>間違った(というか遅れた)考え方を知ってて特になるって・・・。

タスクシステムに対するこういう中身の無い発言からアンチだと思われてるからでは?
少なくとも俺よりはゲームシステムに対して精通してるようだけど、
いちいち異なる意見に対して否定的なレスを付けるから叩かれやすいのだと
人間誰しも自分は正しいと思い始めると思考停止に陥るですよ

988 :ハ(ry:2010/02/24(水) 22:42:34 ID:rAOX0cBU
どの道を行くかは、自分で決めればいいさ。
>>981を一体誰が救えるよ。

989 :名前は開発中のものです。:2010/02/24(水) 23:06:30 ID:D/vTrQxn
ハード君は四大の情報系卒らしいからそれなりのリテラシーはあるんだよ。
学校の教科書に載ってる範囲ではそれなりの回答が出てくる。
ロートル2Dオヤジ講師にそそのかされてるゲー専のガキンチョ信者相手なら
善戦するスペックはあるよ

990 :名前は開発中のものです。:2010/02/24(水) 23:17:33 ID:BDfqShQL
どう見ても中身のない煽り

991 :名前は開発中のものです。:2010/02/24(水) 23:18:51 ID:wWaSpMCS
ますます>>3に磨きがかかるなw

992 :名前は開発中のものです。:2010/02/25(木) 00:00:01 ID:J1n9Tf2S
それは単純に、このスレがこんがらがって糞みたいになってるときに
わざわざしゃしゃり出てきては交通整理を行ってきた俺の仕事っぷりへの
労いの言葉だろう。技術ではなく仕事への労い。サラリーマンの最低限のマナー。
猿まわしも大変なんだよ。

993 :名前は開発中のものです。:2010/02/25(木) 00:04:23 ID:zdvV79xP
※このスレッドの書き込みは、タスクシステムを用いたBOTによって行われています

994 :名前は開発中のものです。:2010/02/25(木) 02:41:39 ID:Frz2GNqt
>>989
自己紹介乙
あんまりネットで自分の経歴暴露するのはどうかと思うがな・・・

995 :名前は開発中のものです。:2010/02/25(木) 20:29:14 ID:J1n9Tf2S
いやそれは、俺が自分で書き込んだ経歴だ。
あんま変なところに噛み付くなよ。みっともない。
そいつからしてみりゃフォロー入れてるんだから。

996 :名前は開発中のものです。:2010/02/25(木) 22:44:35 ID:ukLtrFyE
最大限好意的に解釈するとそういう評価になるというだけの話でね
学校の教科書ではスカラー型の汎用プロセッサに2048bit超のデータを
まとめて1パスで処理しろというのがどういう特殊で異様な要求かという
ことまでは教えてくれなかったろうし

でもMIMDよりSIMDがソフトウェア開発者に優しいとか、MIMDより
SIMDが柔軟であるとか、そういうおかしな事を吹き込む教科書を
読んでるなら、どこの教科書なのか教えて欲しいとは思うね

997 :名前は開発中のものです。:2010/02/25(木) 22:49:24 ID:ukLtrFyE
スカラー型の汎用プロセッサというか基本スカラー型のコアね

998 :名前は開発中のものです。:2010/02/25(木) 22:57:07 ID:ukLtrFyE
SIMDというか64-wideの高並列SIMDね

999 :名前は開発中のものです。:2010/02/25(木) 23:07:01 ID:WxRma4/G
しかし中身のないスレだったね

1000 :名前は開発中のものです。:2010/02/25(木) 23:20:45 ID:ukLtrFyE
王様のお召し物にケチを付ける暇人共はまずゲーム作れるようになれよな

1001 :1001:Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。

355 KB
★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.02.02 2014/06/23 Mango Mangüé ★
FOX ★ DSO(Dynamic Shared Object)