トップページgamedev
1001コメント599KB

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

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2008/11/09(日) 11:51:40ID:+pjnJyQQ
タスクシステムについての議論、相談、質問、雑談などのスレです

part2 http://pc11.2ch.net/test/read.cgi/gamedev/1196711513/
part1 http://pc11.2ch.net/test/read.cgi/gamedev/1173708588/
0371名前は開発中のものです。2008/12/28(日) 00:08:38ID:9bx8+r7b
>やねうらお

>一体、何を問題にして、何を前提にしているんだ?
0372名前は開発中のものです。2008/12/28(日) 09:54:21ID:kNsvEJS4
>>370
日本語としては「じっぽん」が正しいが、レッドブックの「とおほん」(×とうほん)も間違いではない
ただ朝鮮人や一部の関西人が良く使う「じゅっぽん」は明らかに間違い
これを使っていると日本人である事を疑われるので気を付けるように
0373名前は開発中のものです。2008/12/28(日) 10:00:52ID:l5BdqN5n
10円20銭
0374名前は開発中のものです。2008/12/29(月) 07:51:23ID:5ANW5Mxu
「嫌タスク厨」はロクに質問にも答えられないキチガイばっかだな。
常人の感性からすると気色悪くて目障りだからオンするなよ、なあ?

親切心から言ってやるが、
本人気利かせているつもりのチンケで鬱気味の幼稚表現も痛々しいぞ、自覚してるか?
まあ、それがお前らの正気状態か。
せいぜい頑張れや。
プ!!
0375名前は開発中のものです。2008/12/29(月) 11:21:47ID:Ah7A1aEB
ひらしょーさんになにそれ?だれきみ?ってあしらわれたショックで
気が狂ってしまったん?
0376名前は開発中のものです。2008/12/29(月) 13:33:00ID:Af+lgojS
自分の言葉で論破できなかった厨房が、お墨付きをもらって狂喜してるだけにしか見えない。
0377名前は開発中のものです。2008/12/29(月) 18:17:39ID:2WLNxkwH
ま、そういうくだらない連中のノイズ成分くらい除去できないと駄目だと思うけどね
ひらしょーさんひらしょーさん言ってる子供達もどうせついこの間までは
たすくしすてむさいこー松浦先生大好き尊敬しちゃうとか言ってたはずなわけで

風見鶏を右へ左へ引きずり回すのは楽しいよね。そろそろ>>2擁護始めるか
0378名前は開発中のものです。2008/12/29(月) 20:02:06ID:s7jYkUya
その問題のやねうらおとやらは、お前たちの何倍ものプログラミング能力があって、
お前たちの何倍も稼いでいるようだけどな
0379名前は開発中のものです。2008/12/29(月) 20:29:38ID:2WLNxkwH
やねうらおが何だのかんだのと喚いてるのはpmocky一名だろう
0380名前は開発中のものです。2008/12/30(火) 10:15:13ID:Ak2RXwcs
pmokyな。奴がこんなとこで粘着する性格とも思えないが。
0381名前は開発中のものです。2008/12/30(火) 20:27:11ID:e9u2cYzi
本人乙。やねうらおと何があったのか知らんが
あちこちのスレで発作的ESPでやね探知する度に私怨コピペ張るなよ
マ板にスレ立てるなり民事調停するなり労基に駆け込めよ
0382名前は開発中のものです。2008/12/30(火) 20:29:06ID:e9u2cYzi
と思ったらスレあんのかよ。あのオッサンの界隈は相変わらず賑やかだね
0383名前は開発中のものです。2008/12/30(火) 21:29:05ID:kY5NjYxZ
松浦先生はエフェクトの人?
やねうらおなんかと比べるのは失礼だろ(笑)
0384名前は開発中のものです。2008/12/30(火) 22:17:02ID:XRQQzBHj
どう見てもそのやねうらおとやらののほうが格上だがな。

松浦先生の最新刊
ゲームアルゴリズムレシピ for JavaScript (単行本) 2008/11 発売。
Amazon.co.jp ランキング: 本で131,156位

一方、同時期に発売されたやねうらおとやらの

ひなた先生が教えるデバッグが256倍速くなるテクニック 2008/11 発売。
Amazon.co.jp ランキング: 本で652位

私怨か何だか知らんがいい加減、見苦しいよ。
0385名前は開発中のものです。2008/12/30(火) 22:25:35ID:kY5NjYxZ
本読んでみりゃわかるのに
0386名前は開発中のものです。2008/12/31(水) 01:04:00ID:K//GK7EM
大掃除も終わったし、一杯ひっかけながらちょっとポエムを書いてみるのねー

多数のジョブを並行、並列に処理する能力は科学計算、軍事、宇宙開発など様々な分野で必要とされた。
特にリアルタイムという要求は軍事や宇宙開発と絡むことが多かった

【2DSTGの礎を探る】

第2次大戦中、米海軍がMITに艦攻のフライトシミュレータの基礎研究を依頼した。
海軍は風洞試験の結果をリアルタイムで再現する航空機解析・空力数値計算を希望していた。
当初MITはアナログコンピュータでこれを試み、後に海軍の提案でデジタルコンピュータの
開発に注力しWhirlwind I を作る。しかしその頃には軍はコンピュータを航空機解析よりも
戦術情報処理や指揮統制業務の能力向上に役立てることに関心が移っていたという

おりしもソ連がファットマンをコピーしたと思われるプルトニウム爆弾の実験(RDS-1)を成功させ
米国内が大騒ぎしていた時期でもあり、Tu-4長距離爆撃機による米本土への核攻撃も可能(※)と
分析されていた。空軍はこれに備えるために地上要撃管制(GCI)の連結と自動化に取り組んでいた。
空力計算の数値積分結果を逐次・リアルタイムでベクタースキャン型CRTに投影し・可視化しようと
していたMITのシステムは空軍の要求に堪えるものと評価され、Whirlwind I は防空システム用
コンピュータのプロトタイプとなる。ニューイングランドのGCIのデータを電話回線経由でMITに転送し
Whirlwind1がこれをリアルタイム処理するというデモンストレーションが成功し、Whirlwind1をベースに
大規模化したコンピュータAN/FSQ-7として正式化され、IBMが主契約をゲットして量産した。
http://www.mitre.org/about/photo_archives/sage_photo.html
0387名前は開発中のものです。2008/12/31(水) 01:05:23ID:K//GK7EM
>>386続き
多数の敵機を捕捉・追跡しながら迅速・適切に邀撃戦力を配当する(意思決定をサポートする)
SAGEシステムが50年代から本格運用された。これは後にICBMによる全面核戦争を想定した
防衛システムや海軍機動部隊の艦隊防空システムなどの礎となる。
SAGEコントロールルームのオペレータはベクタースキャン型CRTとライトペンの組み合わせによるGUIで
直感的な操作を行なうことができた。この技術はCADの礎となった。(アーケードのガンシューもこれ)
SAGEは逐次更新されF-102デルタダガー邀撃機のオートパイロットやCIM-10ボマーク長距離SAMの
中間指令誘導もできるようになった。こうしたリモートコントロールの技術は宇宙機やUAVの礎となる

(※)ソ連はそのころB-29の劣化コピーであるTu-4を配備していたがその航続距離はB-29よりも
   劣っていたことが後に判明する。片道切符で欧州の主要都市を核攻撃する能力はあったが
   米本土まで出張る能力はなかった。後にターボプロップ式の超長距離大型爆撃機(Tu-95:ベア)
   の配備が始まってようやく片道切符であればモスクワ-ワシントンDC間を無給油で核爆弾を
   お届け可能となった。
   米国はTu-4の航続距離とTu-95の保有数を過剰に見積もり、戦術情報処理・指揮統制業務の
   自動化や超音速でぶっ飛んでいく邀撃戦闘機や長距離SAMなどの研究開発に多額のお金を
   投じることとなる

この防空システムで培われた技術はIBMやDECのメインフレームの礎にもなった。特に後者の
PDPシリーズにとってWhirlwind I は直系の親筋にあたる。MITの学生が作ったSpace War!などに
代表されるベクタースキャン型CRTのSTGはPDPシリーズで作られた

(終わり。寝る)
0388名前は開発中のものです。2008/12/31(水) 05:08:08ID:vN1M20DF
キチガイだな
華麗にスルーして次の話題ドゾ
0389名前は開発中のものです。2008/12/31(水) 05:30:43ID:MGGyGm5U
>>386-387
最後にSpaceWarにつながるのかw
あのソースってパブリックドメインなんだよね
ダウソして解析しようとしたことあるんだがPDPの
アセンブリコードの読み方が分からなくて投げた
0390名前は開発中のものです。2008/12/31(水) 07:04:20ID:hWK9IXCu
WikipediaのSAGE半自動式防空管制組織のページを開いたら

>50万行にも及ぶアセンブリ言語で書かれた

( д )゚ ゚ スポーン
0391名前は開発中のものです。2008/12/31(水) 08:38:28ID:c+tqC+cg
・SFCでゲーム一本3万行を超えた記憶がない。ような気がする

・AN/FSQ-7の命令セットがどんなものか知らんのでアレだけど
 きっちりかっちり設計して50万行か。保守が大変だったろうね

・別の視点で見るとそれだけ巨大そうなシステムがアセンブリ言語で
 "たったの50万行"で動いてた、ということにちょっと驚いてみたーり

・昭和20年代でコンピュータが戦闘機を遠隔操作とかやばい。冷戦やばい

・MITやばい
0392名前は開発中のものです。2008/12/31(水) 11:25:14ID:WRynoJXH
PDP-11ならUnix V6関係で解説とかあるけどな。
ttp://www.tom-yam.or.jp/2238/asm.html
これとか手がかりになるかな。

先日もサンタクロース追跡で大活躍したNORADのシステムの祖先の話やね。
トラックボールの発祥もそれだったから、ミサイルコマンドの源流もそこか。
こまかい所だがDECのはミニコンピュータね。それにしても何かの引き写しじゃなくて
自分で書いとるのかいオッサン? データプロセッシング分野と比べて
リアルタイムアプリケーションの話は文献が無いと思うのだが。
0393名前は開発中のものです。2008/12/31(水) 16:41:55ID:vN1M20DF
スレ違いじゃないの?
0394名前は開発中のものです。2008/12/31(水) 23:47:47ID:94mB5cNv
ワイヤーフレームの図形描画に対応してたのか
ゲームを作りたくなる気持ちが分かる気もするな
0395名前は開発中のものです。2009/01/01(木) 00:31:54ID:ocRuaHu5
関係無いよね
スレと
0396名前は開発中のものです。2009/01/01(木) 03:03:58ID:+Dm90zaN
コンピューターが沢山の爆撃機(敵オブジェクト)の振る舞いを監視して
飛行データから未来位置や爆撃目標到達時刻を予測して人に教えて
迎撃機やミサイル(味方オブジェクト)に向かうべき座標を指示する・・・か

まさにリアルDEFCONだな

写真にディスプレイの記号解説あるな
各オブジェクトが所有するステートが垣間見れて面白いな

POINT OF ORIGIN
ALTITUDE
DIRECTION
SPEED
IDENTITY
TRACK NUMBER
FLIGHT PLAN NUMBER
CORRELATION STATUS
TYPE OF AIRCRAFT
FLIGHT SIZE
0397名前は開発中のものです。2009/01/01(木) 05:10:15ID:PQkpygmM
CORRELATIONって辞書引くと相互関係、相関関係となるけど
自機僚機とか親子(発射母機とミサイル)とかそういうもの?

んービル一棟分の真空管コンピューターでSTG作ってみたいわ
0398名前は開発中のものです。2009/01/01(木) 06:37:29ID:ocRuaHu5
スレ違いやめろ
0399名前は開発中のものです。2009/01/01(木) 10:33:14ID:DySRAuVd
スレ違いどころか、板違いだな。
昔話用の板あるんだから、そっち行けよ。
0400名前は開発中のものです。2009/01/01(木) 13:58:54ID:fTWypGoF
>>397
なるほど・・・・・ちゃんとFSMしてるんだな
超プロプライエタリな世界だからソースは無論非公開だろうけど
仕様からおおよそのところが想像できておもろいな
0401名前は開発中のものです。2009/01/01(木) 14:00:21ID:fTWypGoF
>>396>>396-397
0402名前は開発中のものです。2009/01/01(木) 14:16:34ID:kIedBn3k
sageずに書き込みしてる>>374,375,383,385,388,393,395,398 が、
底抜けの馬鹿だと言うことはよくわかった
0403名前は開発中のものです。2009/01/01(木) 15:00:31ID:ocRuaHu5
全然関係無い内容じゃん
引用するにしてもスレと内容の説明責任ぐらい果たしていけよ
垂れ流しが酷いし
タスクシステムと関係無いじゃん
関連してると思ってるって自分だけの思い込みで強引に話を無駄に広げてるんだろうけど
ちょっとオナニーが酷く生臭いよ
0404名前は開発中のものです。2009/01/01(木) 15:12:29ID:AYpKL28G
編隊飛行が表現できるなら木構造になるし
ロックオンした目標が複数あればグラフ構造にもなるな
0405名前は開発中のものです。2009/01/01(木) 15:18:57ID:kIedBn3k
>>403
わかってないのお前ひとりだけじゃん。
お前が底抜けの馬鹿だからわからないだけで・・・
0406名前は開発中のものです。2009/01/01(木) 16:17:14ID:bLjGdube
板違いスレ違いを続けるのはそろそろどうかと思うんだな。
0407名前は開発中のものです。2009/01/01(木) 16:53:23ID:ocRuaHu5
全然関係無いよね
なんか
わからないんだ?プギャー(笑)
的な流れにして説明責任果たそうとしない流れにしがちだけど
現実、仕事となったらここが一番大事だしその後の理論がどんなに立派でも糞とカワンネ
仮に関連してたとしてもこれ関連性を説明するの滅茶苦茶大変だぜ
0408名前は開発中のものです。2009/01/01(木) 16:58:11ID:kIedBn3k
訂正。わかってないの、>>406,407のお前ら二人だけだよ。

大馬鹿はお前ら二人。
0409名前は開発中のものです。2009/01/01(木) 17:27:22ID:AYpKL28G
触んないほうがいいんじゃない?
0410名前は開発中のものです。2009/01/01(木) 18:05:53ID:DH9ba0yV
>>404
こういうのってHFSMみたいな記述になるのかしら

ツリーの各ノードがFSMっていうイメージでいいのかな>HFSM
0411名前は開発中のものです。2009/01/01(木) 18:30:10ID:AYpKL28G
HFSMは状態の木構造、状態の中にさらに状態がある
みたいなものじゃなかったっけ(ちがったかな)
編隊のリーダーと部下みたいなFSM同士の主従関係とか
組織のヒエラルキーをあらわす木構造の場合は
単に木構造のコンテナにFSMが入ってればいいだけなので
HFSMとは違うかもだ
0412名前は開発中のものです。2009/01/01(木) 19:05:56ID:ocRuaHu5
>>408
そんなこと言って難しい部分は説明できないから逃げる気でしょ?
職場でもこんなわけのわからないもの採用させるなんていったら大変なのはそこだよ
逆に批判をかわすのもわけわかんないこと叫んでかわせばいいけど
そうゆうこと馴れると技術者として死ぬよ
批判する側に説明責任の押し付けゴッコ始めていつもかわすけど
そもそもなんの関連もないの明らかじゃん
0413名前は開発中のものです。2009/01/01(木) 19:19:14ID:kIedBn3k
>>412
何度でも言うがわかってないのお前ら馬鹿二人だけなんだよ。

なんなら周りのプログラマにこのスレ見せて聞いてみなよ。
0414名前は開発中のものです。2009/01/01(木) 19:29:46ID:ocRuaHu5
説明責任放棄する奴は二言目には必ずそういう
関係無いから関連を説明しろっていってるだけじゃん
0415名前は開発中のものです。2009/01/01(木) 19:44:34ID:kIedBn3k
>>414
馬鹿すぎて周りに友達いねーのか。それは可哀想に。
0416名前は開発中のものです。2009/01/02(金) 07:00:34ID:sLC5p+39
>>386-387
すげぇな
飛行機や対空ミッソー飛ばしてもデッドライン(敵が目標上空に着く時間)までに
敵とご対面させてやらなきゃ全部パーだよな?

リアルタイムシステムだな。しかもかなりハードな
0417名前は開発中のものです。2009/01/02(金) 16:48:56ID:btxOwAnq
匿名でも記名でもi君の人を見下した態度は相変わらずだな
0418名前は開発中のものです。2009/01/02(金) 20:57:49ID:+c5nb6jC
>>411
dクス。なるほど。状態に子あ孫があるのか
0419名前は開発中のものです。2009/01/03(土) 19:21:39ID:ejAsMA5Y
で、代替案はまだ出ないの?
0420名前は開発中のものです。2009/01/03(土) 23:49:19ID:x7V4/J69
代替案?
なんの?
こんなもん使わなきゃいいだろ
普通に必要なだけ処理書いて引数で必要なもんだけ渡せよ
0421名前は開発中のものです。2009/01/04(日) 09:29:42ID:9lklfsu+
つまり420は配列派というわけですね?
0422名前は開発中のものです。2009/01/04(日) 09:42:16ID:OS7DnqUy
アホか

オブジェクト指向で普通に書けばいいだろヴォケ
0423名前は開発中のものです。2009/01/04(日) 10:01:35ID:bsxJMCxA
配列はインスタンスの話だろ
多分
0424名前は開発中のものです。2009/01/04(日) 11:18:31ID:d8gMrFGB
Taskをモナドにしよう
0425名前は開発中のものです。2009/01/04(日) 15:08:16ID:9lklfsu+
オブジェクト指向で普通に書いたらタスクシステムだけど?
0426名前は開発中のものです。2009/01/04(日) 16:24:39ID:OS7DnqUy
オブジェクト指向プログラミングでは双方向リストをガチガチに手書きするのが
普通なんですかそうですか。

それってどこの世界のオブジェクト指向プログラミング?
0427名前は開発中のものです。2009/01/04(日) 16:48:53ID:Do3+Cssh
リストかどうかって別に本質じゃないような。

>>2を見る限りでは、個々のタスクはただ一つ、「実行しろ」というメッセージにしか
反応しないオブジェクトのように見えます。

よって、オブジェクト間の相互作用のための手段は非常に限られるので、
C風に「リストを舐めて構造体の中身を直接のぞく」コーディングが行われていたのでは
ないでしょうか。
それは「OO」じゃないですよね。人のものを勝手に見るのではなく、
人に頼む、尋ねるのがOOのスタイルです。

それとも、実際にはタスクは複数のメッセージを処理するためのディスパッチャ
や関数テーブルを持っていたのでしょうか?
それならば、貧弱な言語/環境であるがゆえに
自分で型タグやオブジェクトID、メソッドテーブルを実装しなければならなかった
というだけで、OOであると言っていいと思います。
0428名前は開発中のものです。2009/01/04(日) 19:15:52ID:OPWOLTuA
そういう、Cでオブジェクト指向を実現するためのテクニック
(有名どころではXtとかが使ってた)の真似事みたいなことは
してるけど、オブジェクト指向とはどうにも認めがたい。

タスクとキューはis-a関係じゃないしな。
(オブジェクト指向をCで、的にはそういうことをしてる)

秀和の本でだいぶ古いけど、「C言語ゲームプログラミング」が
それっぽいことをやっていたな。今見る価値がある本ではないが。
0429名前は開発中のものです。2009/01/04(日) 22:14:00ID:JA/ZQlx8
C++で普通に作ったらタスクシステムというものをわざわざ用意しなくてもいいのは事実。
単一のインスタンス構造に多数の関数ぶらさげてただけだし。
0430名前は開発中のものです。2009/01/04(日) 23:50:15ID:ZM4TPJrr
とんでもない神レベルの人ととんでもない馬鹿とが混在するのがこのスレの面白いところだな
0431名前は開発中のものです。2009/01/05(月) 01:24:39ID:NWIfeL18
>>429
あんまりその辺こだわってる奴ってもういないと思うぜ
オブジェクト指向云々とかあまり問題じゃない
たまに急に振る奴がいるけど別にクラスなんかあってもなくても同じ問題に直面する

ま、STGだったら自機、敵、弾とあってそれぞれをクラスっていうか
オブジェクトにして必要な分のインスタンスを用意する

ここまではみんないっしょだろうし別にC言語風味に構造体定義して
インスタンス作っても別に大して変わらない

問題はインスタンスの扱いだと思うんだよね
@void*で一括して配列用意して(リストでもいいけど)newで確保して型覚えておいてキャストして使うか
(これがタスクシステムっぽいやつ?)
A型ごとに配列定義して地道に作っていくか
(これが正統派?)

まあ、微妙な違いはあれどこの2つのどっちかになるだろね
前者だと必要なところどころで型キャストして戻さなきゃいけないけど一括して扱える
後者だと型ごとに同じ処理を何度も書かなきゃいけないけどキャストとかする必要がない

ただ、@の方法で組むと一括処理にばっかりこだわって引数とか省略して
グローバル変数使うようになってバグが増えるのはたしか
Aで組んだほうがソースもわかりやすい(と、俺は思う)
まあ、Aは面倒だけど正統派?そんなイメージ(ただ、面倒っていっても実装的に面倒って話だからねぇ・・・)

とまあ、オブジェクト指向云々関係ないでしょw
0432名前は開発中のものです。2009/01/05(月) 02:50:49ID:yvKzI2YZ
一括して扱える、同じコードで扱えるというのはCPUにとっては全くうれしくない

闇鍋循環リストに全てを放り込む>>2が何故詰んでいるかというと
弾も敵もパーティクルもひとつのリストにぶち込み同じコードでディスパッチするから。
分岐先はほぼ予測不可能。>>2はハードウェアに分岐先を絞り込むヒントを与えない。
サブルーチンアドレスはフラットなFSMの状態変数を兼ねているため種類は膨大。
CPU内蔵の分岐先バッファは役に立たない。ループする度に分岐先予測ミスが発生し
ペナルティを受ける。毎度毎度ご丁寧にサブルーチンアドレスを参照してディスパッチ
オブジェクトの種類順(弾、敵、プレイヤーなど)にソートしても根本的な解決には
ならない。なぜならオブジェクトの種類が同じであっても状態が違えばサブルーチン
アドレスは違うのだから

大昔に興味本位で測定した。AMDのAthlonXP(Bartonコア)で>>2を使うと速度は半分になった

大昔の、アドレッシングモードの貧相な(かなり特徴的な)8bitCPU、それにOBJやBGを
HSYNC毎にアナログ映像信号に変換してCRTに出力してくれるハードワイアードロジック回路
を搭載したカスタムボードを中途半端に意識して、当時の神の業などと詐称して喧伝してる時点で
クズの所業だが、実際に走らせるハードの特性を完全に無視してるのだから輪をかけてクズといえる
0433名前は開発中のものです。2009/01/05(月) 03:19:03ID:yvKzI2YZ
あ、クズの所業ってのは>>2の各URLの中の人のことじゃないからな
そこで解説されてる手法(?)を祀り上げてるカルト信者のことな
0434名前は開発中のものです。2009/01/05(月) 07:07:50ID:s3/QcMtY
×HSYNC毎に
○ライン毎に
0435名前は開発中のものです。2009/01/05(月) 08:26:50ID:tyiIafJA
>>432
>大昔に興味本位で測定した。AMDのAthlonXP(Bartonコア)で>>2を使うと速度は半分になった
面白いですね。比較対象ってどんな組み方のものですか?
0436名前は開発中のものです。2009/01/05(月) 09:23:56ID:294GFQWC
いまどきのオブジェクト指向のメッセージ処理で多用される間接ジャンプを、
現代のプロセッサでは性能が出ないとか扱き下ろしている人がいるのは
このスレですか?
0437名前は開発中のものです。2009/01/05(月) 10:41:47ID:s3/QcMtY
制御対象の計算粒度と数の特性ゆえに>>2は不利となる
パフォーマンスアナライザやプロファイラを使わず現実を見ずに先入観のみで
>>2はきっと良いに違いないと盲信するならエンジニアではない
エセ科学信仰とかカルト信仰に溺れる知的弱者だ
0438名前は開発中のものです。2009/01/05(月) 10:51:52ID:T3/gLJL6
>>431
@かAを採用するかは
ゲームによって臨機応変に対処すればいいんじゃないかな
どちらか絶対という事はないと思う
弾幕シューティングなどは明らかに後者が適していると思う
自分が最近作ったゲームはシーン(メニュー、コンフィグ、ゲームプレイなど)すら
オブジェクト化した@を採用してみた
0439名前は開発中のものです。2009/01/05(月) 13:00:39ID:294GFQWC
>>437
> パフォーマンスアナライザやプロファイラを使わず現実を見ずに先入観のみで
> >>2はきっと良いに違いないと盲信するならエンジニアではない
> エセ科学信仰とかカルト信仰に溺れる知的弱者だ

あっそう。

> 制御対象の計算粒度と数の特性ゆえに>>2は不利となる

と断言する根拠を是非パフォーマンスアナライザやプロファイラで示してね。
0440名前は開発中のものです。2009/01/05(月) 13:07:36ID:F56Xf+vn
性能「だけ」で何かを論じるのはおかしくね?
性能だけで論じるなら早い話がC++とか消えろって話だよね

まあC++で書いてるなら
・擬似OOの実装を頑張らなくても、言語組み込み機能でタダで手に入る
・FSM作るのに関数ポインタのすげかえやマシンレベルの実行コード書き換えは
 用いない
・何でもかんでも一個のリストに繋げない
でしょうけれども
0441名前は開発中のものです。2009/01/05(月) 13:24:38ID:DMExbRge
タスク同士で関連づけってどうやってる?
0442名前は開発中のものです。2009/01/05(月) 19:58:30ID:whWAu0ni
タスクシステムって1つのリスト限定なの?
じゃあ俺のタスクシステムじゃなかったんだw
0443名前は開発中のものです。2009/01/05(月) 20:04:55ID:iIypQ15B
>>438
そのごった煮状態ってなんかいいの?
ソース見る側としちゃ勘弁してほしい感じだけど
0444名前は開発中のものです。2009/01/05(月) 23:51:57ID:fCMc2sX5
あけましておめでとうなのねー

>>387
IBMやDECのメインフレーム

IBMのメインフレームやDECのミニコン

>>392
末尾のPDPミニコンの部分は記述ミス。ごめん
酩酊状態でタラタラ書いて校正せずにそのまま投げて寝ちゃった。
Whirlwind 1とSAGE防空システムに関しては英語文献が存在する
半世紀以上前の兵器システムの大凡の機能は教本に載っている。
どっかのmilドメインのサイトに幹部や技術系の中途採用試験(?)
対策用の参考資料が公開されている。詳細なパラメータは伏せてあるが
ぐぐればバシバシひっかかる
0445名前は開発中のものです。2009/01/06(火) 00:05:24ID:d8k/H0vb
>>432
半分はないと思うよJK
0446名前は開発中のものです。2009/01/06(火) 00:16:06ID:uRByKfho
>>441
めっちゃくちゃ複雑じゃね?
そこまでなったらもうバグのオンパレード状態で収集つかない希ガス
0447名前は開発中のものです。2009/01/06(火) 12:42:23ID:Eo7dUke5
>>438
マルチコアならAの方がいいと思う。
カプコンのMTフレームワークもそんな感じだったような。
0448名前は開発中のものです。2009/01/06(火) 14:37:10ID:z4Dce+Vd
>>443
ごった煮かもしれんが、並列処理ができるのがいいのよ
例えばタイトル画面表示中に、雪を降らせるなんてことも容易に実現できる
シーン式のゲームでもやろうと思えばできないことはないが面倒だろ
流石に全てのゲームジャンルでこの方法が適しているとは思わない
0449名前は開発中のものです。2009/01/06(火) 15:13:06ID:8Exk+ciZ
よくわからんが
より抽象度の高い話をすれば
「全てのゲームオブジェクトについて、1フレーム内でiterativeに処理を行いたい」
あるいは
「全てのゲームオブジェクトに、同じメッセージをブロードキャストしたい」
ことがあるかどうか、という話じゃなかろーか
あるのなら、それをリストに持っておくという実装もあるだろう

ただ、抽象的には欲しいのは「リスト」ではなく「反復子」のはずなので、
実装はどうとでもできるように思える
0450名前は開発中のものです。2009/01/06(火) 17:34:45ID:AVnom9hs
>>448
ジョブエントリのリストをなめて順次処理(バッチ処理)するだけの
コードをもって、これは並列処理できるのだと豪語するか。これいかに

バッチ処理するしか能のない粗末なコードをポンと渡して
それをユーザーに無理矢理に逐次処理に使わせておいて
(逐次・並行処理に必要な仕組みは全てユーザーに丸投げておいて)
どうだ便利だろこのソロモンの指輪は、並列処理できるんだぜ、なんといういとしいしと・・・
と陶酔するのは技術屋としてどうなの
0451名前は開発中のものです。2009/01/06(火) 20:14:08ID:dEvFXJdO
>>448
何を言ってるのか本気でわからない
Aで組んだことない?
仮にごった煮にしないでシーン?とゲームオブジェクトを別に管理したら
そっちのが扱いやすいだろ?
まとめるってことはアクセスするたびにそいつを判別するなんらかの仕組みが必要になるってことだし基本的には面倒が増えるよ
よほど一括で処理したいなにかがないとメリットはないと思うんだけど?
0452名前は開発中のものです。2009/01/06(火) 20:27:19ID:a2y2pcid
結論:

タスクシステム = カオスで美麗で斬新な60FPS紙芝居の夢を追及している奴専用
0453名前は開発中のものです。2009/01/06(火) 20:36:30ID:SJLak1z6
うおおおおお!
0454名前は開発中のものです。2009/01/06(火) 21:25:55ID:c5JPjzC/
アクセスするたびに判別が必要ならそれはタスクシステムじゃないじゃん?C++あたりで組むなんちゃってタスクシステムだよ
0455名前は開発中のものです。2009/01/06(火) 22:20:13ID:IveoX0Qe
タスクシステムが賛否両論なのはきっと分割の粒度・観点とかの違いですよ。ええ。
と思いついたので分類してみた。C++なんちゃってタスクシステムの話

 1. マルチプロセス級:ゲームタスク、バッテリ残量監視タスク、...
 2. マルチスレッド級:入力監視タスク、ゲーム処理タスク、描画処理タスク、鳴音タスク、...
 3. 仮想関数インタフェース級:仮想update関数タスク、仮想move関数タスク、仮想draw関数タスク、仮想onkey関数タスク、...

・マルチプロセス級はほぼ関係無い処理だけど1台のPCにはともに入ってて欲しい位のとこで分割。.exe相当。
・マルチスレッド級は決まりきったデータ通信が発生する程度に関係のある処理で分割。
 通信を標準化するのもそう悪くないってとこで分けるのがミソかも(使ったこと無い俺)。
・仮想関数インタフェース級は関係性とか概念の違いとか無視してたまたま関数インタフェースが似た感じっぽいところを探して
 縦横無尽に共通化(抽象化)したもの。イベントハンドラの延長?
 仮想関数インタフェース自体の仕様変更耐性とか再利用性が最悪。最悪。最悪。
 それでいて性能も悪いかも。仮想関数ゆえにメモリキャッシュまわりとか?
 でも1画面ミニゲーム、画面エフェクト無し、凝ったギミック無しとかなら使い勝手良かったりする。
 グローバル変数が通常サイズのクラス1個分に収まる程度までが利点を享受できる適正規模?

2と3の間にゲームオブジェクトとかシーンオブジェクトとかで分けた「クラス分け級」を入れようとしたけどなんか無理だった。
3番と同じ気がしてしっくりこなかった。
0456名前は開発中のものです。2009/01/06(火) 23:16:50ID:8QL2ssG/
実際のゲームってどういう設計が使われてるんだ?
0457名前は開発中のものです。2009/01/06(火) 23:22:37ID:UozvWyya
そもそも実際のゲームには何か共通した設計というものがあるのか?
0458名前は開発中のものです。2009/01/07(水) 00:21:50ID:ioSES1so
その共通部分を抽出したものがタスクシステムだと思っていたんだが・・・
0459名前は開発中のものです。2009/01/07(水) 02:21:29ID:02Pyli+B
>>458
残念だがそのシナリオを選択する(orデカイ声で叫ぶ)のは遅すぎだな。というか無理がありすぎるな

>>2(特にLogicianLord。拡散の元凶)と>>2を誤読したゲッベルス(松浦大先生。拡散させた偉大な男)
およびその忠実な部下(熱烈な読者)は、パンピー(neutralな人)たちに対して、奇妙なまでに一致した
偏った「とあるヘンテコリン実装」でもってタスクシステム(?)なるものを解説しネット・雑誌・書籍で
流布した。流布し尽くした。2009年現在、ネット上で>>458説を提唱するのは完全に手遅れといえる

タスクシステムという言葉は>>2に代表される、極めて特徴的な、奇異なまでに一致したヘンテコリン実装

       「TCBがプライオリティをサブルーチンアドレスでディスパッチなのです><」

と完全に癒着している。もう引き剥がせない。OoOやマルチコアプロセッサの普及により>>2の実装が
obsoleteといえるならば、タスクシステムという呼称もまたこの味噌が付いた実装と共に成仏することになる
0460名前は開発中のものです。2009/01/07(水) 08:38:38ID:A93Nxs/X
ところで次スレからは書籍もテンプレに入れようぜ、戦犯としてw
Cマガ2004/12「ゲームのためのタスクシステム」松浦
単行本「シューティングゲームプログラミング」松浦
「Windowsプロフェッショナルゲームプログラミング2」やね

これだけ?
0461名前は開発中のものです。2009/01/07(水) 20:53:38ID:axJ9jn6k
>>459
じゃあ実際はどんなのが使われてるのか教えてください。
まったく違うものなんですか?
オブジェクトの種類ごとに持つデータが違うとか、
オブジェクトのデータのメモリ管理方法が違うとか、単一のリストじゃないとか、
そんなのは違いのうちに入らないと思うよ。
0462名前は開発中のものです。2009/01/07(水) 21:57:34ID:dIlqsnyP
>>459
オイ、コラァ!
「ヘンテコリン」はお前とお前のキチガイじみた駄文だろーが
やたら人を見下した態度をとっているが、具体的論理展開は全く無し。
典型的なチキンだな。
0463名前は開発中のものです。2009/01/07(水) 22:12:07ID:rBsXmGd8
>>457
シーン遷移とシーン管理。
あれはひとつクラス作って使い方を決めときゃどんなゲームでも鉄板では?
0464名前は開発中のものです。2009/01/08(木) 00:12:58ID:pmCaa13A
>>461
> じゃあ実際はどんなのが使われてるのか教えてください。
過去ログぐらい嫁
0465名前は開発中のものです。2009/01/08(木) 00:19:01ID:XxumHwJp
上で議論した気にってるやつはC++を使いこなせてない。
不必要に全部のオブジェクトを1個のリストに乗せる必要もない。

Cとは縁を切るところからはじめるんだ。
0466名前は開発中のものです。2009/01/08(木) 00:46:34ID:4sBQ+VSz
ただの倉庫ならどう作っても同じ
俺たちが作りたいのは電動車庫なんだ

ボタンを押せば欲しいものが出てくる仕組み
Javaではリスナー、Cではタスクシステム、C++ならコンテナ、DelphiならTList
みんな完璧じゃないけど一工夫してある

ただの線形リストとタスクシステムの違いはデータにメッセージを送ると能動的に処理が走ること
プログラム側からデータを触ってやらないといけない線形リストだとデータがグローバル変数と
同じように扱われ保守性が落ちる

タスクリストはただの線形リストではない
0467名前は開発中のものです。2009/01/08(木) 02:59:34ID:B6I28cqd
>>464
過去ログ読んでも同じような煽りしか無いじゃないかw
0468名前は開発中のものです。2009/01/08(木) 05:04:27ID:VWBWdLMf
>>466
ただの線形リストでも要素がクラスインスタンスなら、その「タスクシステムの違い」ってのは
無くなるね。
0469名前は開発中のものです。2009/01/08(木) 07:36:03ID:+JWwjlC0
>>466
何言ってるかわかんない
結局ありがちなごった煮リストなんだろ?
違いをもたせるなよ(笑)
0470名前は開発中のものです。2009/01/08(木) 22:56:20ID:XxumHwJp
>>469
おまえはまずデザパタとエフェクティブC++を読め。
■ このスレッドは過去ログ倉庫に格納されています