[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 2chのread.cgiへ]
Update time : 01/20 07:30 / Filesize : 258 KB / Number-of Response : 798
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


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

タスクシステム



1 名前:名前は開発中のものです。 [2010/10/01(金) 19:54:53 ID:ZGMtyIlk]
タスクシステムで〜す。

431 名前:名前は開発中のものです。 mailto:sage [2011/10/01(土) 19:01:11.25 ID:4Qkbvj2b]
どうわめいたところでタスクシステムの利点の説明には全くならないけどな

432 名前:名前は開発中のものです。 mailto:sage [2011/10/01(土) 19:04:36.54 ID:mr3cMBb4]
>>431
タスクという単位を追加したり削除したりできるということじゃないの?最大の利点は。
アセンブラ時代にそんな仕組み(というほどのもんでもないが)があったら便利じゃね?

433 名前:名前は開発中のものです。 mailto:sage [2011/10/01(土) 22:11:56.69 ID:2nvg1+bG]
>>432
それがなんでメリットなの?

434 名前:名前は開発中のものです。 mailto:sage [2011/10/01(土) 22:43:33.98 ID:LZXefmMe]
アセンブラ時代はストレートに書いたらモジュール化がめんどくさかったのよ。

435 名前:名前は開発中のものです。 mailto:sage [2011/10/01(土) 22:46:37.82 ID:LZXefmMe]
いい方が悪いな。いわゆる、システムで規定(規制)すると、見通しが良くなるといった方がいいか。
いまは、OOPのほうが見通しが良くなる。

436 名前:名前は開発中のものです。 mailto:sage [2011/10/01(土) 22:49:58.19 ID:LZXefmMe]
追記、アセンブラは、ほんとに何でもあり、何でもできる、gotoどころじゃないほど自由。
だから、システムを決めるだけで、生産性が上がるのよ。

437 名前:名前は開発中のものです。 mailto:sage [2011/10/01(土) 23:43:06.40 ID:Z34fGsZH]
スレがスゲー伸びてるな。
一応断っておくけど、型ごとにリストのベタ書きの人は俺で、
セミナー君とは別人な。

セミナー君の気持ちは分かるが、感覚的な書き込みは2chでは通じないぜ?
それなりの根拠を書かないと、煽り屋と同レベルになっちまうぜ。

OOP云々の話はスレ違いだが、あえて変わりに補足しておくと、
マルチメソッドの無いOOPLは、不完全な代物だから、
随分思考や思想が捻じ曲がるところがあって、
それに不快感を覚えるのは正常だろう。
また、それらの不快感はある種タスクシステムにも通じるものがある。得てして左巻きな。
そうはいってもOOPの言語機能は武器になるから、分かっててうまく使う分にはOK。
これといった利点が無いのにディメリットばかり目立つタスクシステムと違う。

438 名前:名前は開発中のものです。 mailto:sage [2011/10/02(日) 00:21:35.13 ID:/NTU2tnz]
>>437
C++のオーバーロードはマルチメソッドと言えるのかどうか聞かせてくれ。

439 名前:名前は開発中のものです。 mailto:sage [2011/10/02(日) 00:22:59.31 ID:LGUmsQ7Z]
それから、ベタ書き=if/swtchとソースロンダリングしようとしている人が居るが、
俺はそんなことは一言も書き込んでない。
「型や用途ごとにリストを持つ」、と述べたのみ。
関数ポインタや仮想関数やインターフェースや差分プログラミングを否定した覚えは無い。
むしろ、そういった細かな対応をするための、型ごとコレクトだ。
型にはインターフェースも含まれるし、インターフェースは複数持つことが出来るから、
複数のリストからオブジェクトが参照されるのも有り。
いたって普通のプログラミングスタイル。



440 名前:名前は開発中のものです。 mailto:sage [2011/10/02(日) 00:43:03.85 ID:LGUmsQ7Z]
>>438
オーバーロードは静的なマルチメソッドとして機能するね。
これとテンプレートを組み合わせて、ダッグタイピングしたり、C++はかなり柔軟だね。
動的じゃないのが残念だが。

単一ディスパッチのOOPLが不味いのは、
プログラマがオブジェクトの性質を、そのオブジェクト自身で決定しようと躍起になってしまう点だろう。
中二病的というか、男の子のロマンと言うか、なんというか。
実際には、メソッドはオブジェクトのメンバの整合性を保つためのsetter/getter相当だけで良かったり。
というのも、環境内のオブジェクトの性質は、周りとの関係で決定されるものだから、
性質の大部分はオブジェクトの外からじゃなきゃ決定できなかったり。
行間や空気の話。

441 名前:名前は開発中のものです。 mailto:sage [2011/10/02(日) 00:53:22.09 ID:/NTU2tnz]
良かった、危うく敵対しそうになったよ^^

442 名前:名前は開発中のものです。 mailto:sage [2011/10/02(日) 01:11:13.32 ID:LGUmsQ7Z]
あーちょっと訂正。
ダッグタイピング→ダックタイピング

443 名前:名前は開発中のものです。 mailto:sage [2011/10/02(日) 01:11:21.21 ID:HHG+AjpE]
使う人が不味い前提だと何でも不味いな

444 名前:名前は開発中のものです。 mailto:sage [2011/10/02(日) 09:52:34.17 ID:TNu4W6Dl]
codezineの記事はどうでもいいと誰かが言ってて、これに異を唱えなかったけど
今、データ構造と制御構造がごちゃまぜになってる何かを批判してる人は具体的に
何の実装を指して批判してるの?

それともまさかまーた自分に都合のいい妄想の産物をタスクシステムと脳内定義して
シャドウボクシング始めてる?手応えがない理由はそこにあるんじゃないの?


445 名前:名前は開発中のものです。 mailto:sage [2011/10/02(日) 10:55:32.67 ID:1pG+sSgt]
> 自分に都合のいい妄想の産物

それシステム厨のことだろw

446 名前:名前は開発中のものです。 mailto:sage [2011/10/02(日) 12:15:05.71 ID:dBTeZx53]
タスクシステムの、曖昧ではない定義とそのメリットは、
今まで一回もこのスレで示されたことはないし、
今後一切示されることもない。

既に示された、これが定義で決定、これがメリットで決定、
というのがあればスレ番とレス番を示すべき。

447 名前:名前は開発中のものです。 mailto:sage [2011/10/02(日) 12:30:59.00 ID:rxzsO76O]
codezineのメリットからの流れで追い詰められてOOPまで否定して
>>413 で終わったのに、アンチって学習能力0だね・・・

>>439
>俺はそんなことは一言も書き込んでない。
お仲間の切捨てか過去の主張を無かったことにしたいのかしらんが。
void*とかif/switchとかOOPとかセミナー詐欺とか、負けるたびに
「俺はそんなこ言ってない、そんな真性馬鹿と一緒にするな!」ってパターン
繰り返してるけど、飽きない?

で?アンチでまだ残ってるのは
「iOSでタスクシステム使ってる書籍が具体的に出てるなんて嘘だ!
アセンブラ時代の技術ということにしておかないと負けちゃうから!」
ってお馬鹿さんかな?これもすぐに「そんなこ言ってない」って同じパターンになるんだろうな・・・

448 名前:名前は開発中のものです。 mailto:sage [2011/10/02(日) 12:37:10.24 ID:dBTeZx53]
そしてまたメリット出ない。

449 名前:名前は開発中のものです。 mailto:sage [2011/10/02(日) 12:48:13.67 ID:5znOePjA]
メリット厨が相手をして欲しそうにこっちを見ている!



450 名前:名前は開発中のものです。 mailto:sage [2011/10/02(日) 12:49:25.53 ID:rxzsO76O]
アンチは同士として責任もってこのメリット真性馬鹿をOOP板まで送り届けてくれんかね。
でないと「あんな馬鹿と一緒にするな」って言い続けることになるぞ?
切り捨てた無能な仲間でもお前らの仲間なんだからさ。

451 名前:名前は開発中のものです。 mailto:sage [2011/10/02(日) 12:54:05.39 ID:/glPmwzG]
またまたあ
そういうえらそうなことはメリット出せてからいってくださいよw
こっちは絶対出ないってわかってますけどねw

452 名前:名前は開発中のものです。 mailto:sage [2011/10/02(日) 14:43:34.73 ID:dBTeZx53]
結局、メリットは出ない。

453 名前:名前は開発中のものです。 mailto:sage [2011/10/02(日) 21:14:46.93 ID:+Ah+M08D]
> iOSでタスクシステム使ってる書籍が具体的に出てるなんて嘘だ!
具体的なメリットが説明できなくても書籍に載ってたらOKという判断基準も、
さすがタスクシステム使いだよね。

454 名前:名前は開発中のものです。 mailto:sage [2011/10/02(日) 22:10:36.61 ID:HHG+AjpE]
ずっと池沼のターンw

455 名前:名前は開発中のものです。 mailto:sage [2011/10/02(日) 23:17:11.55 ID:issXGZDZ]
メリット厨→>>409>>340>>411(粘着メリット厨が壊れていることが判明)→>>413
この流れはテンプレにしようぜ。
過去ログ見ればわかるが、粘着メリット厨は数年前から同じことを言って粘着してるぞ。
下(粘着アンチ=スキッツォフレニア)は無視して、上を目指すことに合意してくれるよな。

456 名前:名前は開発中のものです。 mailto:sage [2011/10/02(日) 23:57:45.74 ID:rxzsO76O]
メリット君はアンチの飼い主責任で引き取ってもらいたいところだがねぇ・・・
アンチ同士、似たようなレベルってことで通じ合うんじゃない?
OOPはセミナー詐欺、とかこちらとはいろんな意味で違いが大きすぎて
言葉が通じる気がしないから。

457 名前:名前は開発中のものです。 mailto:sage [2011/10/03(月) 00:23:56.76 ID:/jm3MSFo]

   で?

タスクシステムのメリットが出てない状態でこの話進むの?

458 名前:名前は開発中のものです。 mailto:sage [2011/10/03(月) 00:45:33.69 ID:OOEq7q0i]
>>455
下アンチがメリット君=セミナー君で
上アンチが>>437のベタ書き君=引数君というキャラ設定なのかね。
正直あまり違いが感じられないんだがwww
アセンブラ君は上下どっちのキャラなんだろうな?www

下アンチのお出ましだぞ。上アンチは責任もって介護しろよwww
>セミナー君とは別人な。
って同一人物とは見られたくないんだろ?

459 名前:名前は開発中のものです。 mailto:sage [2011/10/03(月) 01:14:28.92 ID:5UZRc0QU]
メリット大好きのシャンプー君まだ頑張ってたのか・・・成長なさすぎだろ
懲りない上に新たにセミナー君という称号まで授与か。おめでとう、おめでとう



460 名前:名前は開発中のものです。 mailto:sage [2011/10/03(月) 06:19:59.13 ID:/jm3MSFo]
ふんふん
んで、タスクシステムのメリットは出たの?

461 名前:名前は開発中のものです。 mailto:sage [2011/10/03(月) 08:32:31.42 ID:9W41bw6d]
>>460
まーだでーす!

462 名前:名前は開発中のものです。 mailto:sage [2011/10/04(火) 06:41:44.40 ID:l8tGELq7]
>>458
>下アンチがメリット君=セミナー君で
「上」はその他全てのベクトルという設定だったんだが。
粘着メリット厨だけは、はっきり「下」と言える。
いい歳こいてあわれだな→粘着メリットじいさん

463 名前:名前は開発中のものです。 mailto:sage [2011/10/04(火) 07:43:48.37 ID:ONGtfyg7]
結局メリット出ず。

464 名前:名前は開発中のものです。 mailto:sage [2011/10/04(火) 22:10:53.44 ID:SJxp+pcL]
くだらん展開になってきたな。
あえてメリットを挙げるなら、実行順の動的制御だろう。
ただ、その最たるもののZソートは今や描画エンジンとしてモジュール化するのが当たり前だし。
最早、これといって実行順を動的に並べ替える必要性も無いんだよね。
というか、シーケンシャルに記述するために、わざわざ描画エンジンやサウンドエンジンを外部に追いやった訳で。
そういった流れの中で、タスクシステムの必要性を挙げるのは難しいだろう。
だって、頑張って有効例挙げたところで、
「その機能、モジュール化して外部に追いやれば?」
って言われちゃうの分かりきってるもんね。
煩雑化する箇所が局所で済むし、要求が具体的だから最適なアプローチが出来るし。

465 名前:名前は開発中のものです。 mailto:sage [2011/10/04(火) 23:13:21.91 ID:qkdwGEk5]
ペロッ・・・これはハード屋くん

466 名前:名前は開発中のものです。 mailto:sage [2011/10/04(火) 23:33:25.06 ID:HZfzTqCk]
>>464
進歩ねーのな

× タスクシステムの必要性を挙げるのは難しいだろう
○ 僕のタスクシステムの必要性を挙げるのは難しいだろう

この訂正を否定するなら言及してる対象はこれだと明確に指定しような

467 名前:名前は開発中のものです。 mailto:sage [2011/10/04(火) 23:50:04.60 ID:Uomhnt2s]
>「その機能、モジュール化して外部に追いやれば?」
と言われるほど、モジュール化に問題があるのが最大の欠点だろ。
それを、正しい指摘だと受け取れなとは、なぜに?

468 名前:名前は開発中のものです。 mailto:sage [2011/10/04(火) 23:59:08.16 ID:RjfV5qyp]
>>464
codezineの記事を前提に話をすると、とか、正直に前置きすりゃいいものを・・・
毎度欲張って絞込み条件なしに「タスクシステムは〜」とかほざいてっから足元すくわれんだよ
こんだけ特徴的な過ちを何度も懲りずに繰り返してるところ見るとなんか池沼くせぇな

469 名前:名前は開発中のものです。 mailto:sage [2011/10/05(水) 00:21:40.13 ID:jxQS90CV]
特定の目的を持ったタスクシステム→正しい名前をつけて外部に追いやれば?
汎用タスクシステム→ゴミ。

これで終わっちゃうんだから、仕方ない。



470 名前:名前は開発中のものです。 mailto:sage [2011/10/05(水) 06:32:54.62 ID:nKzcwJ6c]
アンチ君の考える見当違いな問題とは無縁の実例 >>306 >>333 は選び放題なのにな。
アンチ君は自分の脳内にしか存在しない憎っくきヘボタスクシステムって見えない敵と戦ってるだけだよな。
A「他人の頭で考えたタスクシステムは問題なく実装されて稼動しています。
僕の頭で考えたタスクシステムは問題だらけで実装すらできず妄想だけの存在です。
やはりタスクシステムは使えない!」
B「使えないのはタスクシステムじゃなくてお前の頭だろ」
>>257 につながる、と。

471 名前:名前は開発中のものです。 mailto:sage [2011/10/05(水) 06:34:57.72 ID:Sdh8DViy]
うんうんわかるわかるよー

  で?

タスクシステムのメリットは出たの?

472 名前:名前は開発中のものです。 mailto:sage [2011/10/05(水) 06:54:40.93 ID:EvqFRpw2]
タスクシステムのメリットも出せないくせに長文だけは一丁前とかやめてよね

473 名前:名前は開発中のものです。 mailto:sage [2011/10/05(水) 10:19:15.03 ID:fVOpakwU]
自分のレスを大事に使いまわす姿は、
自作フレームワークになんたらシステムという名前を与えるのに似てる。

474 名前:名前は開発中のものです。 mailto:sage [2011/10/05(水) 17:59:34.91 ID:CbI1T/gJ]
>>473
引数に入れてるものが同じなら同じ結果しか出ないだろ
タスクシステムは違うけどね(笑)

475 名前:名前は開発中のものです。 mailto:sage [2011/10/05(水) 19:33:47.03 ID:6j70lWr8]
こういうコンテキストの著しくわかりにくい「僕のタスクシステム話」の難読性をみるに
こいつのひり出すコードも相当ひどそうである

476 名前:名前は開発中のものです。 mailto:sage [2011/10/07(金) 08:09:50.35 ID:vpEV4zvW]
セミナーで好んで紹介されてるとかマジ?
手法の一つなだけで商業的なもんじゃないだろ

477 名前:名前は開発中のものです。 mailto:sage [2011/10/07(金) 12:06:31.35 ID:SaCADO9P]
> セミナーで好んで紹介されてるとかマジ?

一体どこにそんな書き込みがあるんだい?
まさかセミナー君(OOPわからないから全否定しちゃってる残念なオジサン。引数君)の
世迷言を誤読した上に間に受けちゃったりしてないよね?

478 名前:名前は開発中のものです。 mailto:sage [2011/10/07(金) 12:27:25.41 ID:C1th/bKH]
「○○君」

レッテル張りからスタートする思考法である。
なんたらシステムという大層な名前もさも似たり。

479 名前:名前は開発中のものです。 mailto:sage [2011/10/07(金) 15:35:01.60 ID:I34dkoqZ]
まるで成長のない人間が名無しで延々と繰り言を並べてんだから
記号付けされんのはごく必然なことなんだけどなw
勝手に名前付けられて気に食わないなら自分好みのコテつけな



480 名前:名前は開発中のものです。 mailto:sage [2011/10/07(金) 17:17:32.16 ID:m6rfVz1m]
>>479
うんうん

  で?

タスクシステムのメリットは?

481 名前:名前は開発中のものです。 mailto:sage [2011/10/07(金) 19:09:15.97 ID:5rYBYhNY]
メリットおじちゃんはもう死んだと思ってたw

482 名前:名前は開発中のものです。 mailto:sage [2011/10/07(金) 22:24:09.45 ID:TcfAKlX+]
タスクシステムのメリットが出てくるまで俺は君たちを殴るのをやめない!

483 名前:名前は開発中のものです。 mailto:sage [2011/10/07(金) 22:30:23.84 ID:vNpBJBjT]
このおじさんは24時間張り付いてるのが凄いよなwww
その生活のメリットを聞きたい

484 名前:名前は開発中のものです。 mailto:sage [2011/10/07(金) 23:39:13.83 ID:GBo5Q8mH]
しかし詰まらんスレに成り下がったものだなぁ。
昔は真性タスクシステマーがポエムなソースコードを貼り付けて、
皆でフルボッコって楽しいスレだったんだがな。
絶滅しちまったのかねぇ。

485 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 00:27:18.92 ID:TECbiV84]
真性メリットおじさんではダメですか

486 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 06:04:58.29 ID:xhpqp6LY]
セミナー行ったらFor文ってのをやたら勧められたぜ!
Forは宗教的なもんっぽいからみんな使っちゃダメだぜ!

487 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 09:23:14.85 ID:fPpydaqH]
>>484
あんたら苛めるからタスクシステマーが怯えてしまったんじゃないかw
今ではソースどころか、メリットすらあげなくなっちゃったぞw
タスクシステムスレなのになw 決してタスクシステムの詳細を語らないw

488 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 10:39:59.57 ID:HKOZxjCl]
このスレ全てが >>257 の1レスで完璧に説明されちゃってるからな。
で最後に「メリット、メリット・・・アウアウアー」としか言えなくなった
廃人が一人取り残されました、と。

489 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 10:45:43.80 ID:fPpydaqH]
ほらw 今日もメリット出ないぞw



490 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 11:04:39.28 ID:F4Vx7tUI]
アマチュアプログラマです。古典タスクシステムをC++で作成して使っています。
基本クラスはインスタンス化は不可にして、用途ごとに継承した型を使っています。
パッド入力、ファイル操作、スレッド操作、描画プリミティブ、サウンドプリミティブ、ゲームオブジェクト
をタスクで回しています。

古典にない独自要素としては以下の通り。
(多くのタスクシステムではすでに当たり前になっているとは思います)

・次/前ポインターの他に子供ポインターを持っている
深さ優先で実行され、グループ化の単位にしています。
また、ある種の命令(表示オフセット等)を伝達させています。

・子供ポインターのリストの処理の前後に実行される仮想関数を持っている
Begin〜(特定のタスク群)〜Endのような構造の呼び出しを行っています。

491 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 11:31:48.96 ID:HKOZxjCl]
>>489 >>488の証明乙

>>490
質問なのかわからんけど
ターゲットプラットフォームと作ってるジャンルと規模、製作人数と製作目的とかの説明があったほうがいいんじゃないかね。
まぁアマチュアでC++だとプラットフォームはWindows+DirectXだろうけど。

492 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 11:52:24.08 ID:F4Vx7tUI]
>>491
プラットフォーム:Windows(XP)+DirectX(9.0)
ジャンル:3Dダンジョンアクション
規模:面クリ方式で12ステージ程度、通信無し
製作人数:プログラマー1人(無料素材のみ)
製作目的:プログラムの勉強と趣味を兼ねて

ベタで書いていて行き詰まると自然とタスクのような形態になる気がする。
メリットの説明にはならないけど。

493 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 12:03:08.01 ID:HKOZxjCl]
>ベタで書いていて行き詰まると自然とタスクのような形態になる気がする。
まぁそうだね。ゲームでtaskやactorは定番だし。

ちなみに過去に最後までゲーム作った経験はあるのかな?
もっと規模の小さい2Dゲームとか。

494 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 12:18:27.81 ID:F4Vx7tUI]
>>493
落ち物パズルとノベルゲームですね。

パズルゲーの時はオールベタだった。
ノベルゲーでタスクの感覚というか作法が身についたような気がした。

495 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 12:25:28.64 ID:F4Vx7tUI]
(補足)
>落ち物パズルとノベルゲームですね
これらはC++ではなく、Cで作りました。

ノベルゲーはCでタスクもどきを作りましたが、
最近C++を覚えてあらためてタスクを書いたら、
記述が実に簡単になってびっくり。

496 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 12:51:12.22 ID:fPpydaqH]
おや?w この流れで出るか?まさかのメリット!!

497 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 13:21:42.83 ID:HKOZxjCl]
いきなり最初に3Dのオリジナルアクションで何ステージもあるもの一人で作ろうとすると
モデリングやらテクスチャやらアニメやら大量のマップやらレベルデザインやらゲームデザインやらで
プログラム以外の作業量が膨大で途中まで作って終わりという危険性が高いけど・・・
過去にいくつか最後までゲーム完成させてるなら必要なコストの見積もり感覚もあるだろうし、大丈夫かな。

3Dアクションだとモデル表示からアニメーション処理、敵AIや仕様によっては物理演算とか、あと意外に
コツがいるカメラアングル等々、超えなきゃいけない壁が沢山あるから
基底のタスクシステムは手早く実装して先に進まないとね。
まぁ完成するようがんばってください。

タスク関連で疑問があれば >>306 >>333 あたりの気になるところたけ立ち読みでもすれば
他のゲームでどう実装、解決してるか参考になるかと。

498 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 13:58:51.62 ID:7JQyNK98]
うんうんわかるわかるよー

  で?

タスクシステムのメリットは今日もでないの?

499 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 14:01:47.31 ID:F4Vx7tUI]
>>497
ありがとう。くじけないでがんばるよ。

----
タスクシステムそのものの話題になるよう願ってネタ提供

自分タスクシステムではどんな型もtaskリストのループは基本クラスの仮想関数Updateを呼んでます。
継承した型でオーバーライドするUpdateの中で、その型に固有のUpdate_typeを呼んでいます。
これで基本型から継承型へのdynamic_castを回避しています。



500 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 14:02:28.83 ID:F4Vx7tUI]
(続き)
ゲームオブジェクトはUpdate_typeの中でメンバ関数ポインターをテーブルで呼び出して振る舞いを切り替えています。


class GAMEOBJ : TASKBASE {

enum STATUS {
STATUS_MOVE,
STATUS_JUMP,
STATUS_MAX,
} status;

void Update( void ) {
 Update_gameobj();
}

void Update_gameobj( void ){
(this->*TASKGAMEOBJ::function[status])();
}

void gameobj_move( void );
void gameobj_jump( void );

static void (*GAMEOBJ::function[STATUS_MAX] )( void );
};

501 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 14:04:12.19 ID:7JQyNK98]
それはさ
どこでタスクシステムのメリットと繋がるのかまず説明してから出してよ
無駄だからw

502 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 14:48:44.00 ID:HKOZxjCl]
んー・・・
一般にジャンプとか移動の単位の状態推移は結構変更が入りやすい&キャラによってルールが違ったりするから
継承の元の方じゃなくもっと末端に近い側に持つのが普通なんじゃないかなーと思ったり。

まぁどんな仕様のゲームかわからんので何ともいえんが。
「カエルの国」ってゲームでゲームオブジェがもれなくジャンプする&移動とジャンプの
推移が共通ルールで処理できる、とかならそれもありかと。

クラス継承が深くなりすぎず、コードが冗長になりすぎず、実行コストが高くなりすぎず、
ゲームの仕様を実装する一番シンプルな切り口を見つけられるといいね。

503 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 14:50:03.58 ID:5PPz0BrH]
王様はステキな服を着ているよ!

どんな服かは言えないけどね!

504 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 15:11:09.04 ID:xZi2bD7U]
ステートと処理をカプセル化したりする

505 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 21:03:15.86 ID:F4Vx7tUI]
>>501
プロ相手にメリットを説明できるだけの知識と技量はない。

>>502
まあサンプルなんで。。。

>>503
当然、全裸さ。

>>504
どうやるんですか?

506 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 22:15:12.28 ID:i33nnDQq]
>>492
> ベタで書いていて行き詰まると自然とタスクのような形態になる気がする。

「ベタで書く」の何が気に入らなかったから「タスクのような形態」にしたの?

507 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 23:13:48.91 ID:sBcMqdFq]
>>499-500
>継承した型でオーバーライドするUpdateの中で、その型に固有のUpdate_typeを呼んでいます。

意味不明すぎる。Updateの中に直接書いちゃだめなの?
直接書いても、ダイナミックキャストは必要ないぞ。

上の方でダウンキャストト云々の話が出たのは、
複数のタスク間でのコミュニケート時の話だぞ。
例えば当たりの有ったタスク間で何らかの処理をする場合など。
タスクシステムの持ってるのはタスク型にアップキャスト済みだから、
タスクシステムから渡される自分以外のタスクは全てタスク型になる。
だから、何らかの相互作用処理をする前にはダウンキャストが必要だねって話。

508 名前:名前は開発中のものです。 mailto:sage [2011/10/08(土) 23:51:15.56 ID:sBcMqdFq]
それから、一人で作ってるなら尚更タスクシステムの必要性無いぞ。
複数人で作ってるから、共同作業するために何らかのフレームワークがって話でもあるんだぞ。

あと、>>490見ると、処理順に関して色々工夫しているようだけど、
処理順がデータ構造だけで決定されるってのも、きっと後で痛い目見るぞ。
確かにデータ構造に沿って処理していく類もあるが、
具体的なゲーム製作に取り掛かれば、それ以外のフローが欲しくなったりするものだぞ。

今どう思ってるか知らないけど、
例えば、自分から一番近くに居る敵をロックオンしたい場合はどうするつもり?
俺ならITargetインターフェースを作って、リストにコレクトしとくぞ。
OOP一般で使われるベーシックなやり方だ。

509 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 00:00:34.96 ID:sFINv5Zy]
>>506
あんまりよく覚えていない。

>>507
そうでしたか。じゃ直す。



510 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 00:19:22.10 ID:sFINv5Zy]
>>508
>それから、一人で作ってるなら...
次に別のもの作るときに備えてなんとなくそうした。

>俺ならITargetインターフェースを作って...
それ頂きました。その段階に至ったらそう作る。

511 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 00:51:00.35 ID:7taPkPeR]
そうやって、結局、型やインターフェースや用途ごとにリストを持つ羽目になるよ。
何かするたびに、相手のタスクをタスクリストからサーチするのは馬鹿らしいからな。
終いには、処理順がタスクの保持構造に括り付いてるのがマゾ制限にしか感じられなくなる。
書いた順に動くのが一番。なるたけそれを維持する努力をした方がいい。
例外もあるが、例外は例外として対応すりゃいい。

512 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 01:37:37.72 ID:IstoATBT]
まぁ、もう頭の中に想定してる設計はあるんだろうから
それで作ってみるのがいいんじゃないかね。
具体的にここの処理で困ってる、とかの話が無いからそれぐらいしか言えん。

結局タスクシステム使うにしろ別の方法で作るにしろ一番あっていると考えられる
方法で作るしか無いし。
何かの方法しかダメ、とな何かは絶対ダメ、とか手段の柔軟性が無い狂信的な考えに
はまらないで適材適所で考えられる人間が優秀なプログラマ。

513 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 01:45:09.46 ID:bfiBZi5/]
タスクは更新のタイミングを伝えたり、実行順を制御するのに使えば役に立つ
それ以外に使おうとするとこの人がリピートしてるようなアホなことになる

514 名前:sage [2011/10/09(日) 02:33:36.58 ID:IiQk0xOC]
>>511
>何かするたびに、相手のタスクをタスクリストからサーチするのは馬鹿らしいからな。
ここ詳しく聞きたい。
リソースがもったいないって事?


515 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 06:35:22.21 ID:lcpX7Gi9]
リストだったら線形サーチをせにゃならん。
O(n) だから、n 個のオブジェクトの全てについて、それぞれで相手を探して、とかやったら、
簡単に O(n*n) になっちまう。

516 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 07:31:01.58 ID:u7VSyIS9]
>>509
>あんまりよく覚えていない。
ここに理由がないんじゃ技術者失格だね
よくわからないからとりあえずそれっぽい注射打っとけとかいってる医者がいたら怖くて仕方がないだろ?
バーカ死んでろ

517 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 08:41:19.90 ID:IYV4pmbB]
「タスクのような形態」という表現から察してやれよw

これにかぎらずデザパタだったりしたときも、
「〜パターンみたいな」「〜パターンの亜種」「独自拡張した○○パターン」とか、
技術用語を曖昧に使いたがったり、独自用語を平気で繰り出してくるのは、
「タスクシステム」と一緒の問題を感じる。

518 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 12:40:18.79 ID:tHXLqEuJ]
以上メリットおじさんがお送りしました・・・

519 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 12:48:52.88 ID:co3z7ZT+]
せめてソースや引用元明示して議論してくれ。
これだから日本のゲームのレベルは低いんだよ。



520 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 13:47:19.04 ID:IstoATBT]
>>519
>せめてソースや引用元明示して議論してくれ。
taskやactorはソースや引用元>>333 みたいに明示してるし、そもそもactorは
海外で使われてるものだしなぁ・・・

あぁ、セミナー君のことを言ってるのかな?
たしかにソースや引用元を要求すると何も答えらずに「お前がメリット出せ(涙)」
しか繰り返せないようなお馬鹿さんはレベル低いけど、彼は日本のゲームとは関係無いだろ。www

521 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 14:15:14.71 ID:lcpX7Gi9]
そう、そしてactorはタスクシステムだ、と必死で強弁するおバカさん程のバカはおるまいw

522 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 14:24:45.64 ID:7taPkPeR]
actorはactor、タスクシステムはタスクシステムだけど、
どちらも同じ問題を抱えているから、ここでは一緒に扱っても良いと思う。
ゲームオブジェクトに基底型を持たすのは勝手だけど、(デバッグや通信の手段)
updateメソッドはイラネーだろ。
メインループ部を自由に触れて、単一アプリで完結してるのに、
コールバックでキックしてもらう意味は無いよ。

523 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 15:02:13.75 ID:IYV4pmbB]
おや?今日もタスクシステムのメリットは出ませんか?w

524 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 15:07:46.57 ID:IiQk0xOC]
>>515
なるほど。
>>2のCodeZineのソースを見ると指定したグループのタスクを返す
TaskEx::GetTask関数があって、それでタスク間のやりとりを行っているのだけれど
実装がまさに線形サーチだったので問題あるのかなと。
タスクの型や数が少ないから不都合がないのかな?

525 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 15:33:12.86 ID:tHXLqEuJ]
>>522
機能を組み込む度にメインに修正入れてそうだなw

526 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 17:20:00.03 ID:7taPkPeR]
↑悪いけど、それが普通の開発手法だから。

527 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 17:41:36.73 ID:u7VSyIS9]
てか、システムの中枢に手を入れてるにも関わらずメインの変更はなしで
その代わりに各オブジェクトへの影響は把握しきれませんって状態に陥ることがあるからタスクシステムっていうか
引数void*のごった煮は怖い

これはタスクシステムに限らない
グローバル変数で値やり取りしてるシステム全部がそう
馬鹿の作ったシステムはなんでもかんでもこんな感じ

528 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 17:55:52.12 ID:7taPkPeR]
各タスクが全くの独立した代物なら問題ないが、
それではゲームにならんからな。

自分は毎フレームupdate呼びますんで、後は各自勝手にやってくださいwww
ではねぇ。リーダー不在のチームだよ。

529 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 18:26:38.93 ID:bfiBZi5/]
>>526-528
純粋関数型言語信者のOOP批判に似てて笑った
Haskellでゲーム作ってみたら?お前に向いてそう



530 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 19:24:23.95 ID:DQiRN0t/]
反論になってないって

531 名前:名前は開発中のものです。 mailto:sage [2011/10/09(日) 19:49:29.75 ID:rRzwzBuV]
フツーはOOPを使うなりして、ライブラリとして外部に追いやって、
そこを固定にして使うもんだ。

mainおよび、ゲーム本体側はそれを使う側。
使う側は自分勝手な文脈でもって、
自由にライブラリを呼び出すべき。

タスクシステムってのは全体をごっちゃにしてサポートするんだろう?
イヤな予感しかしないんだが。






[ 続きを読む ] / [ 携帯版 ]

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

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