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


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

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



1 名前:名前は開発中のものです。 mailto:sage [2009/02/19(木) 02:21:01 ID:k4ODtuXP]
タスクシステムについての議論、相談、質問、雑談などのスレです

part4 pc11.2ch.net/test/read.cgi/gamedev/1233459490/
part3 pc11.2ch.net/test/read.cgi/gamedev/1226199100/
part2 pc11.2ch.net/test/read.cgi/gamedev/1196711513/
part1 pc11.2ch.net/test/read.cgi/gamedev/1173708588/


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

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

432 名前:名前は開発中のものです。 mailto:sage [2009/03/01(日) 19:36:50 ID:bNWlMx7s]
アンチタスカーですが
>CodeZine:本格的なシューティングゲームを実現するタスクシステム(タスクシステム,シューティング,ゲーム)
>codezine.jp/a/article.aspx?aid=297
このコードはひどいね
重複してるし 未使用領域もある
メンバ関数も無駄にstaticで意味がない

もっと調べればもっと叩くところはでるだろう


で タスク信者に言う ソースで語れ
嫌なのか?さらしたくないのか?逃げるだけか?ライバルを作りたくないのか?逃げるのか?

答えろ

433 名前:名前は開発中のものです。 mailto:sage [2009/03/01(日) 19:43:26 ID:3VRI83Xk]
>>429
使っていけばレベルがあがるとは言ってない。

local.joelonsoftware.com/wiki/%E3%82%B2%E3%83%AA%E3%83%A9%E7%9A%84%E9%9B%87%E7%94%A8%E9%9D%A2%E6%8E%A5%E3%81%AE%E3%81%99%E3%81%99%E3%82%81
>どうやら大部分の人々はポインタを理解するための脳の一部分を持たずして生まれてくるようだ。

俺にはこれを否定できない。
同じ大学で勉強したはずの友人の例を見てきてるから。

434 名前:名前は開発中のものです。 mailto:sage [2009/03/01(日) 19:44:25 ID:aHmLTao6]
>>431
これはひどい

435 名前:名前は開発中のものです。 mailto:sage [2009/03/01(日) 20:39:37 ID:/NI8vJIH]
>>432
> このコードはひどいね
> 重複してるし 未使用領域もある

どれが未使用領域?

436 名前:ID:EEKBitmg mailto:sage [2009/03/01(日) 20:42:30 ID:MlhdTCDS]
>>433
そんな馬鹿な!世界は広大だな
PICのプログラムを組む実習とかあったが
HWIトリガーにしてアドレス入りレジスタ
使ってROMエリアのデータ(配列)読んで
所定の計算して出力とか、脳筋体育系も
ヤンキーも出来てたぞ。出来なきゃ留年
チョンボして他人のソース丸パクできない
やればひどい制裁を受けるから

ポインタ使えないんじゃなくて、そういうのを
使う必要がない言語や環境しか経験してないから
単に不慣れなだけじゃないの?

437 名前:名前は開発中のものです。 mailto:sage [2009/03/01(日) 20:56:06 ID:1CyuAS5Y]
ポインタを使えない人は本当に居る。
不慣れとかそういう話でなく、ポインタの仕組みは理解できても、
(コーディング上において)ポインタを使うメリットが理解できない。ってタイプ。

知り合いに、値渡しで関数に与えていて、わざわざ冗長なコードを書いていたから指摘したら、
本人いわく、ポインタは知っていてもあえて使わないんだとさ。

438 名前:ID:EEKBitmg mailto:sage [2009/03/01(日) 21:18:09 ID:MlhdTCDS]
>>437
んー。そうかー
値渡しで組んでも動くからいいやーって人かな
CPUパワーもRAM容量も余りまくりでジャブジャブ
使ってもいいよーっていうターゲット(ハードウェア)
を使える環境だからそういうふうになるんじゃないかな

貧弱環境でタイムクリティカルな処理しろって
状況に放り込めば参照渡し使うと思うけど

439 名前:名前は開発中のものです。 mailto:sage [2009/03/01(日) 21:24:04 ID:1CyuAS5Y]
どんな環境でもポインタで参照渡し使った方が軽いし、コード記述量も減るというのに、
彼のとった選択肢は"ポインタは分かり辛いから使わない"だとさ。
だったらCやめればいいのにと思った。

440 名前:名前は開発中のものです。 mailto:sage [2009/03/01(日) 21:24:27 ID:aHmLTao6]
>>438
前に ACM Newsletter か何かで読んだが、教育レベルとか計算機環境に
よらず、一定割合でプログラミングがダメな人は存在するそうだ。

いい大学の CS に入ってくるような人間でも、適性ない人間はどうにもダメ
らしい。





441 名前:名前は開発中のものです。 mailto:sage [2009/03/01(日) 21:25:01 ID:aHmLTao6]
>>439
っつか、ゲームプログラミングやめれば良いのにな。

442 名前:名前は開発中のものです。 mailto:sage [2009/03/01(日) 21:34:18 ID:bNWlMx7s]
>>435
読めばよい

443 名前:名前は開発中のものです。 mailto:sage [2009/03/01(日) 21:38:28 ID:XFHzOPV1]
>>431
#include "Tasksystem.h"
#include "reference_structure_macro.h"

このヘッダがzipに入ってないね。

444 名前:名前は開発中のものです。 mailto:sage [2009/03/01(日) 22:03:38 ID:1CyuAS5Y]
このスレ見て、身の回りのいろんなPGを見ていて思うに、
ゲームプログラマには、大別してクリエイター型とエンジニア型が居ると思うわけよ。

■クリエイター型(C型)
ゲーム製作を美術・芸術・メッセージ表現の一種と捉え、作品の完成を目指して鍛錬する。
ゲームが完成することを最終目標としているために、エンジニア型に対して結果が全てと見下している。
ゲームとしての表現力を増すのような技術がローコスト(手間要らず)で導入であれば積極的に採用したいが、
ゲーム製作において足枷になるような技術については、嫌悪する傾向がある。
駆け出しの頃はスクリプター寄りの傾向。将来的にはPDに向いている。
プログラミング能力は低いので他業種での潰しが利き辛い。

■エンジニア型(E型)
ゲーム製作を自己のプログラミング能力向上のための試金石と捉え、ライブラリの完成を目指して鍛錬する。
フレームワーク作りに熱中し、何時まで経ってもゲームは完成しない。
新規技能・技巧をいち早く取り入れる風潮があり、汎用性・完成度・移植性などを重視する傾向がある。
技術的に稚拙なクリエイター型について、プログラム知識の無さに嫌悪することがある。
駆け出しの頃はライブラリ製作+サンプルゲームを作る傾向。将来的にはメインPGに向いている。
プログラミング能力が高いので他のSE業種に移行しやすい。

445 名前:名前は開発中のものです。 mailto:sage [2009/03/01(日) 22:04:44 ID:1CyuAS5Y]
で、今までのレスの流れも見ていて、ここからは完全に独断だが、
アンチタスク派は、ずっとC型でPG経験の浅い若年層が多い気がする。
・コンシューマ開発で、C++も無かったASM時代において、タスクシステムが成した業績と歴史を認めない。
・プログラム技能が未熟で、TCBなり、関数ポインタによるスケジューリングを理解できない/扱えない。
・実際にタスクシステムを使ったコーディングに従事したことがあり、タスクシステム特有の束縛された記述方法に嫌悪感を示す。
・ただタスク派をおちょくって遊びたいだけ。

一方、タスク派は、ずっとE型でPG経験の長い壮年層が多い気がする。
・OOP時代を迎え言語もコンパイラも発達し、タスクが過去の遺産であることを認めない。未だにタスクシステムをプロの技巧と賞す。
・タスクによるスケジューリングが完全汎用であると勘違いし、これを理解できない人を煽る。
・ゲーム内容の実際の記述において、タスク管理によるコーディングがどれほど厄介なのか理解できない。
・ただアンチタスク派をおちょくって遊びたいだけ。

と見ている。

個人的には、中庸が一番。
始めはE型で自作ライブラリが完成してから、C型に移行するプログラマーが理想なんだがね。
もしくはPG2名で完全分業し、E型がライブラリとスクリプトを提供して、C型がゲーム内容を記述するのでも良いと思ってる。


446 名前:名前は開発中のものです。 mailto:sage [2009/03/01(日) 22:59:06 ID:aHmLTao6]
>>445
> ・コンシューマ開発で、C++も無かったASM時代において、タスクシステムが成した業績と歴史を認めない。
若者でも、/* You are not expected to understand this */ とか読んだことあれば
十分だよ。

447 名前:名前は開発中のものです。 mailto:sage [2009/03/02(月) 01:17:33 ID:Ggk4JG/+]
>>442
>432
> 嫌なのか?さらしたくないのか?逃げるだけか?ライバルを作りたくないのか?逃げるのか?

448 名前:名前は開発中のものです。 mailto:sage [2009/03/02(月) 02:04:32 ID:qNJJjYLT]
実際にタスク改みたいなシステムでゲーム何本か作ったことがあれば
いろいろあれの欠点で苦労するから純粋なタスク信者ってのはありえないけどね。
でも単純なアンチってのもまた無い。

ジャンルや環境によっては今でも十分使い物になるから。というか今の携帯機クラスの性能のゲーム機で
動いてるゲームのかなりの数がいわゆるタスク改で実装されてる。
それに純粋なタスクシステムの欠点はそれぞれ回避方法があるので使い分けができる。

ジャンルによってはタスク改ではない違う作り方のものもあるけど、アクション系ではいわゆるタスクの進化系以外の
実装はあんまりお目にかかったことが無いな。
少なくとも日本産に限っては。海外産はあんまりソース見る機会無いから知らんが…

449 名前:名前は開発中のものです。 [2009/03/02(月) 07:26:29 ID:N5eJa8sN]
ぜってーそんなことねぇよ(笑)
こんなマイナーシステム普通使わねぇだろ

450 名前:名前は開発中のものです。 mailto:sage [2009/03/02(月) 15:49:57 ID:2YZpDjg8]
ミニゲーム集みたいなゲームだとタスクシステムは向いてると思うけどね
同じインターフェースで全く遊び方の違うゲームを数十個つくらにゃいけない場合とか
一つ一つにかかるコストを大幅に削減できる



451 名前:名前は開発中のものです。 [2009/03/02(月) 17:55:09 ID:N5eJa8sN]
向いてねぇよ
ごった煮だから弾の処理で何が呼ばれててもおかしくない
ということは弾だけなにかほかに使おうと考えても
ソースの癒着が酷くて切り出して使うということはできないというわけだよ
わかったかね

452 名前:名前は開発中のものです。 mailto:sage [2009/03/02(月) 18:02:00 ID:hIPGPAIG]
よく>>451見たいな書き込みを見るけど
タスク間のアクセスはタスクシステムが間に入るから
癒着がひどいっておかしくないか

453 名前:名前は開発中のものです。 [2009/03/02(月) 18:16:36 ID:N5eJa8sN]
それじゃなんのためのごった煮なの?
どこからでも呼び出したかったんじゃないの?
つまりそれは、すべてを呼び出している可能性だってあるということだよ
だってそのためにごった煮にしたんでしょ?
ミサイルのターゲットをポインタの保持で解決したかったんじゃないの?(笑)

454 名前:名前は開発中のものです。 mailto:sage [2009/03/02(月) 18:25:42 ID:hIPGPAIG]
例えば全てを呼び出してるとして
ミサイル以外のタスクをソースから排除しても
ターゲットが見つからずにまっすぐ飛んでくだけでしょ
ターゲットのポインタなんて抽象クラスへのウィークポインタか
インクリメンタルIDのどっちかだし

455 名前:名前は開発中のものです。 [2009/03/02(月) 18:33:27 ID:N5eJa8sN]
そんな話してねぇよ馬鹿
全部呼び出せるってことは全ヘッダーファイルが必要になるってことだろが
それとも今更カプセル化守って弾のクラス内には他のゲームオブジェクトは一切入ってこない
って方向転換するか?それでもいいぜ(笑)

456 名前:名前は開発中のものです。 mailto:sage [2009/03/02(月) 18:48:04 ID:hIPGPAIG]
なんで全部呼び出せるなら全ヘッダーがいるんだ
派生先のポインタが欲しければ各自でキャストすればいい
それが嫌ならビジター作ってタスクシステム内のタスク全部なめればいい
なんで弾のクラス内に他のゲームオブジェクトが入ってくるんだ
そんな話出てきたか?めんどいんで方向転換ってことでいいです。

457 名前:名前は開発中のものです。 [2009/03/02(月) 18:56:46 ID:N5eJa8sN]
キャストするにはだな・・・え〜そっから〜(笑)
さすがにそのレベルはかつてないな(笑)

458 名前:名前は開発中のものです。 mailto:sage [2009/03/02(月) 19:19:04 ID:hIPGPAIG]
いやあ俺馬鹿だからさ優しく教えてよw

459 名前:名前は開発中のものです。 mailto:sage [2009/03/02(月) 19:32:05 ID:Rv93cI1M]
>>457
面白いからもっとやって(笑)

460 名前:名前は開発中のものです。 mailto:sage [2009/03/02(月) 19:36:16 ID:wHsdSnqf]
俺も見てるよ。面白い展開になりそうだからもっと熱く語り合ってほしい(笑)



461 名前:名前は開発中のものです。 mailto:sage [2009/03/02(月) 19:57:05 ID:VFyVP2iT]
まだごった煮言ってるのかw
なにも進歩ないなw

462 名前:名前は開発中のものです。 mailto:sage [2009/03/02(月) 20:14:04 ID:iymFeNpw]
キャストするクラスのヘッダーだけでいいだろ?
全部は必要なくね

463 名前:ID:EEKBitmg mailto:sage [2009/03/02(月) 20:44:58 ID:0jBbfc+e]
>>444-445
C型なのかな。肝炎みたいだね。「おまえの場合は脳炎だろ」とか言われそうだけど

助教授に言われたことがある
『例えばお前が作ってるゲームなんてものは技術的には枯れた要素技術の集合体であり
CASEツールで機能分析すれば、その大半は汎用のコンポーネントを結合したものとして
表現される。』と

『開発工程全体を見たとき、お前はおそらく遊び・面白さの部分を煮詰める反復作業に
 時間の多くを費やしているのだろう。ならば、ワークフロー・データフローの設計も
 そこを優先するだろ常識的に考えて。与えられてる状況(道具、人、時間、etc)にあわせて
 構造化設計すれば、最終的な結論はH**は神言語となる。わかったな?』

私は心を打たれた。この人はC型のようなE型のようなH型だ

助教授はいわゆるベーマガ世代というものらしい。本人に言わせれば『PIOとかRAMとかテクノ(何とか)を
知らないようなガキにベーマガ世代とか言われるとイラっと来る』ということらしいけど、まぁとにかく
そういう世代らしい

助教授にタスクシステム(>>2)のページを見せた。反応は「組み込みシステムを劣化猿真似してるのか」
みたいなかなり淡白なものだった
『ワークRAMが少ないゼッパチマシンでこんな贅沢な組み方してたのか?』
『70年代にこれやってたって本当か?』『メガドラとか16ビットのアーケードゲームの話じゃないのか?』
と聞き返された。そんなことは厨の俺が知るはずもないし答えられるはずもなかったから
「だってこの人(LogicianLordの人)がギャラクシアンはこうだって言ってるからそうなんじゃないすか><」
と知能障害・思考停止な返事をしたら『ふーん。あっそう』と言われた

むかつく。誰か教えて

464 名前:ID:EEKBitmg mailto:sage [2009/03/02(月) 21:27:36 ID:0jBbfc+e]
『当時は毎月、目を皿のようにしてマイコン雑誌を読み漁ったが"タスクシステム"なんて言葉は見た記憶無いな』
『俺にとっては雲の上のプロプライエタリな世界だったから。そういうプロの世界の隠語なのかな。』
『しかし30年以上経過して陳腐化したからって吹き出物みたいに今更出てきても仕方ないだろこんなもの』
『PCでさえベクトルプロセッサ化したビデオチップにマルチコア化したCPUが普及した現代においてこんな一本道の
 逐次処理コードを使ってたんじゃハードは遊び放題だな。お前らのゲームボーイ(←DSのことらしい)で使ってるテクか』
『ステートマシンの逐次処理用の優先度付きキューを手作りしてたのか。今ならboostか次期C++標準のライブラリ
から出来合えのコンテナでも引っ張ってくればいいんじゃないの。あと、機能分析すればこの実装になる必然性はない』
『型システムを否定している。コンパイラによる最適化を阻害してる。自作ジャンプテーブルで条件分岐は高速化される
 という先人のチョイテク・豆知識を天下り式に真似ているのではないか。それは太古の簡素なCPUアーキテクチャに
 依存した公式に過ぎない。定理ではない』

『くだらない話をふってないで、お前は早く課題レポートを提出しなさい』

うぜぇオヤジだ


465 名前:名前は開発中のものです。 mailto:sage [2009/03/02(月) 23:57:02 ID:j9iR0+6m]
>>464
> マイコン雑誌
この辺の単語の使い方に、世代を感じるなぁ。

466 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 00:35:53 ID:RAMjL7VZ]
テクポリは最初技術系の雑誌だったんだね
アダルトゲーム雑誌になってからしか知らないや

467 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 00:54:38 ID:nTxu8UVE]
>>463-464
何…?このポエム

今もタスク進化系が使われ続けてる現実を前にして
現実逃避してるのかな?


468 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 01:06:03 ID:gnPoJpgi]
ID:N5eJa8sNはタスクシステムを使うとタスクシステムに全部のheaderをincludeしなければ
ならなくなるとか言っていた例の基地外だろ。

こんな低脳がアンチタスカーだから、アンチはみんな頭がおかしいと思われるんだ。

こんな奴、プログラマですらないので、この板から出てけよ。

469 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 01:43:30 ID:e/qFL/0J]
>>467
シーングラフはタスクシステムの外国版(笑)
タスクシステム改(笑)
タスク進化系(笑)

出るわ出るわ。怪しげな僕んちのソフトウェアアーキテクチャ発展史
萎びた僻地で密教みたいにひっそりやってきた「俺んちのベストプラクティス」
そいつがお前にとってのプライスレスなのはわかるけどな
何の具体的な情報も開示せずに世間に認知してもらおうなんて考えちゃダメ
世の中そんなに甘くない

公にされず標準化もされないド田舎・ローカルのソフトウェアアーキテクチャや
ベストプラクティスと自認している者は、何の資料も出せない状態で世間の前で
顔真っ赤にして反論したりしない。黙ってる。そこを分かれ。出てくんな。みっともねー
幾つだよお前。誰だよ

反論するならお前の言うタスク進化系って奴が世間に認知される
ソフトウェアアーキテクチャ、ベストプラクティスとなるよう、きちんと文書にして
発表すべきだ

現在、世間の前に出てるタスクシステムに関する文献の中で唯一
書いた人間の出自が現場出身であることが垣間見えるのは秀和の
逆引きゲームプログラミングだけ。これを超えるものをお前が書けばいい




470 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 01:50:47 ID:e/qFL/0J]
>>468
あー、やっぱあいつだよな
ヘッダーがどうのとか言い出した瞬間にイカ臭かったもんな



471 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 02:03:06 ID:nTxu8UVE]
>>469
>ベストプラクティスと自認している者は、何の資料も出せない状態で世間の前で
アンチじゃなくてもあんな原始的な仕組みをベストプラクティスと自認している人はいないと思うぞ。

あぁ、アンチって実はタスクシステムに過度に期待してる人たちなのかもね。
「こんな自分でもタスクシステムが理解できたらゲームが作れる…」って。
だから資料出せ、教えろ、説明しろってうるさいのか。

472 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 02:09:19 ID:e/qFL/0J]
>あぁ、アンチって実はタスクシステムに過度に期待してる人たちなのかもね。
>「こんな自分でもタスクシステムが理解できたらゲームが作れる…」って。
>だから資料出せ、教えろ、説明しろってうるさいのか。

今度はアンチは実は信者論か。がんばるねー
アクロバティックな発想に翻弄されちゃうねー
生ゴミの臭いを好き好んでかぎ回るのは信者なんだけど
アンチは臭いものは臭いんだからとっとと捨てればー?
とアドバイスしてあげてる分まだ常識があるねー


473 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 02:22:24 ID:e/qFL/0J]
ま、タスカーは大人しくサンドバッグにされてろってこった
今更開陳したところで世間に八つ裂きにされるのが目に見えてるからな
俺は絶対に晒さない。何年も前に廃棄したゴミアーキテクチャだから
とっくに葬り去ってお墓に入れたものをわざわざ引っ張り出して晒す
なんてマゾっけたっぷりの趣味は無い

474 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 02:37:34 ID:gnPoJpgi]
ポエマーもいらねーから出てってな

475 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 02:42:58 ID:e/qFL/0J]
DSLポエマーと間違われるとは光栄だねー
タスクシステムを叩く材料が不足したら呼んでね。補給してあげるよ
アンチ応援してるよ。あーねみー。ばいばーい

476 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 02:53:26 ID:eCcH4IzT]
顔まっかなのはお前だろうに

477 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 02:57:23 ID:eCcH4IzT]
>俺は絶対に晒さない。何年も前に廃棄したゴミアーキテクチャだから
>とっくに葬り去ってお墓に入れたものをわざわざ引っ張り出して晒す
>なんてマゾっけたっぷりの趣味は無い

要するに、お前は過去の自分と戦ってるのか?
お前の暗い過去を皆に押し付けないで欲しい。

478 名前:名前は開発中のものです。 [2009/03/03(火) 07:34:27 ID:NIkO1+LI]
ヘッダー全部インクルードしないと必要なときに必要なものが呼び出せないから
タスクシステム使ってるなら総合ヘッダーに全部インクルードしてあると思うよ
仮に必要なものだけだとしても関連をもったものは全部インクルードしてやる必要があるから
この構造で作ったら切り離すのは容易じゃないよ

479 名前:名前は開発中のものです。 [2009/03/03(火) 07:50:27 ID:NIkO1+LI]
それと関連をすべてタスクにするとか嘘ついてるけど
ポインタの保持を関連タスクに強制するうえ
パラが一つでも必要になったらタスクを新しく作らなければならない
折角、ごった煮にした意味がまるでないけどそれでいいの?
だんだんタスクなんて作らないほうがいいって結論になりそうで俺は満足だけどね

480 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 08:19:58 ID:gnPoJpgi]
>>478
お前が頭がおかしくて、プログラムの組めないド素人なのはよくわかったから
もうこの板に来んな



481 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 08:53:25 ID:HSt7mZci]
>>478
んなこたない


アンチな俺でも同意できる箇所が見当たらない

482 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 10:09:41 ID:T2e1Wx7e]
一番要らない子なのはウンコちゃんだろう。
全レス内容無しってのが凄い。

483 名前:名前は開発中のものです。 [2009/03/03(火) 12:43:55 ID:NIkO1+LI]
じゃヘッダー無しでどうやってキャストしてんだよ
まあ、これは無理でしょ

タスク信者が必要な分だけインクルードしてるなんて考えられないから
ごった煮を表現するために総合ヘッダー絶対あるだろ
だからタスク信者の書くソースは分離できない
さらにタスク信者は引数使えないから総合ヘッダーにグローバル変数の塊もあるだろうし
奴らのソースはカプセル化なんて不可能と言っていい
テンプレートは使いたがるくせにオブジェクト指向は欠片もわかってない

484 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 13:04:10 ID:gnPoJpgi]
>>483
> ごった煮を表現するために総合ヘッダー絶対あるだろ

ない。お前はOOPの基本すらわかっていない。もう死んで。

485 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 13:09:30 ID:fc1Nudsp]
>>483
なんでそこでテンプレートがでてくるのか理解できない
総合ヘッダにグローバル変数ときたら次はマクロだろ

486 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 13:11:42 ID:HSt7mZci]
>>484
OOPは関係ないだろ…

487 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 13:11:56 ID:UVBLimNu]
>>483
>総合ヘッダー
その発想は無かったwwwwwwwww
お前のコーディングすごいなwwwwwwwwwww

488 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 13:14:20 ID:HSt7mZci]
>>484
携帯からだったから483よく読んでなかったぜ
すまんこ
>>483
根拠の無い話ばかり並べても叩かれるだけ

489 名前:名前は開発中のものです。 [2009/03/03(火) 18:22:34 ID:NIkO1+LI]
いいやあるね
少なくともごった煮をデータベースとか言ってた馬鹿のソースには確実にあるね
そもそもそいつは制限や型を言語の進化の過程でできたものという認識がまったくなかった
タスク信者の大半がこんな奴ら
関連をタスクにするなんて言ってるけど
関連クラスとどうやってやりとりする気なんだよ
グローバル変数かポインタの保持くらいしかないだろ
また、無駄に問題が増える(笑)
使わないって選択肢は選べないのかね

490 名前:名前は開発中のものです。 [2009/03/03(火) 18:25:01 ID:NIkO1+LI]
カプセル化もわからないから自機のクラスに弾の処理書いちゃうんだよ
お前等馬鹿は



491 名前:名前は開発中のものです。 [2009/03/03(火) 18:29:59 ID:UVBLimNu]
>>489
>>490
レスを二つにしてカプセル化したつもりですかwwww

492 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 18:34:43 ID:gnPoJpgi]
>>489
こんな馬鹿、久しぶりに見た。

悪いこと言わないから、OOPの基礎から勉強しなおしなよ。

493 名前:名前は開発中のものです。 [2009/03/03(火) 18:57:02 ID:NIkO1+LI]
ムリムリ
タスク信者の組み方じゃ絶対分離なんて不可能
グローバルインスタンスホルダーが絶対にある

494 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 19:09:12 ID:gnPoJpgi]
>>493
仮想関数すら知らなさそうだな。本当、生きてて恥ずかしくないか?

495 名前:名前は開発中のものです。 [2009/03/03(火) 19:19:33 ID:NIkO1+LI]
仮想関数?
いまの話題と全く関係無いけど頭おかしいの?
弾クラスで自機クラス呼んだら自機クラスのヘッダーが必要になるんだぜ
基底クラスじゃ自機クラス呼べないんだぜ
もしかしてしらなかった?

496 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 19:22:49 ID:gnPoJpgi]
>>495
> 弾クラスで自機クラス呼んだら自機クラスのヘッダーが必要になるんだぜ

呼ぶ必要なんか全くないんだが。ほんと、馬鹿だよね。

497 名前:名前は開発中のものです。 [2009/03/03(火) 19:27:56 ID:NIkO1+LI]
でも、呼んでるんでしょ?
だからタスクシステムに固執してるんでしょ?
嘘はよくない(笑)

498 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 19:31:36 ID:gnPoJpgi]
>>497
本当、馬鹿すぎて泣ける。

ソース書いてみな。俺が添削してやるから。

499 名前:名前は開発中のものです。 [2009/03/03(火) 19:38:27 ID:NIkO1+LI]
は?
俺はごった煮とかやってる馬鹿なタスク信者をぶん殴ってるところなんだよ
俺がなんのソースをだすんだよ
日本語大丈夫かよ(笑)
ああ、頭悪いのか
それじゃしょうがないな

500 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 19:42:26 ID:gnPoJpgi]
>>499
だからお前の糞タスクシステムのソースを出せと言ってるんだ。
全タスクのヘッダをincludeしているところを書き直してやる。



501 名前:名前は開発中のものです。 [2009/03/03(火) 19:58:25 ID:NIkO1+LI]
は?
俺、タスクシステムなんて使わないんだけど?
だいたいソース書きたきゃ自分で書けよ
仮想関数とか明らかにズレた話題だしてる格下のお前の相手なんかしなきゃいけないんだよ

502 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 20:10:55 ID:gnPoJpgi]
>>501
仮想関数わかってないのお前。

> タスク信者が必要な分だけインクルードしてるなんて考えられないから
> ごった煮を表現するために総合ヘッダー絶対あるだろ

何度でも言うが、そんなものはないし、そんなことをする必要すらない。
まあ、このスレでわかってないのお前だけだろうから、俺はもう帰る。

基地外の相手してても仕方ないんでな。


503 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 20:38:10 ID:fQh6ZhSe]
俺も基底クラスに仮想関数つくってそれ呼び出せば、いちいち総合ヘッダーなんて必要ないと思う。

504 名前:名前は開発中のものです。 [2009/03/03(火) 21:24:23 ID:NIkO1+LI]
は?仮に基底がゲームオブジェクトだとして自機特有の処理はどうやって呼ぶんだよ
まさか全部ゲームオブジェクトにもたせんの?(笑)
ああ、お前等のごった煮ってそこまで腐ってんだ

505 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 21:37:48 ID:fQh6ZhSe]
ああ凄いな。凄まじいなID:NIkO1+LIは。
とりあえず総合ヘッダー(笑)については、必要ないことを分かったかい?
まずはそこからだ。

506 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 21:39:53 ID:I1ftq204]
ぬるぽ

507 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 21:48:44 ID:gnPoJpgi]
>>504
お前は、OOPの基本がわかってない。

腐ってんのはお前の頭。

508 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 21:54:48 ID:gnPoJpgi]
アンチタスカーって、なんで ID:NIkO1+LI みたいな OOPすらまともに使いこなせない
糞野郎ばっかりなんだろうかね・・

509 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 21:57:27 ID:fQh6ZhSe]
さすがのアンチタスカーの俺も擁護できん。
同じPG職なら陰口叩かれてもいいレベル。

510 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 22:01:20 ID:I1ftq204]
ID:NIkO1+LI
2009年ゲ製痛い(ノ∀`)ニュース第1位確定だな。
道理でアンチタスク厨とは、マトモな会話が成り立たないわけだ。



511 名前:名前は開発中のものです。 [2009/03/03(火) 22:11:53 ID:NIkO1+LI]
は?
どうせ総合ヘッダーよんでんだろ
そうじゃなきゃごった煮の意味ないもんな
悔しかったら総合ヘッダー無しでプログラム組んでみろよ
データベースなんだろデータベース(笑)

512 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 22:14:31 ID:fQh6ZhSe]
アンチタスカーは、タスクシステムを使って知ったうえで、叩くべきだわ。
使ったこともないのに想像だけで総合ヘッダーや癒着云々と否定しているのは滑稽すぎるわ。

513 名前:名前は開発中のものです。 [2009/03/03(火) 22:16:25 ID:NIkO1+LI]
ハイハイ、自機のソースから弾のソースを取り払ってから言ってね

514 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 22:21:10 ID:AybnbhgS]
大昔ポケコンでシューティングを作ってた時は
敵ワークx16 弾ワークx16 とか固定長バッファを用意して、使用中フラグのビットマップで管理して動かしてた
ワークエリア内にポインタを書いてリストや仮装関数を実現するには500kHz程度クロックのCPUには重荷だった
今はもうゲームとして動いてるならなんでもいいやって感じ

515 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 22:41:02 ID:I1ftq204]
>>511
総合ヘッダー(笑)って何だよ!
総合病院にでも診てもらってこい。
C++入門者未満のくせに、デカイ顔してノイズ垂れ流しやがって。
タスクシステムを語るには20年早いわ。

516 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 23:02:20 ID:Gs0swA+H]
main.h に extern 使いまくりで
どこからでも #include "main.h" をすればコンパイルは通る
分割コンパイルの意味の分かっていないバカのやることだよ

ええ そうですよ 私の講師がそうだったように・・・

517 名前:名前は開発中のものです。 [2009/03/03(火) 23:13:28 ID:KhkzCgZ3]
アンチタスカーだが俗に言うタスクシステムみたいな仕組みを
C++で実現している

ソース晒そうか?

518 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 23:28:24 ID:UfdUZfM/]
j

519 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 23:37:31 ID:UfdUZfM/]
仮想関数と総合ヘッダの話は
本元のクラスでなくて、抽象クラスを、includeするということ?
/*総合.h もしくはそれの#include*/
class IHoge : public ITask
{
virtual SomeFunc() = 0;
};
/*Hoge.cpp*/
class CHoge: public IHoge
{
SomeFunc();
};
ということ?
多分、総合ヘッダといった人は、IHogeを抜いて考えていたと思う
もしくは、それでもIHogeを利用するところからIHogeが見えないといけないジャンという
ことを言いたかったのかも

タスクとマルチコアとかの関連っぽい記事を発見したので張っとく
理解はしていないので、賢い人解説して
そして建設的な話をして
www.gamasutra.com/view/feature/3941/sponsored_feature_designing_the_.php?page=1


520 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 23:38:58 ID:UfdUZfM/]
戻り値書き忘れたけれど、突っ込まないで



521 名前:名前は開発中のものです。 mailto:sage [2009/03/03(火) 23:47:42 ID:YUVx5SHc]
>>519
タスクと言う言葉を軽々しく使わないで下さい

522 名前:名前は開発中のものです。 [2009/03/03(火) 23:52:38 ID:NIkO1+LI]
>>519
馬鹿はどっかいけよ

523 名前:ID:EEKBitmg mailto:sage [2009/03/04(水) 00:02:09 ID:vv/UkwCS]
厨房見参

総合ヘッダーさん(ID:NIkO1+LI)と引数さんは同じ人だと思うが、まぁそれはそれとして
総合ヘッダーさんはCodeZineの記事に出てくるようなタスクシステムのことを言ってるんだろ?

CodeZineの記事を書いた人は俺と同い歳くらいの学生さんだと思う。叩くつもりはないが
グチャグチャに絡み合ってる反面教師的なコードとしてはなかなか秀逸だなーと思う

task.hに
自機、敵機、自機の弾、敵機の弾 狙い撃ち、爆発、自機の制御、敵の出現制御
ステージ制御、ライフバー管理、スコア管理、タイトル画面、ゲームオーバー画面
といったTaskEx派生クラス全ての宣言をまとめてぶちこんでいる

で、例えば自機弾クラスのソースコードの中を見る。まず先頭でtask.hをインクルードしている
次に自機弾クラスの当たり判定メソッドの中を見る。こいつの中では

int 敵数=GetCount(ENEMY); // 敵の数よこせ (循環リストを総舐め)
for(int i=0;i<count;i++){
  敵クラス *task=(敵クラス*)GetTask(ENEMY , i ); //i番目の敵よこせ (ヒットするまで循環リストを舐める)
  …
}
という感じで 『"グローバルインスタンスホルダー"の検索結果 3 件中 1 - 3 件目』
に対して、『敵を全部くれ』と要求して、敵クラス型にキャスト(static_cast)している

循環リストを舐めまくりでびびった。HSPでこんなコード組んだら重くて普通に死ねる
C/C++を使うメリットを遺憾なく発揮してると思った





524 名前:名前は開発中のものです。 mailto:sage [2009/03/04(水) 00:18:28 ID:43lD+2sK]
>>523
アンチだけれども、別にごった煮にして、
全てをなめるような実装にしなくてもいい気がする
最初から型ごとにリストを持ってそれごと返せばいい訳だし
ヘッダに全部宣言を入れていたのも、サンプルとしてそうしていただけで、
ヘッダが必要な個々の実装でincludeさせてそこでキャストさせればいい
そうすると、型ごとリストへ割り振りは、本当の型で判断できないので
別の情報で型を識別させるようにして型ごとリストを持たせればいいのでは?
タスクシステムに入れる時に型名を文字列で渡すとか
ここらへんは、タスクシステムの弱点ではない気がする
何回も語られているけれど、本当の弱点は、
静的に片付くものをわざわざ動的にして問題を複雑にしている点だと思う
素人考え?

525 名前:名前は開発中のものです。 mailto:sage [2009/03/04(水) 00:23:18 ID:w8Rwmagw]
> 静的に片付くものをわざわざ動的にして問題を複雑にしている点だと思う

意味がわからない。例えば?

526 名前:名前は開発中のものです。 mailto:sage [2009/03/04(水) 00:31:05 ID:mN9/jFMx]
>>524
それなら、最初からふつーにメンバ変数で持たせて終わりじゃない?

class Scene {
 Player player_;
 Enemies std::list<Enemy> enemies_;
...
};

527 名前:名前は開発中のものです。 mailto:sage [2009/03/04(水) 00:40:31 ID:43lD+2sK]
>>525
静的というのは、シーンクラスのメンバもしくはそのメンバに
自機、敵機、自機弾、スコア管理、ステージ制御などを階層を持たせて
配置しているということ
動的というのは、(少なくともインターフェイス越しには)ごった煮の
グローバルなリストから個々のインスタンスが勝手に互いを参照し合って
どうも統制が取れてなさそうに見えないこと
上の静的でも崩壊させることができるけれど、上手く設計すれば問題は起こらないはず
で、ごった煮はその問題をただ先延ばしにしてしまっているようなイメージを持っている
だからアンチ
>>524
そう。そう思う。
だからアンチ

528 名前:名前は開発中のものです。 mailto:sage [2009/03/04(水) 00:48:30 ID:43lD+2sK]
>>どうも統制が取れてなさそうに見えないこと
どうも統制が取れているように見えないこと

529 名前:名前は開発中のものです。 mailto:sage [2009/03/04(水) 02:40:49 ID:hHE159vF]
>>448 の者だが、
タスク進化系がいまだにコンシューマゲーム開発の現場で生き残っているのは単純に無駄が無いから、ってのも理由の一つ。

スーファミからPS1へ、PS1からPS2へ、PS2からPS3へ移行するたびに、こんな大量のメモリ使い切れん、と思ったものだが
なぜかマスター寸前の修羅場になるといつもメモリも速度も足りなくなりチューニングに明け暮れる日々が続く。
これはメモリ128Kのスーファミ時代から256MBのPS3まで、コンシューマ開発では変わらん定例行事。

そして常にメモリとコードの無駄を減らす圧力にさらされるんだけど、タスクみたいに毎フレーム相当数呼ばれる処理に
無駄が見つかると真っ先に削られる。

この修羅場では「可読性が…」とか「OOP的に…」なんて甘い理由よりも少しでも軽量なコードで動かすことが優先される。
で、PS3時代にもタスク進化系が生き残ってる、というわけだね。

仮想メモリつんでてスペックはユーザ毎にばらばらのPC環境では特定ハード向けにガリガリにチューニングなんて意味ないので
PC環境でしか作ったことの無い人間には理解できんだろうけど、
コンシューマ開発や組み込み系とみたいに固有のハード性能を120%使い切る開発スタイルではよくあること。

530 名前:名前は開発中のものです。 mailto:sage [2009/03/04(水) 02:55:00 ID:43lD+2sK]
>>529
なるほど。全くコンシューマーを知らないけれど、説得力がある
では潤沢過ぎる程のメモリと、無限の演算能力がもしあったとしたら
喜んでタスクシステムは棄て去る?



531 名前:ID:EEKBitmg mailto:sage [2009/03/04(水) 03:04:13 ID:vv/UkwCS]
ありえない仮定を持ち出すとかスゲェな
厨だけどさすがにこれは真似できないな

お前は凄い。俺は頭痛がしてきた。寝る

532 名前:名前は開発中のものです。 mailto:sage [2009/03/04(水) 03:13:07 ID:43lD+2sK]
突込みがあったので補足。
>>530は、タスクシステムが貧困な環境で使えるという>>529に対して、
ならば、十分豊かな環境だったらそうではないのか?という質問。
無限〜は *話を簡単にするため* の誇張した表現。






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

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

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