08/06/23 01:34:12 pTJzzIh1
俺はどっかにまとめるなあ
グローバルとか、デバイス差の吸収とか必要になったとき困らね
51:名前は開発中のものです。
08/06/23 02:05:44 NUHlpJuv
Direct3Dのデバイスの話とまず仮定。
そして、
・デバイスへアクセスする処理(関数)まで引数渡しでデバイスポインタを渡す
・どの処理(関数)からでもグローバルにアクセス出来るように保持する
との2択から、管理しやすさについて語っているのだと推測。
で、俺の意見は>>48と一緒。
理由は、引数で渡していくのは手間が増えるだけだと思うから。
引数で渡すのは、複数のデバイスを使う場合には意味を持つのかなと思うんだけど、
ゲームにおいて複数のデバイスを使う時って無いんじゃないだろうか。
52:名前は開発中のものです。
08/06/23 02:31:28 /DBWn/TJ
ヘッダーが重たくなるから一部のソースでデバイス関連のインクルードして、
そのソースだけでインスタンスの管理やアクセスを許して、
他のソースではインスタンスのポインター保持だけできるようにしてる。
53:名前は開発中のものです。
08/06/23 08:22:39 mKIom38M
オレはシングルトンクラスに持たせてそこからgetter呼ぶかなあ
54:名前は開発中のものです。
08/06/23 14:04:29 /Ozl3kU4
レイヤスーパータイプじゃないの
シングルトンはインスタンス数の制限が目的だし、組み合わせて使うならいいけど
55:名前は開発中のものです。
08/06/23 22:16:08 T9NriNFy
デバイスを使うような処理は関数で囲っちゃって、
普段はデバイスに直接触りすらしないようにしちゃうのは異端かな?
56:名前は開発中のものです。
08/06/23 22:34:15 X6Q0hHes
>>55
俺もー
57:56
08/06/23 22:37:13 X6Q0hHes
↑でも、ビューアとかデバッグ系のプログラムは別だけどね。
58:名前は開発中のものです。
08/07/02 02:46:33 Z7PtKJGp
お前らシーンの遷移ってどういう風に管理してる?
俺は最初、各シーンクラス内で次シーンオブジェクトを直接生成してたんだが、遷移の修正がし難くなるから止めた。
そこでより上位で、静的なシーン遷移管理クラスが現在シーンからイベントを受け取って、
現在の色々な状態をチェックして適切なシーン遷移を行うのを考えたんだが、
これでも、一定のまとまりのあるシーン遷移が積層した場合には泥臭いコードが増えると思ったんで止めた。
んで今やってみてるのは、先のシーン遷移管理クラスをオブジェクト化して、それらをスタック状に積み上げておいて、
現在シーンからのイベントを、処理できる奴まで上から順にたらい回しにしていく方法。
遷移管理オブジェクトのポップ忘れに注意が必要だけど、今のところそう悪くない構造だと思ってる。
他にはどういうやり方があるだろう。
59:名前は開発中のものです。
08/07/02 03:01:12 US3ampRT
シーンクラスじゃなくて管理クラスの方を積むの?
俺の鳥頭じゃちょっとイメージしにくい・・・
60:名前は開発中のものです。
08/07/02 08:11:54 1rjp9Xph
シーンなぞ市販のゲームだって両手の指で足りるくらいしかないのに
なんでそんなものの遷移だけで無駄にコードをいじりまわすのか
現在アクティブな遷移管理オブジェクトを隠蔽してなにか楽しいことがあるの?
61:名前は開発中のものです。
08/07/02 10:15:59 25mPqNml
シーンねぇ
なんか適当な名前のグローバルな列挙定数でswitch文で制御しているけど駄目なんかなぁ。
62:名前は開発中のものです。
08/07/02 19:16:17 noQk3O5d
それで問題感じなきゃ無問題
設計次第だしね
抽象化次第では面白い構造になりそうかも
抽象化不要なゲームなら別にswitchでよくね
63:名前は開発中のものです。
08/07/02 22:59:17 zDJJl2HF
シーンの切替で驚いた事といえば、
RPGとかで、フィールドからダンジョンや町などに入る/出るときにシーンの切替をするって言うのを聞いた時。
何か自分とはシーンというものの大きさが著しく違うのか、それとも自分が思っているRPGとは違うものなのか。
64:名前は開発中のものです。
08/07/02 23:04:11 surY1LL8
システムによっては、フィールドと町の中とではまるっきり違うやつもあるから、
そーゆーんじゃないのん?
65:名前は開発中のものです。
08/07/02 23:06:33 25mPqNml
まぁドラクエ的な物なら自分もフィールド、街、ダンジョンは同列に扱うかな。
66:名前は開発中のものです。
08/07/02 23:19:07 Z+lS9RAU
>>58
P of EAA Application Controller
というのがある、設計によっては使えるかもしれない
シーン遷移の追加よりも修正が多いのなら
可読性を重視して分散しないように書いた方が修正は楽になる、と思う
67:名前は開発中のものです。
08/07/02 23:42:43 US3ampRT
俺はステータス画面の中の項目や、更に細かい項目もシーン扱いしちゃうなー
そこまで行くとシーンじゃなくてswitchレベルかもとは思うんだけど
68:名前は開発中のものです。
08/07/02 23:53:44 noQk3O5d
サブメニュー系は別で作ってhas関係にしてるな
シーン単一保持だと元シーン内のアニメも止める事になるし(※無論それが前提なら無問題だけど)
俺の手癖だと、シーンを同時に複数駆動できるようにするとこんがらがる。
結局多態やswitch、Cなら関数ポインタの嵐になって弄りにくくなる一方な感じ。
なんか下手なんだろな
69:名前は開発中のものです。
08/07/02 23:58:28 surY1LL8
>67
俺の中では、親/子シーンとか、大(メジャー)/小(マイナー)シーンとか呼んでたりする。あくまでも俺の中だけ。
70:名前は開発中のものです。
08/07/03 03:42:52 Z+nUDepW
自分はCだけど、シーン毎にゲームループを作る。
フィールド移動、戦闘(コマンド入力)、戦闘(実行)とか。
シーンで必要な分だけ触れる形になるので分かりやすい。
ただ、新しくできてきた言語だと構造的に無理かもしれない。
71:名前は開発中のものです。
08/07/03 12:34:48 4VgEaFFX
システムデザインに拘ると、抽象化についてこれないメンバーいるからなぁ・・
ゲームは面白さ追及なんで仕方ない。この辺は妥協しないと。
外人はゲームに限らず抽象化は得意だね。まああっちは人が多いから下のレベルが高いんだろうけど。
72:名前は開発中のものです。
08/07/03 12:38:03 e4SGKyy/
>>71
それにアマチュア間で情報をやり取りする開発者のフォーラムとか
あってアマチュアも結構あれこれ知ってるからなあ。
日本って情報でも鎖国常態だから、会社にどっぷりでもない限りは
素人同然でしょ。
73:名前は開発中のものです。
08/07/03 12:49:08 ysSgecWy
むしろ日本の問題は、会社の枠で情報が閉ざされがちで、
結果ひとりよがりでフレームワークが洗練されないことに
あると思うわけだが。
74:名前は開発中のものです。
08/07/03 13:01:27 aUHHO03G
閉ざしたくて閉ざしているわけでもないと思うんだけどね。
情報公開については、企業がそうした活動に意味を見いだせれば
積極的に動くようになると思うがなあ。
75:名前は開発中のものです。
08/07/03 15:05:04 qaYiJWl1
それは違うな、設計能力を持つ人間が極めて少数しか世界に存在していない
守秘義務でコードを公開できなくても、設計に関わる議論ぐらいはできるはず
または公開することもできるだろう
実際は理解できる人がいないから話もできない
システムエンジニアがあんな連中ばかりだから設計が軽視されている
軽視されているから積極的に吸収して学ぶ気持ちを持つものが少なくなる
設計が戦略で、実装が戦術なら
ハッカーは戦術家だな
日本は戦術家ばかりで、戦略を低く評価する傾向にある
その結果、優れた戦術家をかき集めて特攻をかけるバカな頭しかない
力技で戦局を変えることしかできない、それしか方法がないと考える
一つの成功体験にすがり、臨機応変に設計を考えて変えようとしない
他人が使っている新しいものばかりを見て、導入して
仲間内だけで、「俺らって凄くね?」って言ってるだけで
自己満足に浸っている限り何も変わりはしない
道は二つだ
戦略を覆すだけの力を身につけ、力づくで戦局をねじ伏せ続けるか
戦略を考え続けるか
76:名前は開発中のものです。
08/07/03 18:39:02 9NkLv6DU
>>75
きもい、長い
77:名前は開発中のものです。
08/07/03 19:12:29 aUHHO03G
>>75
> 守秘義務でコードを公開できなくても、設計に関わる議論ぐらいはできるはず
> または公開することもできるだろう
もちろん社内で議論はしてるだろう。仕事してるんだから。
それと公開するかどうかは別の話だ。
ここでの話は、企業として技術情報を公開することについてじゃないの?
少なくとも>>72はそういう話でしょう。
それとも>>75は単に多くの日本の開発者を無能扱いしたいだけ?
78:名前は開発中のものです。
08/07/03 20:24:00 odWCpgCc
アメリカと日本じゃ、プログラマの流動性も違う品。
業界内で名を売って自分の値段を上げて転職するのが王道の国と、
あくまで内部で実績積み上げてくのが主流の国では、プログラマが
社外で情報発信するモチベーションが違う。
79:名前は開発中のものです。
08/07/03 21:55:28 DTx5b/+j
外国人すげぇ日本人だめ、みたいなステロタイプの意見が多いな
日米で比較した場合、これは産業構造が完全に異なるので
人材・才能の産業別分配比率からしてまるで違うよ。だから
日米の情報関連産業を比較したら日本劣勢となるのは仕方ないよ
>外人はゲームに限らず抽象化は得意
国産虹コンテンツの破壊力を目の当たりにしてそれはないよ
>まああっちは人が多いから下のレベルが高いんだろうけど
PCでQ3AとかUTがバカ売れしていた頃はね。そうだったよ。人数少なかったから。
でも今はだいぶ様相が違うよ。開発中期後期での期間工を大量採用しての
労働集約型闘争の比重が増大して、その成否が勝敗を分けるようになった辺りから
国内大手のそれとあんま変わらなくなった。というか下(兵隊)の素養は日本のが上。
言語障壁さえ無ければ日本の兵隊は米国の開発現場では無敵を誇るよ。
勤勉でサビ残も何のその一日12時間以上文句ひとつ言わずに働くんだから
米国の兵隊は駆逐されるよ。言語障壁さえなければね
80:名前は開発中のものです。
08/07/03 22:23:51 DTx5b/+j
>アマチュア間で情報をやり取りする開発者のフォーラムとか
>あってアマチュアも結構あれこれ知ってるからなあ
MODとか好きだから今でも国籍隠してチョコチョコ見たり書き込んだりしてるが
日本のアマチュアを劣等とするほど明瞭な差異は感じない
嗜好の差異は凄まじいが素養・素質はどっこいだよ
「CoD4作りたいですどうすればいいですか」「HL2買ってHammerでもいじってろ」「サーセンww」
みたいなやり取りは沢山ある。日本で言えば「FF作りたいです」「ツクールやってろ」「おっおっお(#^ω^)」と等価。
ただ英語圏vs日本語圏では裾野・人口が圧倒的に違うのでキチガイの数では英語圏に軍配があがる。
それと英語圏=3Dキチガイの巣窟。日本語圏=虹キチガイの巣窟。なのでアマチュアが渇望する知識
アマチュアが尊崇するアマチュア作家はだいぶ違う。単純に比較はできない
81:名前は開発中のものです。
08/07/03 22:25:41 4YUvzjZW
ゲーム開発に限った話じゃないけど、長引く不況のせいで日本人は
技術やノウハウを外に出し惜しむ癖が付いちゃってるんだと思うな。
82:名前は開発中のものです。
08/07/03 22:33:05 odWCpgCc
>>81
不況かどうかに関係なく、米国の IT 企業はノウハウ流出には厳しいけど。
秘密主義で知られる Google とかさ。
情報を出すことで他社のサービスをつぶせる場合には、積極的に公開しちゃうけど。
83:名前は開発中のものです。
08/07/03 22:46:20 4YUvzjZW
ノウハウ流出に厳しいってほんとかよ。
Googleなんて論文バンバン出して技術発表してるイメージがあるけどなあ。
海外では古い商用ゲームのソース公開したりする人達が沢山いる
けど、日本でそういうことやった会社はあんま聞いたことないし
プログラミングの本でも、80年代は日本人が書いた本でも面白い本は
沢山あったのに、ここ10年ぐらいの名著は外人が書いた本の
翻訳本ばっかりの現状考えるとにわかに信じられん。
84:名前は開発中のものです。
08/07/03 22:47:22 JMOvob5t
単なる欧米コンプレックスだろ
85:名前は開発中のものです。
08/07/03 22:50:43 odWCpgCc
>>83
> Googleなんて論文バンバン出して技術発表してるイメージがあるけどなあ。
当たり障りがないところだけな。
Google が出してる論文は、実証論文が多い。分散システムは理論的には
だいぶ前から研究されているんだが、Google が出してる論文は「それを
使って実際にファイルシステムを作って運用したら、このぐらい性能出たよ」
みたいなやつ。
実装の詳細は公開していないし、細かい数値は「これは出せない」とか平気で
書いてある。
もちろん実証論文にも学術的に価値があるんだが、ノウハウを公開しているの
とはだいぶ違う。読んでも真似できないし。
86:名前は開発中のものです。
08/07/03 22:55:44 odWCpgCc
Google の論文は、個人的には就職者ホイホイのような気がしてる。
SIGOPS とか USENIX の論文読むような質の高い連中に、ウチに
来るとこんな仕事できるぜーとお誘いかけてる。人材仲介業者に
高い金払うより良い宣伝だよw
87:名前は開発中のものです。
08/07/03 23:05:49 1g03RBvk
論文の質・量で言うとMicrosoft Researchのほうがすごくない?
88:名前は開発中のものです。
08/07/04 00:30:18 lh91Gh1r
専門知識を蓄えてしまうと、ますます話の合う人間がいなくなりそうな予感。
89:名前は開発中のものです。
08/07/04 05:23:01 5KkF19ee
>>84
ソフトウェアに携わる人間で米コンプレックスを感じない人は
無能あるいは情報弱者だろう
欧州はそれほどとも思わないけどアメリカリードしすぎ
90:名前は開発中のものです。
08/07/04 05:32:42 fzMGN+kp
>>89
海外はすごいよ。
開発するにしてもニッチな物になればなるほど日本側で
解説してるのが少ない。
結局は翻訳サイトで翻訳しながら自力で学習してる。
91:名前は開発中のものです。
08/07/04 05:48:08 dN9x2gJA
それ、英語の普及範囲を評価してるだけだろ
日本人の英会話力の低さは別問題だよもう
92:名前は開発中のものです。
08/07/04 05:56:42 KBN1fM3d
米コンプレックスとは世界の「知」が集まる「場」「国家」に対するコンプレックス
こういう感情や危機感を抱く対等の存在は「その他の場」「その他の国家」
一個人は素直により良い「場」の恩恵を享受することができるわけで
情報交換にしたって英語圏MODコミュやゲームデベロッパーのコミュを
覗き見ることに何の拘束も受けないよ。このネットの時代にあって
国家の枠組みや物理的距離は、知的欲求や情報交換を阻害する
主要因では既になくなってるよ。特にアマチュアにとってはこんな恵まれた状況は
90年代半ば以前はなかったわけで、この期に及んで、より良い「場」に距離を感じ
コンプレックスをおぼえるならその正体は言語コンプレックスなんだよ
言語障壁にもがき苦しんで乗り越えたもん勝ち。がんばれ
93:名前は開発中のものです。
08/07/04 05:57:56 KBN1fM3d
>>91
かぶったスマンコ
94:名前は開発中のものです。
08/07/04 06:11:54 KBN1fM3d
ところで休暇中に発見した格安で愉快な英語おしゃべり上達法
ネトゲでボイチャ。中毒性の低いFPSとかでVoIP対応してるやつがオヌヌメ
95:名前は開発中のものです。
08/07/04 06:28:19 KBN1fM3d
米国の現場における労働集約型闘争が生み出した兵隊の質の低下は
既に数年前から顕在化しているという話をしたが、適当に日本語ソースをググッてきた
URLリンク(slashdot.jp)
「知」が集まる国といえど開発規模の肥大化で苦しんでる様は日本同様
促成教育で動員された兵隊は待遇面でも基礎素養でも決して恵まれては居ない
理系大卒ないし中退程度の知識を持つ少数の変態テクノギークがブイブイ言わせていた
PC-FPS主流時代とは事情が違ってる
96:名前は開発中のものです。
08/07/04 06:32:14 ulIK/zsc
くねくねハニィのコラムによると、
日本は会社の枠に縛られず下請けやフリーのプログラマばんばん使って短期決戦、
海外は外部の人間は使わず自社内で十分な予算を確保してじっくり練り上げていく、
ってことらしいぞ。
むしろ海外の方が技術的には閉鎖的なんじゃないか?知らんけど。
少なくとも俺はよそのメーカーを手伝う機会が多いから日本が閉鎖的とは思わんな。
97:名前は開発中のものです。
08/07/04 06:58:00 KBN1fM3d
切羽詰って偽装請負みたいなことやっちゃってたりするよな
98:名前は開発中のものです。
08/07/04 08:23:31 BChTVd/d
>>96
>日本は会社の枠に縛られず下請けやフリーのプログラマばんばん使って短期決戦、
>海外は外部の人間は使わず自社内で十分な予算を確保してじっくり練り上げていく、
>ってことらしいぞ。
これは言えてる。
日本のホワイトカラーは、最上位の意思決定者と外注の中継地点にしか過ぎない。
地道な作業をしないことに価値を見出す役人根性が、世の中を席捲している。
99:名前は開発中のものです。
08/07/04 08:49:34 BChTVd/d
>>80
以下を見ると、英語圏の方が日本よりも、アマチュアというかインディーズ(同人)市場が発展しているという印象を受ける。
URLリンク(www.gametunnel.com)
○ 絵(とくに3D)がきれい。
○ 音楽も一般受けする質の高いものが標準。
○ ゲーム中以外のシーン(デモ、オプション設定)が作りこまれている。
パーツを生産する能力は、上位企業の即戦力並だ。
ただし、ゲームとして楽しいのはあまりない気がする。
日本のフリーとかシェアは、ゲームとして楽しいのが少ない上、パーツも陳腐なデザインが多い(よくできたものもあるが)。
グローバルな金儲けには関心なく、村市場(コミックマーケット)で満足してしまっている奴が多いんだろうな。
100:名前は開発中のものです。
08/07/04 10:11:43 pYjEAjeh
最近の家庭用の大規模RPGのデータってどう管理されてるのが多いんですか?
RDBですか?それともタダのファイル?
101:名前は開発中のものです。
08/07/04 12:41:59 tMJHCBTq
普通はゲームデータ制作ツールとゲーム実行エンジンを並行して作っていく。
データはファイルが多い。ゲームデータ制作ツールの仕様にもよるけど、バイナリファイルの場合が多い。
C構造体のバイナリダンプは実装が楽だからね。
PCゲーには、ユーザがテキストファイルを弄ってデータや設定を変えられるものもある。
102:名前は開発中のものです。
08/07/04 13:10:11 04Qw9LMa
国単位になるとステレオタイプのイメージに支配されちゃう人っているんだねぇ
103:名前は開発中のものです。
08/07/04 15:33:28 eL1SAVRC
マの話はマ板でやってくれ
>>100
某タイトルはSQLite使ってるな
104:名前は開発中のものです。
08/07/04 20:15:06 HsoNh4J4
>>87
> 論文の質・量で言うとMicrosoft Researchのほうがすごくない?
同意。世間じゃGoogleを持て囃すのが流行ってるけど、むしろ
コンピュータサイエンスはMSRのほうがすごい研究者を集めてる。
105:名前は開発中のものです。
08/07/05 11:31:29 rip3o1Gr
>>104
研究者の層の厚さだと IBM 強いよなぁ。
Google は R&D でも R より D 寄り。
106:名前は開発中のものです。
08/07/05 11:38:06 rip3o1Gr
>>103
まだ、主流は独自フォーマットのバイナリだと思うな。
CSV か XML っぽいフォーマットでデータファイル作っておいて、コンバータで
バイナリに変換して組み込み。
107:名前は開発中のものです。
08/07/05 11:38:38 Def2so2E
だめだ、全然話についていけないぜ
108:名前は開発中のものです。
08/07/05 11:41:27 qX1NKMBA
>>99
> ○ 絵(とくに3D)がきれい。
> ○ 音楽も一般受けする質の高いものが標準。
> ○ ゲーム中以外のシーン(デモ、オプション設定)が作りこまnれている。
ちょwwわかってかいてんのかよww
全部、投入できるリソースの違いで解決できるじゃねーかw
109:名前は開発中のものです。
08/07/05 11:44:02 qX1NKMBA
俺は、海外のインディゲームデベロッパーを結構チェックしているが、
絵がきれー、とか音楽すげーとかってなかなかないよ
それこそ、日本でたまに同人ですげえグラでバリバリ3Dなのがでてくる頻度並み。
たまにこれすげえ描き込みだ、とか思ったら現役プロの趣味作品だったり(日本かとおもうけど、海外の話だよ)
110:名前は開発中のものです。
08/07/05 11:44:46 qX1NKMBA
連投ごめん、音楽すげーはけっこうあるわw まあ俺がテクノ好きなだけかもしれんけど
111:名前は開発中のものです。
08/07/05 13:29:28 E9y2cnx1
雑談スレに移動すべきだと思うけど二つだけ。
そもそも一国と世界を比べることに意味があるのかな。
言語障壁はローカルのコミュニティが栄えない理由にならないよね。
112:名前は開発中のものです。
08/07/05 20:57:12 UjEcMe9W
>>108
>>109
>>99のリンク先のコンテンツを見た上で、のたまっているのか?
優れたリソースの利用可能性も、市場発展度合いの目安。
113:名前は開発中のものです。
08/07/05 21:01:08 rip3o1Gr
日本の職人はゲームじゃなくて、ニコ動に集ってるだけだろ。
114:名前は開発中のものです。
08/07/05 21:23:48 hYTfj9Xn
方向性が違う物を比べても何にも成らないのに
115:名前は開発中のものです。
08/07/06 00:07:36 Gwo/Ylg2
>>80だが
>>99
繰り返すが、趣味者の嗜好の差異が凄まじいと言っているだろう。
IGDA日本の新清士に代表される外国すげぇ日本だめ論のステロタイプアジテーターは
なぜ乱暴な単純比較して優劣を競おうとするのか、FPS大好きの俺でも理解に苦しんでいる
>英語圏の方が日本よりも、アマチュアというかインディーズ(同人)市場が発展しているという印象を受ける
>URLリンク(www.gametunnel.com)
ところでgametunnelはフリゲのダウンロード数、シェアウェアの販売数を公表してるか?してないだろ
特に後者について公表したらおそらくDLSiteの販売数を遥かに下回るんじゃないかと俺は読んでいる
(下半身産業が絡んで不公平になるので全年齢のみで比較してもいい)
>日本のフリーとかシェアは(中略)
>グローバルな金儲けには関心なく、村市場(コミックマーケット)で満足してしまっている奴が多いんだろうな。
だから、嗜好の差異が凄まじいと言っている。エロゲ塗り紙芝居ADVが大好きだから一生懸命作ってるアマチュアに
「グローバルな金儲けに関心もて」「今すぐFPS作れ」なんて言えるかい?毎日好きでもないものを延々作らされてる
腹いせに素人に因縁付けてるようで感心しないな。だいたいプロの何パーセントがグローバルな金儲けのために
真剣に取り組んでるよw素人に八つ当たりする前に自分の胸に手を当てて考えろっての。
あと、素人に即戦力を問う例のあのアジテーターも異常だ。10年以上前から新卒採用の新人に即戦力なんざ期待してない。
他業界同様、研修・実習・OJT、一から大事に大事に育て上げ戦力化している。N-88BASICマスターだろうがファミベの達人だろうが
ツクラーだろうがデザエモナーだろうがボードゲーム狂いだろうが等しくスタートラインから育て上げてる。それができる体力のない
弱小零細が新卒学生の即戦力がないだのと八つ当たりしてベーマガ2.0が要るだの喚いてるだけ。勝手に滅べと言いたい
116:名前は開発中のものです。
08/07/06 00:20:54 Gwo/Ylg2
外国すげぇ日本だめ論が好きな連中は日本の文化を否定する傾向にあってあまり好かん。
アマチュアゲーム開発者の嗜好が世界のガラパゴスと呼ばれても気にする必要なし。
趣味に独自文化が形成できるのは豊かさの象徴であって決して恥じるものではない。誇っていい。
エロゲ塗り紙芝居ADV作家は大挙してgametunnelに突撃するくらいの自信を持っていい。
世界に比類の無いコミケのような巨大なヲタ祭を村市場などと自虐に走る連中は無視しろ。
あんだけカネと人が動く趣味野郎の祭典が開けるのは豊かさと根暗パワーの象徴だ。誇っていい
117:名前は開発中のものです。
08/07/06 00:32:11 ADZbZeYt
日本人はどちらかといえば何か分からんが動いたから良いやって人が多
い気がするね。
昔から日本人は抽象的な概念は強いけど具体的な概念に弱いって言われ
てるって何かの本に書いてた気がしないでもない。
SEやらPGやってる人なら分かると思うけど「なんで?どういうこと?」っていう
のを突き詰めてちゃんと答えが出ないと気が狂いそうになる人じゃないとエンジニア
には向かないと思う。
まぁ外人云々じゃなくて正確か??
118:名前は開発中のものです。
08/07/06 00:33:49 Gwo/Ylg2
ただし、技術屋を志向する趣味プログラマは技術的ガラパゴス状態に陥ったら負けだな。
この点だけは外国すげぇ日本だめ論を展開するアジテーター共の意見に一理ある。
お国柄のせいか虹派が多数派の我が国ではアマチュアプログラマに要求される
技術水準はそれほど高くはない。それはそれでいいのだが、その技術ガラパゴスの中で
タスクシステム知ってる俺tuee状態とかになっては格好が悪い。俺tueeする時はもっと
見識を広めたほうが良い
119:名前は開発中のものです。
08/07/06 00:34:25 Gwo/Ylg2
>>117
かぶったスマン
120:名前は開発中のものです。
08/07/06 00:34:55 7QhD5OiR
熱く語ってもらってるとこ悪いけどお前らスレ違いだ
121:名前は開発中のものです。
08/07/06 00:42:02 Gwo/Ylg2
ああ、悪い。次に長文レスするときは↓に投げることにする
現役開発者が質問に答えるスレ
スレリンク(gamedev板)l50
122:名前は開発中のものです。
08/07/06 00:44:51 VtZ5ywY1
>>115
>腹いせに素人に因縁付けてるようで感心しないな。
感じやすいんだな。
一つ俺が言いたいのはさ、スキルがあるんだったら、
小規模ながらもグローバルな金儲け(変な言葉だ)に挑戦すること考えた方が、
面白えんじゃねえのってことだよ。
自身の嗜好に自信がないって?
じゃあ、そいつは一体何をやっているんだ。
123:名前は開発中のものです。
08/07/06 00:48:46 mek7cAwO
スレ違いだボケども
124:名前は開発中のものです。
08/07/06 01:43:19 D1fZ4Z3G
> SEやらPGやってる人なら分かると思うけど
PG以外がこのスレに居るのかと問い詰める必要があるな
125:名前は開発中のものです。
08/07/06 07:26:44 XCulGsMF
すみません。話を脱線させた一人です。。。
小さな会社でケータイゲー作ってる業界人です。底辺です。分かってます
俺も職場の仲間はみんなゲーム専門学校卒です。
英語とか読めないしGPGの日本語版も難しすぎてわからないので
や○う○おさんの本とかCマガのタスク記事が職場のバイブルです。
某スレでタスクシステムが馬鹿にされて自棄になってて
俺の職場のレベルが低いのはきっと日本の閉鎖性のせいだと
考えるようになってました。
だってPS3とか箱○のゲーム作ってるクライアント(大手です)は
自分たちのノウハウを俺ら底辺には絶対教えてくれないし。。。
発注したケータイゲーをおとなしく作ってろって感じの扱いです。。。
ぜんぜん頭よくなれそうにない知育ゲーとか糞つまんねー
クイズものばっかり作らされて気が狂いそうです。。。
126:名前は開発中のものです。
08/07/06 07:43:01 XCulGsMF
日経のサイトのベーマガ2.0の記事も読んでました。
ベーマガがどんなものか実は知らないのですが日本の
アマゲーコミュニティがないから悪いって言ってたので
我が意を射たりって感じでした。
土日スレで投稿してましたがいつも荒らされてました。
PCゲーム板のフリゲ厨とか氏ねと思ってました
俺は今もDirect3Dとかわけわかんないです。そういうのを
教えてくれるベーマガみたいなものに出会えなかったから
ファミ通の特集記事のゲーム専門学校すごいと思って
高校の先生の反対を押し切ってゲーム専門学校に行きました。
でも専門学校の講師も3D苦手でした。
おまえらには3D無理だから2Dで卒業制作作れって言われたので
言う通りにしました。今思えば先生が分からないもの作られると
質問されても答えられないから嫌だったんだと思います。
ゲーム専門学校に行ったことをすごく後悔してます。
ファミ通氏ねと思いました。きっとベーマガがあれば俺の人生
違ってたかもと思いました。やっぱおまえらが悪い
127:名前は開発中のものです。
08/07/06 07:59:00 XCulGsMF
すみません。ついカッとなってまたスレ違いのこと書いちゃいました
消えます
128:名前は開発中のものです。
08/07/06 08:43:38 S3/2UtrA
ネタじゃなかったら真面目に一度精神科に行くべき。
明らかに躁鬱の傾向が見て取れる。
過度のストレスで脳に器質的な損傷が出来てるかもしれん。
129:名前は開発中のものです。
08/07/06 09:01:33 VtZ5ywY1
>>123
何も語れない馬鹿よりはマシ。
130:名前は開発中のものです。
08/07/06 09:28:24 I4JuM713
まあ、消えなくていいからまた、スレ違いじゃなくてよさげな情報あったら教えてくれよ
131:名前は開発中のものです。
08/07/06 10:03:51 4WjvpweZ
>>129
さすがにそれはねーよw
スレ違いでも知識をひけらかすほうが賢いと?
まあ、あまり過疎ってもらってもつまらんのだが・・・
132:名前は開発中のものです。
08/07/06 13:03:17 cXpJQpiz
tunnelでおすすめのゲームを教えてkれ
133:名前は開発中のものです。
08/07/06 15:04:16 ZiAdcqL1
VIPから来ました
ギャルゲひっさげて殴り込んで欲しいリア充外人サイトがあると聞いて
134:名前は開発中のものです。
08/07/06 16:19:57 le8Gr2pO
いや、作者じゃないと殴り込めないわけだが
135:名前は開発中のものです。
08/07/06 16:49:47 NhLrwJLQ
おかしな奴の言い分もわかるぜ
日本の企業は総じて、コミュニケーション能力だのなんだの
わけのわからない能力やノウハウを好んでそれを要求するくせに
それらを他人に教えるようなことはしないからな、ヒントすらも
異常なほど排他的だ
数年前に某大作RPGの下請けの社長様が
「3Dできる奴なんて腐るほどいる死ね、コミュニケーション能力のない奴は死ね」(意訳)
って新聞記事に載せてたの思い出した
笑える、うひゃ
136:名前は開発中のものです。
08/07/06 17:01:01 a3zGOuXr
マ板でやれっつの
あーあ
137:名前は開発中のものです。
08/07/06 17:06:30 NhLrwJLQ
ほらクソども設計について語れや
レイヤスーパータイプは
class Devicer { static Device device; }
で、スーパークラスとしてDevicerを使うことだ覚えとけ
Application Controllerは
class AP {
View GetView(入力と状態値);
Command GetCommand(入力と状態値);
}
引数に入力情報や状態を判断する値を入力すると
それに適したViewやModelに対するCommandを返すものだ
覚えておけ、クソども
138:名前は開発中のものです。
08/07/06 17:44:48 bleemPMj
みんな独自のウィンドウマネージャー(画面管理)クラス作ってるのかなあ
139:名前は開発中のものです。
08/07/06 22:29:37 mQf6Jrcq
>>135
良いこというなぁ。
禿同。
社長に。
140:名前は開発中のものです。
08/07/06 22:41:15 NhLrwJLQ
シーン遷移をきれいに実装したいという話なら、俺は否定するぞ
ジャンルにもよるが大抵のゲームで使うシーンは、多くてもせいぜい十にも満たない数だ
この規模の小さい状態遷移を、そのまま適当に実装してもとくに肥大しない
後で追加が頻繁に発生するとも思えない、適当に修正しても特に難しくはならない
こういう部分に、色々な知恵を絞ったコードを書くことに意味はない
逆にそのクラスの為に他の部分にしわ寄せが行って、
難しいロジック部分や画面描画部分に関係のないシーン遷移のコードが入り込む
無駄に依存関係が発生し複雑になる、遷移するためのコードが分散して修正が難しくなる
やるんだったら他の部分に影響を及ぼさない程度にしておけ
無意味に分断しすぎて複雑にするな
141:名前は開発中のものです。
08/07/06 23:15:17 bOQhFRQW
>>140
めんどくさいのは、シーン遷移よりキャラクターの状態遷移だよな。仕様変更が
わりと発生しがちな部分だし。
142:名前は開発中のものです。
08/07/06 23:34:33 NhLrwJLQ
>>141
同感だ
そういう箇所に擬似コルーチンを使ってる
前はState使ってたが、あれは追加には強いが変更に弱いな、複雑になって死んだ
単純ならそのまま状態変数で適当に書いてもいいが
コルーチンのほうが書いてて楽しいな
143:名前は開発中のものです。
08/07/06 23:47:58 bleemPMj
状態が変わる時は自滅させてから、見た目同じで中身は別の敵オブジェクトを生成するとか。
144:名前は開発中のものです。
08/07/07 00:57:38 FUQ1BpEu
>擬似コルーチン
浅学な俺にコレについて詳しく
145:名前は開発中のものです。
08/07/07 04:37:03 ohkg3t4w
>>144
以前けっこう調べた俺がコレについて詳しく
コルーチン
並列実行をさせない(できない)スレッドのこと。外国人はコーディングの際 coro と略すこと多し。
メリットは、排他処理が不要、ネイティブスレッドに比べてコンテキスト切り替えが軽い(もちろん実装次第だが)。
デメリットは、切り替えタイミングをプログラマが指示する必要がある、CPUがデュアルコアでも恩恵が受けられない。
最近ゲーム関係でよく聞くようになったが、アルゴリズム的にはすんごく昔のクヌース本にも載っているらしい。
マイクロスレッド、協調的マルチスレッド、ファイバー(Windowsのみ)、などの言い方があるが、
ゲーム業界ではコルーチンが一般的かな?
ネイティブスレッドではないので擬似的なスレッドと言えるが、「擬似スレッド」という呼び方は
よく混乱を招くようなのでお勧めしない(後述するように、スレッドを擬似的に再現する手法は他にもある)。
Cで実装する場合は、たいてい手動でスタックポインタを切り替えることで実現する。
主な実装:
アセンブリで実装:作成難度高、コンパイラ依存、移植性なし、使い手にもスキルが必要(スタック溢れ対策など)
大域ジャンプで実装:作成難度中、コンパイラ依存、やや制限がある
スクリプトで実装:スクリプトのVM(例えばLuaやSquirrel)に任せる。使うのは簡単で制限も少ない
擬似コルーチン
コルーチンっぽいことを擬似的にやること(を、>>141は言っているのだと思われる)。
主な実装:
マクロで実装:作成難度低、移植性高い、制限多い、読み手には超分かりずらい
感じを掴むには、LuaかSquirrelでコルーチンを触ってみるのが一番手っ取り早いと思う。
以下は直接関係ないので、混乱するようなら読み飛ばして。
・昔のMacOSやWindowsで言うところの「プリエンプティブでない」マルチタスクの仕組みは、コルーチンの親戚。
・RubyやPythonのスレッドも、一般的な実装ではネイティブスレッドではなく擬似的なスレッドらしいが、
明示的にコンテキスト切り替えを行うわけではないのでコルーチンとは異なる。
Javaではこのような擬似的に実装したスレッドをネイティブスレッドに対してグリーンスレッドと呼ぶ。
146:名前は開発中のものです。
08/07/07 07:19:25 1RaeXbIY
コルーチンを使わなかった場合
if (frame <= 100)
GoToLeft();
else if (frame <= 200)
GoToRight();
:
以下延々とつづく
コルーチンを使った場合
for (i = 0; i < 100; i++)
GoToLeft(); yield;
for (i = 0; i < 100; i++)
GoToRight(); yield;
:
147:名前は開発中のものです。
08/07/07 07:20:47 1RaeXbIY
ミスった orz
for (i = 0; i < 100; i++) {
GoToLeft(); yield;
}
for (i = 0; i < 100; i++) {
GoToRight(); yield;
}
:
148:名前は開発中のものです。
08/07/07 07:24:44 1RaeXbIY
コルーチンは、タスクシステム総合スレで話題が出てたね
149:名前は開発中のものです。
08/07/07 08:00:36 FUQ1BpEu
あー、マイクロスレッドのことか!
それなら一応分かるような気がしないでもない
でもC++じゃあ無理だよね・・・
150:名前は開発中のものです。
08/07/07 08:00:37 0ql4peFo
fiber?
151:名前は開発中のものです。
08/07/07 09:17:09 1RaeXbIY
>>149
ネイティブに落とされる言語だと実現するにはコンパイラ依存になるんじゃないのかなあ?
スタックいじるし。
>>150
Windows用語ではそうかと。
てか、要点は>>145に書いてあるなw
うまいまとめだ
152:名前は開発中のものです。
08/07/07 10:04:53 BeipJAsv
コンパイラ依存じゃなくてアーキテクチャ依存だ。
setjmp()でコンテキストを保存したあと、保存したコンテキストの
スタックポインタとリターンアドレスを書き換えてlongjmp()で戻すだけ。
C++だけで実装可能だぞっと。
153:名前は開発中のものです。
08/07/07 13:31:17 yE1V62Sc
fiberはRubyでも使われてるよ
スレッド(糸)より細いものだからファイバ(繊維)
あとJavaScriptにも1.7から導入されてるぜい
154:名前は開発中のものです。
08/07/07 22:11:23 oT4ePMXj
マイクロスレッドは理想だけどそこまでトリッキーなことやる踏ん切りが付かない
155:名前は開発中のものです。
08/07/07 22:26:27 yE1V62Sc
やっぱスクリプト以外ではやる気しないな
156:名前は開発中のものです。
08/07/07 22:30:56 nV3j1Oo/
タスクシステムはコルーチン実装の一つだね
157:名前は開発中のものです。
08/07/07 23:47:06 ZC8HSbxq
コルーチンの「コ」って子供の子って意味じゃないよね?
158:名前は開発中のものです。
08/07/08 00:00:56 2Ffcfnsn
cooperativeと一緒のco-だろ?
159:名前は開発中のものです。
08/07/08 01:20:29 DPfKtgJc
俺はオブジェクト指向で、シングルスレッドだな。
常にメインループ内で、オブジェクトの描画、行動、当たり判定が行われてる。
また一方で、オブジェクト発生イベントのリストを持っていて、
順次、メインループにオブジェクトが登録されていく。
この「オブジェクト発生イベントのリスト」はシーンに相当していて、
シーンを切替えたければ、今登録されているオブジェクトを破棄して、
イベントのリストを差し替えるだけでいい。
while (1) {
for i=0...
{
オブジェクト[i]->行動();
オブジェクト[i]->描画();
オブジェクト[i]->当たり判定();
}
イベント発生()
}
160:名前は開発中のものです。
08/07/08 17:13:03 8FRUZW5m
>>159
PACに似てるが違う、オブジェクトの追加に強そうだが
そのメリットの恩恵が受けられない場合に死ぬほど複雑になる予感
ドメインロジックのテストを行うときにビューが関わってくる
逆にビューのテストを行うときにドメインロジックが関わってくるため
テストに多大な労力がかかる事が予想される
常にプログラム全体をテストしなければならないため、試行錯誤すると死ねる
render target等の処理が俺にはすぐに思いつかない、よって3Dには不向き
2Dにしても描画に関する処理が単純でなければうまく動かないだろう
規模が小さいプログラムを無駄に複雑にしてすごそうに見せたい人にお勧め
または、意味もなく多機能オブジェクトをリストに突っ込んで管理したい人にお勧め
私はお勧めしない、追加のメリットが多大である場合は考慮に値するが
ゲームには不向きだと思う、特に3Dの場合は
俺は怖くて使えない
161:名前は開発中のものです。
08/07/08 17:19:39 8FRUZW5m
>>160
追加
リソースの追加が障害にならなければロジックのテストは問題ない場合もある
やるんだったらそんな半端な構造ではなく
関連まで含めて、PACアーキテクチャ使った方がよくないか?
162:名前は開発中のものです。
08/07/08 22:56:21 8FRUZW5m
小規模な状態遷移の実装は
今持ってる手で四つ
1.擬似コルーチン
2.スレッド
3.スクリプトで隠蔽したスレッド
4.通常の状態変数による管理(State含む)
設計が明確でない初期のもの、プロトタイプ
又は小規模な場合の初期のとりあえず書いておくコードに向いているのは
擬似コルーチン又は状態変数だろう
まだ設計方針が明確に決まっていない場合や試行錯誤しなければならない状態で
スレッドやスクリプトの導入を決めるのは早すぎる、リスクが大きい
ある程度、方針が固まってから適切なものを選択するのがいいだろう
状態変数での管理が大手を振っているのも
初期コストが低いという部分が大きい
このため、状態変数やState以外の選択肢は簡単には普及しないだろう
ただし、スレッドの積極的採用が処理速度向上に繋がるのならその限りではない
163:名前は開発中のものです。
08/07/08 23:04:46 gy2iNnCl
コルーチンで擬似ってどういうこと?
164:名前は開発中のものです。
08/07/08 23:41:41 8FRUZW5m
>>163
擬似じゃなくていいのか、訂正
1.コルーチン、又は擬似のそれ
言語仕様に含まれてるときはそのままコルーチンとして呼び出し
c/c++の場合は以下のものが使える、又は自分で作る
URLリンク(www.chiark.greenend.org.uk)
それ以外なら
ソースコードを変換するプログラムでも作る
gotoやthrowやswitchやラベルなんかが含まれない言語では無理、又は面倒くさい
165:名前は開発中のものです。
08/07/08 23:46:18 iq4s5004
まぁいいけど、ライセンスがGPLで良けりゃこっちを使おうぜ。
URLリンク(www.xmailserver.org)
166:名前は開発中のものです。
08/07/09 01:10:17 vZNCPgy9
言語機能として付いてないC++で無理やんこやるのはいろいろ怖い気が
すんごい便利そうなんだけどなぁ・・・
167:名前は開発中のものです。
08/07/09 07:23:21 eQNI5n3r
そこまでするならスクリプト組み込んだほうが
よっぽど安全で楽だと思うけどな
168:名前は開発中のものです。
08/07/09 09:40:38 nYED4jrh
>>162
スレッドっていう言葉は聞いたことあるが、実装手法は、全く聞いたことが無いな。
>小規模な状態遷移の実装
>>146のような、行動予約の状態遷移を前提にしているのかな。
だとしたら、もっぱら自分は、C++で、
>4.通常の状態変数による管理(State含む)
と動作制御用独自スクリプトだな。
基本は、ゲーム開発で言うところのタスクシステムで処理。
各オブジェクトは、単一クラス中に、状態ごとに処理関数(メンバ関数)を用意する。
フレーム毎に、その時点の状態に該当する処理関数を、1回ずつ呼び出す。
その関数中で、動作制御用独自スクリプトの解釈処理も行い、適宜、処理関数を切り替える。
状態毎の処理関数は、メンバ関数ポインタ配列を通じて、インターフェースを切り替える。
動作制御用独自スクリプト解釈込みの処理関数を、継承用テンプレート・クラス中に実装。
表現くどいけど、悪しからず。
169:名前は開発中のものです。
08/07/09 17:57:35 7MZGZOjk
巣に帰れ
タスクシステム総合スレ part2
スレリンク(gamedev板)l50
おまえらタスクシステム信者がクソでカスでゴミクズな理由は
自分が書いてるコードにどんなメリットとデメリットがあるかを理解できてないところだ
または、それを考えようとしないところだ
ただ使えばいいと思い込んで、それで完結している
考えることを放棄したおまえらに設計能力を向上する機会はない
戦略のない戦術はただのテロだ
170:名前は開発中のものです。
08/07/09 18:38:12 vZNCPgy9
ひどいな・・・
なんでそんな暴言が吐けるの
171:名前は開発中のものです。
08/07/09 18:47:18 vvjjLorC
良く知らんがタスクシステムって言葉が出ると荒れるようだ
なんかそういうgdgdな経緯でもあったんだろうな
172:名前は開発中のものです。
08/07/09 18:55:55 nYED4jrh
>>169
スレリンク(gamedev板:4番)n
173:名前は開発中のものです。
08/07/09 18:56:55 iC3IHDcB
>>171
ゲーム業界の造語みたいなものだからな。
OS屋に言わせると「なにそれ?プ」というものらしい。
まあ一定60FPSとか30FPSといったフレームで常に動いてて
物の動きとか制御してるのがOSがタスクを処理してるのに見えるから
そういう風に業界の人間かゲーム評論家か自称ゲーム評論家の素人
が言い始めたのそもそもらしい
174:名前は開発中のものです。
08/07/09 19:21:37 eQNI5n3r
やっぱり顔真っ赤にして噛み付くヤツが出ると思ったよ
しょうがないからその辺の単語は誤魔化して話進めてくれ
いつまで経っても話進まねーからな
175:名前は開発中のものです。
08/07/09 19:22:14 anjhk7B8
名前負けしてるよね、完全に。
176:名前は開発中のものです。
08/07/09 21:10:22 7MZGZOjk
話が進むわけないだろ
言ってる奴が、メリットもデメリットも把握していないんだから
ただ難しそうな言葉が並んでいるだけで、それ以上の意味はない
宇宙の力がイオン水に影響を与えてゲーム脳がゲルマニウムパワーに還元されるんだよ
誰かこれを理解してみろクソが
177:名前は開発中のものです。
08/07/09 21:12:45 iC3IHDcB
噛み付いてはないけど・・すまんな
まあ俺的にはそんな何とかシステム(自称)はどうでもいいよ。
市販のゲームでも売り出す際は自称xxxシステム採用とかいう
元からそういうの好きな業界だし。
178:名前は開発中のものです。
08/07/09 21:30:52 4OXXlyYN
>>176
少し落ち着けよw
>宇宙の力がイオン水に影響を与えてゲーム脳がゲルマニウムパワーに還元されるんだよ
お前はこういう事を言うやつに馬鹿だのアホだの必死に噛み付くのか?
俺はスルーするけどな
179:名前は開発中のものです。
08/07/09 22:16:56 EYwlC03l
「面白いこと書いた」と思ってるんだろうなぁ。
端からはただのバカにしか見えてないけどね。
180:名前は開発中のものです。
08/07/09 22:19:25 SF8ehHxO
>>173
>OSがタスクを処理してるの
ってどんな実装してるの?
181:名前は開発中のものです。
08/07/09 22:22:48 uQp1o0/n
タスクシステムってゲームプログラミング固有のもんじゃなくて
リアルタイムOSとか便利なもんがなかった時代の組み込みシステム開発に
起源があるような気がする。
まあ、C++で真っ当にオブジェクト指向やってれば、こんな古臭いもんを
有難がる必要はないと思う。
182:名前は開発中のものです。
08/07/09 22:23:19 iC3IHDcB
>>180
そりゃ・・・その辺はがんばって勉強して
キューだとかスレッドだとかタスクだとか
タイムスライスだとか
まあ同時に複数のものが動いてる(ように処理してる)風に出来るものかな
乱暴な言い方だけど。
183:名前は開発中のものです。
08/07/09 22:24:41 7MZGZOjk
そろそろ潮時か
君らのレベルから比較して自分のレベルがどの程度低いのかがよくわかった
有益だったぜw
また暇なときに挑発に乗ってやる
この完璧な捨て台詞を覚えておけよ
184:名前は開発中のものです。
08/07/09 22:48:57 XmNOce7Z
>>183
巣に帰れとか言うけど、君の方がタスクシステムスレの流れを持ち込んでるようにしか見えない。
感情的にならずに、なぜいけないのか説明すればいいだけだと思うよ。
会社でタスクシステムで組みたいと同僚が言ったとして、
烈火の如く怒っても、自分が不利になるだけじゃなく、なぜ駄目なのかを分からせることも難しいだろ。
ここは、「現代的な設計ではそれは無い。なぜなら・・・」と話を進めるべきじゃないかな。
185:名前は開発中のものです。
08/07/09 23:14:23 nYED4jrh
>7MZGZOjk
なんというか、要するに、
ただの孤独なレス乞食。
もしくはタスク・スレへの誘導係。
マンネリだな。
効率的な挑発方法については、再考した方がいい。
186:名前は開発中のものです。
08/07/09 23:17:00 md3RJLJr
タスクスレに託すか。
187:名前は開発中のものです。
08/07/09 23:26:06 30d6bQh7
コードが繁雑になって来たので、大革命を起こしたら
以前より良い設計ができない上に、収集がつかなくなった。
svnさんにお願いして、前のリビジョンに戻る日が近くないことを祈るばかりだ。
188:名前は開発中のものです。
08/07/09 23:50:08 XmNOce7Z
>>186
189:名前は開発中のものです。
08/07/10 00:33:17 rFEYqRAa
>>186
神は自らタスクる者をタスク。
190:名前は開発中のものです。
08/07/10 00:51:19 A+tXgG+V
>>180
タスクスレの話題を続けるのはよくなさそうなので情報だけ
スレリンク(gamedev板:456番)
OSだからできることを思いっきり使ってるんで
管理手法以外はあまり参考にならんよ。
OS自体に興味があるならOS板にいくといいよ
191:名前は開発中のものです。
08/07/10 00:54:31 MjVgJsdw
PG系隔離スレの2大巨塔でタスク厨の押し付け合いイクナイ!
192:名前は開発中のものです。
08/07/10 05:56:13 nnoBQqoI
Google,自社開発のデータ構造化ツール「Protocol Buffers」を公開
URLリンク(itpro.nikkeibp.co.jp)
193:名前は開発中のものです。
08/07/10 07:41:02 99kxezye
>>186
【小さく審議中】
,、_,、 ,、_,、
,、_('・ω)(ω・`)、_,、
('・ω)u゚ ゚uu(ω・`)
゙uu゚( '・) (・` )uu'
゚uu゚ ゚uJ
194:名前は開発中のものです。
08/07/13 00:51:10 eBw+YtUV
素人です
つくりかけのゲームってどうやって動かしてテストするんですか?
195:名前は開発中のものです。
08/07/13 01:06:26 47vlxomf
ワタクシ ハ インクリメンタル ナ カイハツ ホウシキをとっているので
ちまちまと小規模な物を作って、それを拡張していく形になります。
例
第一段階: ウィンドウを表示する
第二段階: キャラクターを一つ表示する
第三段階: キャラクターを動かしてみる
第四段階: 飽きる
196:名前は開発中のものです。
08/07/13 01:25:52 eBw+YtUV
>>195
なんで途中までカタコトなんですか?
そういう個人規模でなくて、複数のPGで役割分担してる場合はどうするんでしょう?
197:名前は開発中のものです。
08/07/13 01:29:50 R4nPLnnD
そんなことシロウトせんでいいいよ
198:名前は開発中のものです。
08/07/13 02:53:02 lqrHuCir
動くところまで作ってからテストする
199:名前は開発中のものです。
08/07/13 03:04:31 uUrGa3AK
改めて言われるとあれだな
他にやりようないな
200:名前は開発中のものです。
08/07/13 03:23:29 eBw+YtUV
>>198
他人がつくったクラスがないと動かない場合はテストできないのでしょうか?
201:名前は開発中のものです。
08/07/13 03:29:10 uUrGa3AK
つ 単体テスト
いや出しゃばった 俺はweb系なので実情は判らん
まあロジック側は業種問わずどうグズったところで、
「何々渡したときに何々返す関数作ってー!」しか分業方法ないと思うけど
202:名前は開発中のものです。
08/07/13 03:29:54 edzJ8FGN
たぶん、作りかけってのが何処までか分からんけど
目に見えて作りかけとみれるのは殆ど完成間近なのが多いんじゃ。
プログラムの作りかけを動かす=エラーが出ないで動く なので
203:名前は開発中のものです。
08/07/13 03:32:16 edzJ8FGN
URLリンク(wiki.game-develop.com)
wikiのチュートリアル→段階的学習でもやってみては
204:名前は開発中のものです。
08/07/13 04:56:24 tw1/nxGs
>>200
そのクラスのインタフェースが分かるならその仮実装を作れば良いでしょ。
プロキシとかスタブって聞いたこと無いかな?
そもそもあなたの言っているテストとは何をどうするテストなのか、
自分でハッキリと認識出来ているのなら人に聞くような問題じゃないと思う。
205:名前は開発中のものです。
08/07/13 09:43:53 47vlxomf
>>200
もし私がプログラマなら、担当部分を動かすための
テストプログラム書いてます。
だから、それを見せてもらったら、大体どんなことができてるのか
把握できるんじゃないかと思います。
早い段階でCVSやSVNによるコード共有にも
慣れておくと幸せになれるかもしれません。
統合テストの段階になってからでないと
全体のMakefileが書けない、
リンク作業もできないのではどうにもなりません。
今のうちからコードを共有して、
常に全体がコンパイル/リンクが可能であることを
確認できる環境作りが云々、、、、、、、、
206:名前は開発中のものです。
08/07/13 09:51:14 timDAMYM
>>204
>>200は外注や営業職の言い訳で多発するんだよね。
あんなのはまともに相手するのも無駄。
「スタブ要るじゃん。 スタブ供給してくれないとコストにあわないんだよね」系で、素で言ってのけやがる。
超ウケルんですけど。
こういうのに仕事を与えないようにするのが業界の為だろ。
政治的な理由により取引継続となったら、「スタブの作り方を指導しますから、
その講習料として、スタブ作成代を相殺ですね」ぐらいしか案が無い。
・こちらはスタブなんて、要求仕様の一部で料金内。jk
・カス会社は、どちらも追加料金や有料。
・解決してなくても解決!!!!
207:名前は開発中のものです。
08/07/13 10:22:09 L3kGAfa0
>>194
作り掛けでも動くように、ゲーム全体を一枚岩ではなくバラして作る。
RPG だったら戦闘・マップ・店・イベントシーンで完全にバラしておいて、
テスト用のメニューからそれぞれ起動できるようにするとかな。
208:名前は開発中のものです。
08/07/13 10:49:52 UM30DsAY
作業分担?
全員が全体を上から下まできっちり把握した上で、
常に連絡を密にし、お互いが何をやってるのか理解しつつ、
各自が必要とみなしたら声かけてどんどん作ったり直したりしていく。
209:名前は開発中のものです。
08/07/13 11:17:51 L3kGAfa0
>>208
全員が全体を把握できるのは、せいぜい3人ぐらいまでだな。その先は
ヒエラルキー作って、パート毎に管理業務やる人間を立てないと無理。
210:名前は開発中のものです。
08/07/13 13:47:03 DAEU2DrC
趣味ゲだと3人超えのマが介在するゲーム開発って
ほとんどないしな。大半はマが1人、多くて2人で>>408方式
ツーといえばカーの黄金タッグ。あ、ああじゃいる
211:名前は開発中のものです。
08/07/13 13:48:37 DAEU2DrC
×>>408 ○>>208
212:194
08/07/13 14:07:22 eBw+YtUV
非常に参考になりました。ありがとうございます。
>>208
それ実際には各人に漏れやズレが出て手戻りが出るんで、大規模プロジェクトでは無理では
213:名前は開発中のものです。
08/07/13 14:19:00 sqmPpN2O
Cだったらmain()関数書いて実行して、デバッガ等で動き見るかな…
仕事(勿論?非ゲーム)でやってたときも、自分で単体テスト仕様書書いてたんで、
こんなやり方でもOKだったw
個人開発だったらウィンドウなりポリゴンなり目で見てわかる方から書いて、
中身を作っていくので、単体テストらしい単体テストはしないかな…
とりあえず箱を表示するとこ書いて、テストして、
動かすところを書いて、テストして、…ってのはやるけどw
214:名前は開発中のものです。
08/07/13 14:24:18 RINNRPdb
大規模が何人か明確じゃないし、作業形態もネット上だけなのか
サークルのようなものなのか会社なのかもわからないから議論が発散してる
フリーソフト作るのに主力のプログラマ2~3人と、バグ修正や機能強化の
パッチくれる人10人くらいでなら、MLとIRC使って>>208のような方針でやれてた
最初のバージョンはリリース済みで方向性が決まってたのが大きそうだ
>>212
作業するタスクを割り振りはちゃんとやって、頻繁なイテレーションと
継続的インテグレーションやるっつうのは何人くらいで破綻する?
215:名前は開発中のものです。
08/07/13 15:08:38 eBw+YtUV
>>214
1チーム10人以下で、各チームにリーダー2人ぐらいで、200人ぐらいのプロジェクトも回ってました。
素人なのでこれくらいしかわかりません。
216:名前は開発中のものです。
08/07/13 15:15:30 uaqPI4FP
>>215
プログラマの数は?
217:名前は開発中のものです。
08/07/13 15:23:34 L3kGAfa0
>>215
まぁ、プロジェクトの種類にもよるわな。勘定系とかだとデータ項目と画面の
I/O 決まってれば、各人の作業は依存が少ない(DB に仕様どおりのテスト
データ作れば良い)から、スケールしやすい。
基本的には、プロジェクト全体をいかに疎結合なパーツに分解できるような
設計をするかにかかってる。DB とかメッセージングシステム使う世界は、
そこで切れてることが多いから分けやすい。
218:名前は開発中のものです。
08/07/13 17:47:09 eBw+YtUV
>>216
150人はプログラマでした
219:名前は開発中のものです。
08/07/13 18:56:00 UM30DsAY
>>208は半分冗談、半分マジだったんだが意外と受け入れられてるw
>>218
なんの素人なんだw
ゲームでプログラマ150人規模って洋げーでも多分ないのでは。予算的に。
マジレスしますと、
小さい規模ならメインプログラマがほとんど一人で下位システムを作っちゃうし、
大きい規模なら別の部署が作るから、
「作りかけの状態でどうやってテスト・・・」という事態があんまり無いでつ
220:名前は開発中のものです。
08/07/13 21:19:15 Q/hESmSh
大規模金融システムで、SEの数ってことならありうるが
ゲームのスタッフロールにマが150人も並んでたら壮観だな
ちなみにそれなりの規模だと思われるFFXでメインプログラマが2人
サブプログラマが12人で残りは大半がデザイナー
221:名前は開発中のものです。
08/07/13 21:20:02 6QYOrVUt
ネトゲじゃねーの?
222:名前は開発中のものです。
08/07/13 22:39:48 3VGnVE92
マ150人てどんなネトゲだよ。。。
223:218
08/07/13 23:00:22 eBw+YtUV
ゲームのプロジェクトじゃないです。
詳細は言えませんが。
ゲームのテストってプログラマがCppUnitみたいの使ってできないですよね。
やはり手動でテスターがテストするんでしょうか。
224:名前は開発中のものです。
08/07/13 23:23:02 UM30DsAY
俺の知る限り、ゲーム開発では基本的にテストは無いです
単体テスト→結合テスト→受け入れテスト、みたいな流れは無い
昔ながらの職人的やり方というと聞こえは悪いですが、
衝突判定とか文字列処理部分のような仕様が明確な箇所なら
自動テストは有効だし実際にやっている会社もあるようだけど、
「ここで光がばーっと集まって、このキャラが独白を始めて、そして背景が宇宙に切り替わっていく」
みたいな仕様書があったとして、それをテストする基準がないし自動テストできません
なので大部分がデバッグチーム頼みです
225:名前は開発中のものです。
08/07/14 00:00:22 yOzfOKcB
3Dの衝突判定ライブラリを書いていたときは、単体テスト使いまくりだったぞ。
>224 みたいな場合はどうしようもないけど、表示以前のコアな部分では
単体テストも結構使う
226:名前は開発中のものです。
08/07/14 00:02:24 IEzc7ZIH
グラフィックやサウンドが絡む部分は自動化は難しいけど
ネットワーク部分やスクリプトの読み込み部分なんかは
いくらでも自動化できるっしょ
227:名前は開発中のものです。
08/07/14 00:10:58 cIaZ6JxY
一人で作ってる分には単体テストに拘る必要はないと思うな。
逆に(自分含めて)しっかり単体テストできるなら、複数PG開発も悪くないと思う。
^^^^^^^^^^^^^^^^^^^^^^^^^^^^ようするに他人のコードのデバッグは勘弁w
テンパってる人はバグ処理を後回しにしたり、他に回したがるだろうからな!
228:名前は開発中のものです。
08/07/14 12:30:06 Hnt5WQTk
(NetBSDをOSに使ってる)リコーのプリンタの開発チームは
PGだけで1500人だそうです
229:名前は開発中のものです。
08/07/14 15:33:56 xdO9+1xM
数万行の同人ソフトしか作ったことないけど、ゲームってプログラムとしては割合小規模じゃね?
乗っかってるリソースの量がとんでもないだけで。
実際、市販ソフト見てても、絶対に手が出せないというような印象はないなあ。
ゲームシステム(シーン別)、描画系、サウンド系、ツールやエディタ系と分けていけば
それほどカオスな状態にはならないイメージがあるけど。
もちろんプログラマの数の2乗程度の複雑性はあるだろうけど。
見ててもう明らかに絶望的なのは、勘定系とか電子カルテとか。
あと、それなりに腕の立つリードプログラマがいないと今時の3Dゲーム自体作りようがなくて
そいつがほとんどの重要なコード書いてしまってそう。なんとなく。
230:名前は開発中のものです。
08/07/14 15:36:32 Hy149M4+
>>229
勘定系だってそれほど変わらんよ。
231:名前は開発中のものです。
08/07/14 15:40:51 0Th48wDt
RPGみたいないろんな要素のあるゲームのプログラミングってどこから手をつけていったらいいですか?
232:名前は開発中のものです。
08/07/14 15:47:11 wxUymIt7
お好きなところからどうぞ
233:名前は開発中のものです。
08/07/14 16:22:48 Hnt5WQTk
MSXのドラクエ2も大学生が一人で全部作ったんだよね
234:名前は開発中のものです。
08/07/15 13:15:33 IiJYDS4l
RPGっていってもいまだといろんなシステムあるからな~
古典的なドラクエ初期のように2Dオンリー
チョンゲーに代表される3D使ってるクリックゲー
235:名前は開発中のものです。
08/07/15 13:29:25 Hl1v93zY
P6のゼビウスは小学生が一人で作ったんだよね
(発売時は中学生?)
URLリンク(www.ne.jp)
236:名前は開発中のものです。
08/07/16 17:02:22 WbuXgq6y
>>230
勘定系は、人数は増えるけど PM しっかりしてればカオスにはならんよな。
金回りの話なのでミスが許されず、テスト工数がやったら膨らむから、
プロジェクト管理大変だけど。
237:名前は開発中のものです。
08/07/16 17:02:59 WbuXgq6y
>>231
メモリ管理
238:名前は開発中のものです。
08/07/17 20:17:04 uAQ9zE97
>>231
要素の洗い出し
239:名前は開発中のものです。
08/07/20 02:44:36 gpI6Slf5
先人のろくにコメントもないコードの解析だけで一ヶ月ぐらいコーディングもしないってことはありますか?
240:名前は開発中のものです。
08/07/20 02:56:31 L2XNyVag
>>239
移植モノで、しかも元のプログラマが辞めて連絡取れないという条件で
一度やったことがある。二度とやりたくない。
241:名前は開発中のものです。
08/07/20 03:05:04 x+htBSIe
ソースがあるだけマシだよ
アーケード版のバイナリだけ渡されて
「これをPS2に移植してください。ソースは紛失してしまいました。」
と言った大田区の某大手ゲーム会社があったそうな。
242:名前は開発中のものです。
08/07/20 03:08:22 ZbM+kRVz
>>241
すみません… それ、たぶんウチだ orz
243:名前は開発中のものです。
08/07/20 03:39:46 18o8S9Zj
最悪だなそれ
MAMEでも進呈したほうがいいな
244:名前は開発中のものです。
08/07/20 15:36:02 gpI6Slf5
オブジェクト指向のくずれてるウンココードに出会ったらどうしますか?
245:名前は開発中のものです。
08/07/20 17:18:51 g88tpUo2
見なかったことにする
246:名前は開発中のものです。
08/07/20 17:43:16 1Zabkxz6
それ俺だな。
どうやれば良いか分からないから、手探りで書いてる(´・ω・`)
247:名前は開発中のものです。
08/07/20 22:53:25 zgBZw03q
シングルトンで作ったクラスが2つや3つもインスタンスを生成することになったら破綻しない?
248:名前は開発中のものです。
08/07/20 23:02:17 Tcsf7iZJ
>>247
各フィールドやメンバ関数がまるごとstatic宣言されていない限りは、破綻しないと思うよ。
数に制限のあるリソース(or デバイス)を取り扱ってる場合は、セマフォか何かで排他処理とかロックとかが必要になるかもしれないけど。
249:名前は開発中のものです。
08/07/20 23:02:30 USb+9tXO
どういう意味?
シングルトンが2つも3つもあるならそれはシングルトンじゃないし
シングルトンのインスタンスがさらにインスタンスを生成するようなメソッド持ってても別に破綻しないけど?
250:名前は開発中のものです。
08/07/21 01:05:54 9zclfNbN
>>247の文章が破綻
251:名前は開発中のものです。
08/07/21 14:17:23 Y7Mzeak+
コメントにシングルトンと書かれてるのに2つも3つもインスタンスが
出来てる、辞めた先輩の残した謎コードって事ですね。わかりませn
252:名前は開発中のものです。
08/07/21 18:53:57 9zclfNbN
XBOX360, PS3, Wii 売れ行きに関係なく、開発しやすいプラットフォームはどれ?
253:名前は開発中のものです。
08/07/21 18:54:50 NGr1sFSW
箱○
254:名前は開発中のものです。
08/07/21 23:51:13 yo6BY71C
箱○は個人で十分開発できるからなぁ
255:名前は開発中のものです。
08/07/22 00:00:52 grvq6f3A
箱○ 天国
Wii 普通
PS3 言わせるなw
という感じか?
256:名前は開発中のものです。
08/07/22 00:03:34 9zclfNbN
>>255
詳しく
257:名前は開発中のものです。
08/07/22 00:08:34 zCVKhHD7
お前ら本当に3機種の開発ツール使ったことあるのかとw
258:名前は開発中のものです。
08/07/22 00:21:20 inlA4ozd
なんで個人開発限定なんだよ
259:名前は開発中のものです。
08/07/22 00:35:03 88jYUtHh
XNAのことを言ってると予想
260:名前は開発中のものです。
08/07/22 02:21:06 TRIzaodv
XNAの市販ゲームが出たってニュースは前に見た気がするけど
実際どんなもんなんだろ
261:名前は開発中のものです。
08/07/22 02:44:01 kfP9Fty3
サターンのSBL,SGLしか使ったこと無い
262:名前は開発中のものです。
08/07/22 02:45:19 zCVKhHD7
360(XNA)、Wii(インターネットチャンネル)、PS3(YellowDogLinux)という話?
263:名前は開発中のものです。
08/07/22 16:12:48 k5fUsZQo
Wiiはインターネットチャンネルどころじゃない
264:名前は開発中のものです。
08/07/22 18:29:14 c7QeI/ED
ゲーム機はDirectXを使うの?
265:名前は開発中のものです。
08/07/22 18:36:04 Jekk8SUv
DirectXはMSだけ
あ、Dreamcastという例外があるか
266:名前は開発中のものです。
08/07/22 20:52:26 6od3yLDu
ゲーム機ではないが、アーケードの基盤がWindows系というパターンはあるな。
DirectXそのものを使ってるかどうかは知らないが。
267:名前は開発中のものです。
08/07/25 15:29:12 9vpYBrtF
やってみて、無理と判断され、チームを外されることってある?
268:名前は開発中のものです。
08/07/25 20:06:41 66T6bhjF
>>267
板違い
プログラマー@2ch掲示板
URLリンク(pc11.2ch.net)
269:名前は開発中のものです。
08/07/26 01:19:05 +2uolo1R
いつしかスレ違いな話題ばかりになってるな。路線復帰しようぜ。
270:名前は開発中のものです。
08/07/26 02:28:02 Esaqa0cW
アドベンチャーゲームの画面クリックやら動的に変化しまくるコマンドとかはどうやって管理してるんだね?
271:名前は開発中のものです。
08/07/28 18:13:52 9GhNVVJ3
前者は状態フラグの配列なり持っておけば十分だろ
後者はなんだ?状態フラグ読んで条件分岐すればコマンド変化はいくらでも管理できるでしょ
それともzorkみたいなやつかな。それだと構文解析が肝だろうなあ
272:名前は開発中のものです。
08/07/29 14:37:45 kHD6g876
>>271
なるほど。フラグの状態で、出るコマンドを制御すればいいのか。
サンクス
273:名前は開発中のものです。
08/07/31 18:14:30 ucHp1Nqp
メニューコマンドってみんなクラス化しているもんなのかな?
メニューオブジェクトを生成してどうこうみたいな。
274:名前は開発中のものです。
08/07/31 21:20:41 Gc2qBZ+R
ベタコードで記述したり構造体・配列のままより
クラスにしたほうがアクセスの統一をはかれる分いいかなぁ。
まーメニュー触るコードが一箇所ならどっちでもいいんでね?
ようはクラスにするしないじゃなくて
複雑さを無くしたり楽するためにどうするかだから。
275:名前は開発中のものです。
08/07/31 21:26:22 NXR7vyyv
フロントコントローラーパターンとコマンドパターンでやります。
276:名前は開発中のものです。
08/07/31 21:38:09 A+bu5iPx
メニューによるけど、FF風のメニューは別シーンにして、その中の一つ一つのコマンドは
だいたい同じインターフェースを実装してる。
277:名前は開発中のものです。
08/08/01 00:01:16 yD3o9/Uf
クラスメンバって全部privateにしてgetterでしか取得できないようにするべき?
privateにしたメンバをもつクラスを保持しているクラスから、そのprivateメンバにアクセスしたいときに
get()で呼び出すのが面倒なんだが・・・・publicならそのまま呼び出せるし
278:名前は開発中のものです。
08/08/01 00:11:49 yp70Uz6t
>>277
クラス使って日の浅い俺はset()、get()作りまくり。確かにメンドイ。
たぶん何か間違っている。
279:名前は開発中のものです。
08/08/01 00:14:41 GzWnlC6Z
>>277
俺も同じようなこと悩んでて、気がついたら両方混在してた。
「これはクラスじゃない、構造体なんだ!」
って言い聞かせながらところどころpublicにしてたりw
280:名前は開発中のものです。
08/08/01 00:22:47 z2aBgJTr
全部て
全部にgetter/setter作る意義って、メンバごとに独自処理必要な場合だろ
そういうの不要ならpublicなり言語の提供するアクセサメソッド簡略化機能とうかで構わんて
281:名前は開発中のものです。
08/08/01 00:28:14 4UGZmRTZ
排他制御や状態確認が不要ならどうでもいいかもだけど
コード書くのがマンドイだけなんじゃ?
まっしなIDEやプロパティのある言語つかうとかかな。
282:名前は開発中のものです。
08/08/01 00:32:32 GzWnlC6Z
>>280
例えば、「すばやさ」と「回避率」と「盾の大きさ」というメンバ変数があったとする。
仕様変更により、これら三つを「守備力」に統合しようとしたとき、
各メンバ変数へのアクセスが全てアクセサメソッド経由なら、
そのクラスの変更だけで終わってしまう(ごまかせる)というメリットがあるよ。
283:名前は開発中のものです。
08/08/01 00:36:38 z2aBgJTr
まて、そら元々アクセサの設計が統合可能だった場合だろ
すばやさにアクセスしても盾の大きさにアクセスしても「守備力」が変わるって設計で良いなら構わんが……
守備力を出すクラスなりが仲介して、他のパラメータを元から束ねてた場合の話って事かな。
ちょっとエスパー疲れるぞ?
284:名前は開発中のものです。
08/08/01 00:47:59 GzWnlC6Z
>>283
まあ、そういうこともあるさ(汗)
ここはお茶を濁しながら、オブジェクト間の結合を弱めましょうとか何とか言って、逃げようかな。
あと、全部アクセサメソッドつけたくなる理由は、Java beansに対応させるってのもあるな。
シリアライズしてXMLでデータを吐けるとか特典があったはず(要らない特典かも)。
285:名前は開発中のものです。
08/08/01 00:54:19 b/gVwGdZ
getterもsetterも持ってるメンバってのは、結局外から値をいじれるわけだから、
publicにした方が使う側は書きやすくでいいんじゃないの?と思うわけ。
ああ、でもsetterに値のチェックとか入れれるのか・・・・
286:名前は開発中のものです。
08/08/01 01:01:50 b/gVwGdZ
しかもget()で取得するのが配列だったりすると、
取得側で配列格納用の変数も用意しないと取得した配列の要素にアクセスできないし、
非常に手間。
287:名前は開発中のものです。
08/08/01 01:02:58 tFL87oCT
とりあえずpublicで書いていって、
気が向いたらprivateにして、
それまで直接アクセスしたるところを、
大河の流れのように涙を流しながら直せば無問題。
288:名前は開発中のものです。
08/08/01 01:07:26 b/gVwGdZ
>>287
なるほど。あまりスッキリしないやり方ですが、しょうがないですかね。
いちいちget()で呼んで、呼び側の変数のセットして使うのって、スループット高そうなのもイヤなんですよね。
289:名前は開発中のものです。
08/08/01 01:09:03 b/gVwGdZ
特にゲームだと毎フレームごとにいろんなものを描画するから、描画要素が多いとそれだけ呼び出しも増えるわけで。
290:名前は開発中のものです。
08/08/01 01:19:38 ua9U6ROu
c++での話だが速度はインライン展開されるの期待できるから問題ないし
メソッドが多くて中で使いまくるならclassで隠蔽。メソッド内でもget、set呼ぶ。
データの集合でしかなくメソッドが簡単な処理しかないならstructでpublic化かな。
コンストラクタ、コピーコンストラクタ、代入、比較演算あたりまでならstructで。
291:名前は開発中のものです。
08/08/01 01:32:56 b/gVwGdZ
>>290
こういうのって、センスが必要ですね・・・・。
ちょっと気になった事があるんですが、
自分のクラスのpublic関数が、内部で自分のクラスのprivateなメンバを使う場合、
わざわざgetterで呼び出して使う必要はないですよね?
class Foo{
private int a;
public int get(){ return a;}
public int calc(){
return get() * 2;
}
このようなcalc()の書き方に利点はあるのでしょうか?
292:名前は開発中のものです。
08/08/01 02:26:05 ua9U6ROu
getter,setterがpublicなら外部参照する可能性があるということで
内部だけで使うprivateメンバ変数と意識して区別できるとか
関数内のローカル変数と名前が被ってもメンバ変数を指してるのが一目瞭然とか。
命名規則で見分けられるようにするのが良いんだろうけどなるべくそうしてる。
293:名前は開発中のものです。
08/08/01 03:52:45 eorE7C0S
getterロボ
294:名前は開発中のものです。
08/08/01 04:12:11 gQhqelIh
メンバ変数の存在が setter/getter の追加みたいに public 部分に影響するのがおかしいんだよ。
まず public なインターフェースが決まって、その後で必要なメンバ変数を private で考えるのが筋だろ。
295:名前は開発中のものです。
08/08/01 18:37:49 YDkT93Ih
>>294
今まで作ってきたゲームの焼き直しなら、現実的なやり方だね。うん。
296:名前は開発中のものです。
08/08/01 19:02:25 m4Vy5Xwk
理想と現実はだいぶ違うよな
個人製作なら気に入らなければ壊して作りなおせるからそれでもいいけど
それにこだわって完成させられない場合が多い気がする
297:名前は開発中のものです。
08/08/01 20:43:12 mQpnHwPh
インターフェース中心の設計でプログラミングするんだったら
プライベートメンバ変数にはアクセッサを用意すべき。
単なるクラスだけでプログラムするんだったら、位置とか角度とか見たいなアクセス頻度の高い
メンバはパブリックのほうが良いかと思う。
298:名前は開発中のものです。
08/08/02 00:14:18 n2w2ONnP
ぶっちゃけ、片っ端からget/setにしたほうが、悩む時間を削減できて、完成が早まる(トイイナw
299:名前は開発中のものです。
08/08/02 00:25:25 MidBaG0Q
しかしgetやsetが乱れ飛んで読みづらくなることも
300:名前は開発中のものです。
08/08/02 06:50:04 xZ8r6Jdx
>>299
プロパティが欲しいと。
301:名前は開発中のものです。
08/08/02 11:52:40 eytLWJfu
C#はそういう意味ではスマートだなぁ
302:名前は開発中のものです。
08/08/02 23:43:30 Pnu26psa
ゲームのシーン管理ってどうすりゃいいんだろう
303:名前は開発中のものです。
08/08/03 02:53:56 DVblpxWK
シーンつったってゲームによって全然違うからな
もう少し具体的に
304:名前は開発中のものです。
08/08/03 16:40:36 HN+lqKwd
>>301
現行のゲーム機はまだC++なんだよな
305:名前は開発中のものです。
08/08/03 21:47:19 XQeDRsrL
>>302
シーンってのが何を指してるのかが微妙すぎ。
VMCに分けろじゃないけど、
Visual面だけでシーンを切り分けるのがいい時もあるし、
Dataの読み込みや各種準備の時が切り分けにてきしてる場合もある。
そうじゃなくて、Loopを二つぐらい回しながら、
片っぽでバックの処理こなしつつリアルタイム進行で、
残りで、Interfaceを回してくタイプとかもあるし、
結局どんな処理が必要などんなゲームなのか?
どれを止めると不味いか、どれは止めても復帰させれば問題ないか?
とかによると思う。
306:名前は開発中のものです。
08/08/03 21:52:25 qGD4tU/f
シーンて、どのゲームも
タイトルー本編ーゲームオーバ
てな感じジャンか。細かいところは違えども。
ゲーム全体の状態遷移をどうするか聞いてんじゃないの?
307:名前は開発中のものです。
08/08/03 22:00:54 0ZCECk8O
おいどんのシーンは一種のタスクシステム(笑)で、
ウィンドウ管理、イベント管理、衝突判定、FPS調整、各オブジェクト行動などがセットになっとるでごわす。
シーンの切替えはこのセットをまるごと取り換える作業なのですたい。
308:名前は開発中のものです。
08/08/03 23:21:42 HN+lqKwd
FFとかのムービーシーンの管理はどうやればよかですたい?
309:名前は開発中のものです。
08/08/03 23:31:02 +gPnPllx
プロダクションだとファイルサーバ置いてモデル素材とか徹底管理するみたいだね。
Digital Anime Artwork(1/2)って本が内情ノウハウ溢れてて参考になった。
ほんとフォルダ分けの徹底とワークフロー統一にどこも頭悩ませてるようだ。
いまどきだとプロジェクションマップとか多用する規模の物も多いしな、美術、撮影、合成と
310:名前は開発中のものです。
08/08/03 23:31:41 +gPnPllx
あれ? ここCG板じゃねえじゃん。
うわ俺凄く恥ずかしいマジレス?
311:名前は開発中のものです。
08/08/03 23:31:45 0ZCECk8O
>>308
ムービーシーンなんて作ったことないからわからんですたい。
脳内妄想では、ムービーを再生できるオブジェクトが登録されてるシーンに移行するだけですたい。
312:名前は開発中のものです。
08/08/04 17:38:42 OcXTlg2n
うさんくさか博多弁多かたいね。なんかぐらぐらこく
馬鹿にしないでください><
313:名前は開発中のものです。
08/08/04 23:28:56 Vp8LYTR0
>>312
こらあげにまっことすまんかったぜよ。
314:302
08/08/04 23:40:39 OTznAvMd
>>306
そうそうそんな感じ。
1シーンの処理は画像やその他のデータの読み込み、メインループ、
次のシーンに移る前の要らないデータの破棄のような感じにするつもり。
前のシーンに戻れるように階層構造を使ったりしたら難しくなりそう。
315:名前は開発中のものです。
08/08/07 02:18:10 iFGNdN4x
しーん…
316:名前は開発中のものです。
08/08/07 15:44:15 J5sJkFaL
【 審議中 】
∴∵
317:名前は開発中のものです。
08/08/24 00:35:34 kCbI2Ziv
(審議が長引いています。今しばらくお待ちください)
318:名前は開発中のものです。
08/08/27 21:03:35 pp3RgERm
キャラクターの状態って、どうやって実装してますか?
例えばマリオなら、
enum { SMALL, BIG, FIRE };
enum { STAR, NOT_STAR };
のように、直交した状態ごとにenumで列挙して、ifで場合わけするのでしょうか?
stateパターンでは無理???
319:名前は開発中のものです。
08/08/27 21:31:52 tgwWcjRq
それだけだとモーション中とかが実装できないよね
FCマリオならそのenumに加えて、ゲームステータスとして「巨大化アニメ進捗」を示すカウンタ用意すれば十分だと思う
ステータス変化中に他の画面止めていいのか、それとも無敵時間とか起きながら遷移中にも時間は動かすのか前提がもうちょい欲しいかも。
その辺の細部を徹底的に見つめていくと、
適するパターンがあるのか、それとも独自な設計選ぶべきかが見えてくるんじゃないかな。
マリオにしてもSFCのヨッシーとかFC版3での画面奥行き潜りとか、色々
実装したい事を見据えて行くと変数の数やステータスのまとめ方が見えて来るだろうしね。
320:318
08/08/28 00:48:01 Z+eKsEJG
>>319
いろいろ考えないといけない事多いですね。
この手のものを実装する方法として、stateパターンとenumとifで場合わけの他に何かあるんでしょうか?
状態の種類と数が複雑になってくると、enumとifを使う方法しかない気がしてきます。
ifで場合分けって、コードが汚く感じてあまり好きじゃないんですよね。
でも、こういうケースでは、これがベストなのかなぁ。
321:名前は開発中のものです。
08/08/28 01:16:45 q3w3U78u
>コードが汚く感じてあまり好きじゃないんですよね。
好みと言うより仕方がない気も。
よくわからんなら下手に「なんとかパターン使うべきなのかな!」って
考えるより、ベタで汚いながらも「いじりやすい」単純なコードからはじめてさ、
あとはめくらめっぽう試した方がいいよ。
ifでの場合分けさえ、インライン展開される事を知ってるかどうかで汚くても使う訳で。
で、知ってる人にはそういうのやら三項演算多用した分岐の方を「美しい」って言っちゃったりするからねw
322:名前は開発中のものです。
08/08/28 01:34:35 O/+Qqs/2
最初ってそういうの考えちゃうよな
世間じゃどういうのが正しいんだろうとか考えて自分のコードが全然すすまねぇ
今ではなんだかんだで破綻するギリギリまで「動けばいいや」の精神で書いてる
仕事じゃないからこそだな
323:名前は開発中のものです。
08/08/28 03:20:26 tq3ymPlL
関数ポインタで飛ばせば見た目は良くなるね。
可視性に問題が出てきそうで自分では使ってないけど。
324:名前は開発中のものです。
08/08/28 09:12:41 y2qhH8VC
そこで goto ですよ
325:名前は開発中のものです。
08/08/28 10:11:26 MS2hHN8x
某シューティングツクール的にはそもそも「状態」という概念が無くて、
全く別のオブジェクトを「発射」して、自分を「消滅」させることで状態の変化を表現してた。
326:名前は開発中のものです。
08/08/28 11:46:09 Qlb2/Pnm
javaは関数ポインタ使えないんだ・・・・
327:名前は開発中のものです。
08/08/28 11:57:21 MS2hHN8x
>>326
Javaの場合は、状態クラスを作って、それを持つようにすればいいんだよ。
328:318
08/08/28 17:59:10 Z+eKsEJG
>>321,322
汚いコードって書き直したくなってくるんですよね。
綺麗に書けないと達成感がないというか・・・。
また、本などで知識をつける毎に、今まで書いてきたコードが正しくない書き方だったな~と思うことが多くて(プログラミング始めた頃はダライアス継承とかやってたw)。
完成させることが第一と思っていてもついつい・・。
>>323,327
stateパターンですよね?
>>325
そういう方法でやってるところもあるんですね。
でも、オブジェクトのコピーが効率悪そう。
329:名前は開発中のものです。
08/08/28 18:35:54 CuTVRbF+
自分ひとりで考えても、本を読んでも出てこない、他人の眼に触れさせなければ見えてこないものもある。
それよりも自分の達成感の方を優先したいならそっちを選べば良いさね。
つか、コードの正しさ、綺麗さ、効率の良さ、読みやすさってどういうものだとして使ってる?
330:名前は開発中のものです。
08/08/28 19:03:37 Jt4Hw7jN
むしろ可能な全ての表記法を試す勢いで!
次のプログラムからは気に入った表記で。
昔の事は忘れましょう。
331:名前は開発中のものです。
08/08/28 19:43:21 MS2hHN8x
人が書いたソースを読むのって勉強になるけど、読む気が出ない……
>>328
>stateパターンですよね?
パターンのことはよく知りませんが、ポリモーフィズム(多態性)です。
332:名前は開発中のものです。
08/08/28 20:37:26 xedxyhWb
>状態という概念が無い
敵が爆発する瞬間とかだとやっちゃうなあ……。効率悪いんだろうか。
333:名前は開発中のものです。
08/08/28 21:28:28 MS2hHN8x
>>332
他に良い方法があるならどうぞ。
MHz世代のCPUで通用してた方法だから、致命的な効率低下があるとは思わないよ。
334:318
08/08/28 21:30:31 Z+eKsEJG
>>329
コードの正しさ、綺麗さの2つは曖昧な表現で使うべきではなかったですね。
私はコードには、実行効率、保守性、読みやすさの3つがあると思っています。
今問題にしてるのは、主にこのうち後者2つです。
ただ、読みやすさは人それぞれなのかもしれません。
>>331
状態毎に仮想関数をオーバーライドするのが、まさにstateパターンですね。
335:名前は開発中のものです。
08/08/28 21:59:24 O/+Qqs/2
保守性も読みやすさもifとenumにしたからと言って損なわれるものでも無いと思うけど何を悩んでるの?
336:名前は開発中のものです。
08/08/28 22:18:17 qtCAmqfQ
ダライアス継承ってどんな継承?
337:名前は開発中のものです。
08/08/28 22:22:03 xedxyhWb
>333
爆発オブジェクトを自身と同じ場所に生成して、自身を削除する
って認識で合ってる?
338:318
08/08/28 23:04:17 Z+eKsEJG
>>335
保守性については、仕様変更により、状態を追加したり、廃止したりする時、影響する部分を探し出すのがめんどくさいというかすっきりしないというか。
読みやすさは個人的な好みかもしれません。
保守性、読みやすさともにstateパターンの方が好きです。
でも、直交した状態群が複数あるとき、stateパターンで実装するのが難しそうなので悩んでいました。
うまい方法が見つからなければ、enumとifでいくつもりでした。
>>336
ダイアモンド継承の方が一般的な呼び方なのかもしれません。
仮想継承を使うことによって、継承グラフが菱形になるやつです。
339:名前は開発中のものです。
08/08/29 00:44:03 hcEje8O4
ダライアス継承なんて初めて聞いたなあ
英語だと Multiple Inheritance あるいは Diamond Inheritance と言うようだが。
あとダライアス(Darius?)はペルシャ人の名前のようだ。
まゆに唾つけて聞いておこうかな
340:名前は開発中のものです。
08/08/29 00:50:36 rESH+j3C
ダライアス継承でググってみても勘違いで質問してる奴にしか引っかからないな
デザパタへの無駄なこだわりとか、初心者がなんか変な用語がいっぱい並んでる本だけ読んで惑わされてるだけに見える
341:名前は開発中のものです。
08/08/29 02:39:33 VLtb7ZED
Multiple Inheritance (多重継承) と Diamond Inheritance (ダイヤモンド継承) は
違う概念だが...というかダライアスっていうとシューティングゲームしか思い浮かびませーん
342:名前は開発中のものです。
08/08/29 06:43:42 gdp2Jatd
URLリンク(ir9.jp)
343:名前は開発中のものです。
08/08/29 10:26:08 ESvglHwU
>>337
合ってると思うよ。
問題があるとすれば、状態を変化させるだけの場合、ライフとかのパラメータ引き継ぎどうすんねんとか。
そこんとこがツクールVじゃ無理だった。(最近の(95とか)はシラネ)
344:名前は開発中のものです。
08/08/29 14:31:33 UaA8GGvx
>>341
>ダライアスっていうとシューティングゲームしか思い浮かびませーん
ダライアスの面セレクト画面が菱形継承図っぽいところから生まれた俗称だったりしてw
345:名前は開発中のものです。
08/08/29 14:34:13 nV9hYRuE
>だったりしてw
いやだったりしてっつーかそれしかなくね
346:名前は開発中のものです。
08/08/30 13:56:18 vqGqt03L
ダイヤモンドが2個も3個もあるような継承のことか。
C3 MRO の解説でしか見たこと無いが。
347:名前は開発中のものです。
08/08/30 14:18:00 gGJd0yLw
ドラえもん 「ことわざゲーム」
これはいいアニメ。 ... ドラえもん 藤子F不二雄 アニメ
ドラえもん後期 ドラえもん本編 教育アニメ コメント非
表示推奨 緑 ...
URLリンク(ex-co-jp.8866.org)
348:名前は開発中のものです。
08/08/30 14:23:18 h7pQaJrI
なんかあちこちで見かけるな。これ以上ないってくらい、明らかにヤバいリンク
349:名前は開発中のものです。
08/08/30 14:32:04 hoYQeFVI
夏休みも終わりって事さw
350:名前は開発中のものです。
08/08/30 14:40:33 vqGqt03L
Bot使った宣伝書き込みかなぁ
351:名前は開発中のものです。
08/08/30 15:36:27 h7pQaJrI
なんかのマルウェアって聞いたが
352:名前は開発中のものです。
08/08/31 15:40:22 5jP5dBFC
A has B B has C C has Dのようなクラス構成で
Aで作ったEをDで使うために、Aから呼び出したB、Bから呼んだC、Cから呼んだDのそれぞれの関数の引数に
Eを渡していくのはいいのかな?
353:名前は開発中のものです。
08/08/31 15:45:26 eaWcmeF0
いいんじゃね。
354:名前は開発中のものです。
08/08/31 15:47:56 fQJxWw7j
別に悪くはないと思うよ
Eの役割によってはABCD全てからアクセスできる領域に置くのもアリかもね
なんにせよその構成だけじゃいいとも悪いとも言えない
355:名前は開発中のものです。
08/08/31 15:54:48 5jP5dBFC
>>353
>>354
サンクス
AからDは直接呼べないけど、Eを使うのはDなので、
AからDにEを渡したいけど、それだけのために間にクラスでEをたらし回しにするのがどうかな~と
思ったんだよね
356:名前は開発中のものです。
08/09/02 03:29:08 m23QvXa7
このスレにUMLで図描いて貼っても、きっと誰かが見る前に流れて消えてしまう罠
357:名前は開発中のものです。
08/09/02 03:31:07 m23QvXa7
>>352 >>355
コンポジッションの視点、あるいはチェインズ・オブ・レスポンシビリティの視点で言えば、
それは普通にアリ。 っていうか、>>354 も言ってるけど、その構成だけだと(意図する形の意味づけが見えないと)
本当はいいとも悪いとも言えないが。
358:名前は開発中のものです。
08/09/02 17:16:20 BpB/a+5N
CarクラスはTireクラスを4つ持っているとして、
TireクラスもCarクラスを持っていてCarクラスの関数を使えるという設計はいいんでしょうか?
359:名前は開発中のものです。
08/09/02 17:22:14 Kf1ObPTz
コールバックしたいならインターフェース化してポインタ渡すとよい
TireクラスでCarクラスを生成するとかなら論外
360:名前は開発中のものです。
08/09/02 17:30:36 BpB/a+5N
TireクラスにCarクラスのポインタを持たせて、Tire生成時とかにCarクラスのオブジェクトのポインタを渡せば
いいということでしょうか?
361:名前は開発中のものです。
08/09/02 17:36:03 NydWLubY
>>360
Tireが常にCarのポインタを持っている必要もなくて、
CarがTireのメソッド呼び出し時に必要なポインタを渡すのもアリだと思う。
362:名前は開発中のものです。
08/09/02 17:40:44 IXiySr/S
タイヤが車に関心があるってどういう状況?
363:名前は開発中のものです。
08/09/02 17:42:28 NydWLubY
「パンクしたよ」って知らせてくれるんじゃね?
364:名前は開発中のものです。
08/09/02 17:44:29 IXiySr/S
なるほど
365:名前は開発中のものです。
08/09/02 19:17:31 gmtfIbjx
それ車が「パンクしたか?」メソッド持ってるんじゃダメなの?
366:名前は開発中のものです。
08/09/02 19:20:27 IXiySr/S
車が、常に「パンクしたか?」ってタイヤに聞くの?
367:名前は開発中のものです。
08/09/02 19:24:40 gmtfIbjx
うん
パンクに限らずあらゆる故障具合をウェルネスシステムが監視しててそいつに聞けば全部OKみたいな
車のメソッドじゃなくなったけど
368:名前は開発中のものです。
08/09/02 19:38:46 IXiySr/S
メディエーターみたいなの?
369:名前は開発中のものです。
08/09/02 20:44:39 F4HrtZLF
>>366
実際のTPMS(タイヤ空気圧監視システム)はそういうものだよ。
ホイールに取り付けられたセンサーモジュールが車両本体側装置と一定時間毎に無線交信してる
具体的には、本体が一定時間毎に圧力値を問い合わせ。センサーモジュールが圧力値を返してる
ポーリング処理。
float _pressure = m_wheel[n]->GetPressureState();
370:名前は開発中のものです。
08/09/19 19:13:57 FmM/zRja
ほしゅ
371:名前は開発中のものです。
08/10/05 14:32:14 tMuqv+yj
このスレはJavaでも大丈夫なの?
372:名前は開発中のものです。
08/10/05 14:52:40 v7IsXRIY
>>371
質問内容の分野がよくわからないなら、以下へどうぞ。
【初心者】スレを立てる前にココで質問を【Part17】
スレリンク(gamedev板)
373:名前は開発中のものです。
08/10/05 17:40:56 6np9SFhP
>372がエスパーすぎる
374:名前は開発中のものです。
08/11/01 11:27:07 g//jQFBy
データ(アイテムとかマップとか)ってどうやって作ってます?
エクセルで打ち込んでcsvで保存?
375:名前は開発中のものです。
08/11/01 12:46:01 YmfIaKZ8
別にそれでいいし
専用にエディタ作ってもいいし
ありもので済ませてもいいし
俺はPlatinum map editor使ってるし
376:名前は開発中のものです。
08/11/01 12:58:04 g//jQFBy
>>375
マップに関しては、フリーのエディタがあるんですね。
規模が小さいゲームなら、アイテムとかはエクセルが効率いいのかな。
377:名前は開発中のものです。
08/11/01 16:47:28 NlVHrve1
既存のマップツールは便利なんだが、結局そこから独自形式へのコンバータを作ってる。
378:名前は開発中のものです。
08/11/02 08:08:32 JeGt0JB9
海岸線自動生成とかやってくれるエディタあるっけ?
379:名前は開発中のものです。
08/11/02 09:02:07 i1X6CLvS
>378
エディタでやるの?
380:名前は開発中のものです。
08/11/04 18:29:40 CIBt14+U
機能としてはエディタ側じゃね?
381:名前は開発中のものです。
08/11/06 00:16:08 46fvhfrF
ツクールで海岸線をシフト+右クリックすると分かる
382:名前は開発中のものです。
08/11/11 20:24:09 rtOtwyEd
最近Gofのデザインパターンを読んで、目から鱗が落ちまくった。
今までぐだぐだやってたのが全部無駄というか馬鹿だったのに気づいてしまった。
他の初心者がこんなことが起きないように、勝手にメモ。
1、相互参照は可能ならば避ける。どちらかが一方的に知り、メソッドでその都度渡すほうがいい。
→クラス図の関連の矢印の向きは重要。関連が1方向なら、関連される(変数として保持される側の)クラスの再利用が容易。
→相互参照関係にあるクラス同士を、一方的な関連にすることは大抵の場合可能なはず。(関連する側が冗長になるが。)
2、再利用を考えたフレームワークは(初心者は)作らない。
→再利用のための部品を作る程度にとどめるのがいい。フレームワークの設計は正直拡張性を考え出すと難しすぎるらしい。
他に鉄則があったらだれか教えてください orz
383:名前は開発中のものです。
08/11/12 01:30:10 LsEQ4TEa
相互参照すると、クラス開放時にお互いが争ってメモリリークすんだよな
クラスA「Bさん、お先にどうぞどうぞ」
クラスB「いえいえ、ここはAさんがお先に」
クラスA「どうぞどうぞ」
OS「おまえら、どっちもさっさとイケ!」
ピー…
384:名前は開発中のものです。
08/11/12 09:02:45 QWqH0Tgg
> Gofのデザインパターン
GOF本でわかったならよいけど、退屈でわからない人は
First Headの本オススメ
Head Firstデザインパターン―頭とからだで覚えるデザインパターンの基本: エリック フリーマン, キャシー シエラ, エリザベス フリーマン, バート ベイツ, Eric Freeman, Kathy Sierra, Elisabeth Freeman, Bert Bates, 佐藤 直生, 木下 哲也, 福龍興業: Amazon.co.jp: 本
URLリンク(www.amazon.co.jp)
URLリンク(images-jp.amazon.com)
385:名前は開発中のものです。
08/11/12 23:23:14 hxIHNKys
ライブラリを作るとして、名前空間とクラスはどのように配置するのがいいでしょうか。
たとえば、ある単純な機能のクラスがいくつかあります。
これを集約してより大きな機能のあるクラスがライブラリ内で作られている場合、
1、大きなクラスをネスト先の名前空間に入れる。(HogeLibrary.Composite)
2、小さなクラスをネスト先の名前空間に入れる。(HogeLibrary.SmallComponent)
3、そもそもが間違い。同一名前空間に配置する。
どれが適切でしょうか?
386:名前は開発中のものです。
08/11/13 21:08:31 3NMFClPL
>>385
boostでは、ライブラリ利用者が直接触る必要ないものはdetailっていうネームスペースに入れてあるね。
ってそういう話じゃない?
387:名前は開発中のものです。
08/11/14 01:18:47 USS/q0/d
>>385
名前空間を分けるメリットが見当たらなければ分けないほうがいいでしょ。
388:名前は開発中のものです。
08/11/16 02:04:27 OW89wflh
ライブラリ利用者の立場にたって、
どうなってると使いやすいかを考えて臨機応変に決める。
389:名前は開発中のものです。
08/11/19 20:47:58 oq/eqnIP
>>382-384
まだ読んでいない俺には勉強になったthx
390:名前は開発中のものです。
08/11/20 09:17:22 jP0yKBYe
>>384
のFirst Head本は、読み物形式で
悪いコードをよいコードに変更していきながら、解説しているようになっているので、
GOF本よりかなり読みやすいよ
ただ、いくつかのパターンが省略されて適当解説になっているので、注意。
適当になってる後半部分も解説されていたらかなり神本だった
(まああのペースで全部網羅すると、値段とページがすごいことになりそうだがw)
391:名前は開発中のものです。
08/11/30 20:02:56 GlMxgFAf
すいませんというか疑問です。
特定の条件を満たしたら処理(入力の読み取り)を行う、という作業を内部で行う関数を作ろうと思ったのですが、疑問がいろいろ出てきました。
(1回のループの中に複数この関数を配置して、どこかで実際に実行する、というような使い方を想定してます。)
1、この関数を採用する場合、名前の付け方
Polls()、CanPoll()、IsPolling() …主目的が『必要ならば読み取る』なので何かしっくりしない。
2、何かよりよい代替の設計があるだろうか
何か設計が変な気がする、が、なぜそう思うのはわからない。
どなたか導きをお願いします
392:名前は開発中のものです。
08/11/30 20:03:41 GlMxgFAf
なんかいっぱい改行が入ってるorz
393:名前は開発中のものです。
08/11/30 20:44:16 O5396ILY
>>391
関数の名前は内部での処理なんて割とどうでもいいので、
とにかくその関数の意味(挙動)がわかる名前にしたらいいんじゃね。
ちなみにJavaの場合、キーボードやマウスからの入力によってイベントが発生し、
そのイベントによって適切なリスナーの関数が起動されます。
プログラムの本流が直接読みに行くことなんてしません。
394:名前は開発中のものです。
08/12/02 23:03:37 QPPOGJkH
>>393
気持ちが悪かったから、結局色々こねくり回して何とか別の方法で実装しました。
DirectInputのBufferedは偉大ですね、と。
395:名前は開発中のものです。
08/12/03 00:00:25 QPPOGJkH
ついでにスレを読み返してメモメモ、と思った情報をまとめてみた。
コルーチン、マイクロスレッド、ファイバ
>>145,>>146,>>162,>>164
楽だが応用性のないありがちな実装
>>159,>>160
分業とデバッグ
>>194-213
ADVの画面クリックとか
>>270,>>271
メニュー画面の管理とかシーン管理とか
>>59-71,>>207,>>273-276>>302,>>305-314・・・VMCはたぶんMCVのことだよね?
状態管理とか
>>318-325
priateとgetter、setter
>>277-301
設計Tips
>>352-357,>>358-367,>>382-384
396:名前は開発中のものです。
08/12/13 14:29:53 lcU0tpK0
ゲーム開発論を語るスレを立てようと思っていたんですが、すでに似たようなスレがあると聞いて相談にきました。
このスレがあるので必要ないのでは?という意見があり、新スレを立てるべきかどうか迷っています。
ご意見頂けないでしょうか?
↓ゲーム開発論スレ要望の経緯
スレリンク(gamedev板)
KONAMI、スクエニ、セガ、バンナム、コーエーの大手5社がゲーム開発現場の未来を再び討議
「5年後のゲーム開発現場を考える~ゲーム会社技術開発の現場から2~」
URLリンク(game.watch.impress.co.jp)
「Gears of War」はいかにして生まれたのか。Cliff Bleszinski氏が語る,有効なゲーム開発プロセス
URLリンク(www.4gamer.net)
Agile型開発でのゲームデザイン
URLリンク(www.4gamer.net)