トップページ⇒tech
1001コメント247KB

ゲームプログラムなら俺に聞け9

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2010/08/15(日) 14:55:38
ゲーム開発に関してプログラムの観点からアプローチするスレッドです。
一応質問も受け付けます。
ソースをうpするとアドバイスがもらえるかもしれません。
なお、このスレの内容は鵜呑みにしないこと。

【前スレ】
ゲームプログラムなら俺に聞け8
http://hibari.2ch.net/test/read.cgi/tech/1278304182/

【過去スレ】
ゲームプログラムなら俺に聞け
http://pc12.2ch.net/test/read.cgi/tech/1230890476/
ゲームプログラムなら俺に聞け2
http://pc12.2ch.net/test/read.cgi/tech/1247292664/
ゲームプログラムなら俺に聞け3
http://pc12.2ch.net/test/read.cgi/tech/1251324391/
ゲームプログラムなら俺に聞け4
http://pc12.2ch.net/test/read.cgi/tech/1255833802/
ゲームプログラムなら俺に聞け5
http://pc12.2ch.net/test/read.cgi/tech/1267290018/
ゲームプログラムなら俺に聞け6
http://pc12.2ch.net/test/read.cgi/tech/1269578438/
ゲームプログラムなら俺に聞け7
http://pc12.2ch.net/test/read.cgi/tech/1274521960/
0153デフォルトの名無しさん2010/08/22(日) 02:10:48
>>150
言語の知識抜きでゲームを作るというとツクールの類ですかね
プログラムの話をするム板にふさわしい発想でとてもいいと思います
0154デフォルトの名無しさん2010/08/22(日) 02:11:30
>>150
それで作れるワケが無い。ただのコピペじゃ限界が直ぐに見える。
ちょっとコピペ元と違うことするだけで使い物にならない。

そんなもん作るくらいならちょっとしたコンソールゲーム作れる方がまだマシ。

>>152
最強のジャンケンゲーでも作るなら 1 日かもしれないが。。。
0155デフォルトの名無しさん2010/08/22(日) 02:12:35
おまえら容赦無いなw
0156デフォルトの名無しさん2010/08/22(日) 09:44:13
一日がどうかって別にどうでもいいが
>今の時代に1人でゲームが作れませんなんてプログラマが業界に入れるわけ無いだろ
これは確実。新卒ならまだしも
0157デフォルトの名無しさん2010/08/22(日) 10:57:17
また確実とか適当なことを
0158デフォルトの名無しさん2010/08/22(日) 11:05:25
ひとりでゲーム作るってどの程度のゲーム指してるのか全然わからんよね
0159デフォルトの名無しさん2010/08/22(日) 11:12:16
新卒だったら言語の知識がある程度ありゃこっちで仕込んでやるって会社はごく普通だろ。ただしブラックを除く
0160デフォルトの名無しさん2010/08/22(日) 11:14:24
>>156
ゲームじゃなくてツール専門で作りたいって言って入ってる人もたまにいるんだぜ
0161デフォルトの名無しさん2010/08/22(日) 12:58:00
今の時代に1人でゲーム作れるような優秀な学生はゲーム業界なんてこねーよ。
そもそもプログラマにならない。情報系の学部どこもボロボロじゃないか。
ベーマガやらMSX-FANやらOh!Xやら出てた頃とは違うんだ。

優秀な若者が自分の業界に来なくなったのを「最近の若者は」という人がたまに居ますがね。
他にもTwitterでゲーム業界行くか迷ってる学生に絡んでたどこぞの企画とか。ちょっと勘違いしている。
俺ら斜陽産業なんだから。
0162デフォルトの名無しさん2010/08/22(日) 13:07:10
この業界なんでこんな暗いイメージしかでてこないん?
0163デフォルトの名無しさん2010/08/22(日) 13:13:59
他業種でプログラマは活躍できるよ。
0164デフォルトの名無しさん2010/08/22(日) 13:14:59
いまどきコンピュータを使わない分野なんかどこにも無いしね。
プログラマはあらゆる分野でエキスパートになれる。
0165デフォルトの名無しさん2010/08/22(日) 13:17:27
ゲーム以外のプログラマは技術職じゃない。
0166デフォルトの名無しさん2010/08/22(日) 13:24:22
チラシの裏にでも書いてろ
0167デフォルトの名無しさん2010/08/22(日) 13:28:31
ITのプログラマは1年に5000行もプログラムを書かない
0168デフォルトの名無しさん2010/08/22(日) 13:29:15
1行100円
0169デフォルトの名無しさん2010/08/22(日) 13:30:27
仕様を考えたりする人って神なの?
0170デフォルトの名無しさん2010/08/22(日) 13:36:06
うん
0171デフォルトの名無しさん2010/08/22(日) 13:43:11
そして同時に悪魔でもある
0172デフォルトの名無しさん2010/08/22(日) 13:43:38
業務系は
クライアントから聞き取りをして(←実はココが一番時間がかかる)
仕様書を書いてそれにOKを貰った時点で仕事の9割が終わってる
あとはその仕様書にしたがってコードを打ち込むだけ
後で仕様書外のことをクライアントが言い出したら別期間別料金を発生させればいい
0173デフォルトの名無しさん2010/08/22(日) 14:01:41
業務系じゃなくてゲームだけど・・・
0174デフォルトの名無しさん2010/08/22(日) 14:02:37
さっきから誰も聞いてないのに業務語りしてる子はなんなんだ
0175デフォルトの名無しさん2010/08/22(日) 14:15:24
最近基本情報を取得した高校3年生です
0176デフォルトの名無しさん2010/08/22(日) 14:16:53
なんか情報処理試験って内容が業務系に傾いてるよな・・・
やっぱ中の人がNTTデータとか出身の人なんだろうか?
0177デフォルトの名無しさん2010/08/22(日) 14:20:55
経産省だと富士通からの天上がり多そうだw
0178デフォルトの名無しさん2010/08/22(日) 15:02:36
どっちかっていうとゲームプログラムのほうが特殊
0179デフォルトの名無しさん2010/08/22(日) 15:05:08
業務系ってプログラミングというよりただの作業って感じじゃん。
だから業務系はプログラミングに含めるべきじゃないと思う。
0180デフォルトの名無しさん2010/08/22(日) 15:07:17
必要なプログラマの数は業務系の方が圧倒的に上
本職のマかどうかは別として
0181デフォルトの名無しさん2010/08/22(日) 15:07:39
だが世の大半のプログラミングは業務系なので
書籍とかも業務を意識してる物がほとんどだ
0182デフォルトの名無しさん2010/08/22(日) 15:20:34
業務系は学ぶことが少ないので多くの書籍を必要としない。
0183デフォルトの名無しさん2010/08/22(日) 15:46:27
ここって具体的なゲームプログラムの話になるとあんま盛り上がらないyおな
0184デフォルトの名無しさん2010/08/22(日) 15:58:07
オンラインゲームのプロトコルにMessagePackってどう思う?
0185デフォルトの名無しさん2010/08/22(日) 16:08:14
ゲームプログラミングってクラス間の結合強すぎ
0186デフォルトの名無しさん2010/08/22(日) 16:10:16
「これをやったらゲームプログラム」なんて定義があるわけじゃないからなぁ
ゲームプログラムなんて
手元にあるリソースと求められてる結果を
どんなインチキを使ってでも結びつければいいだけの物だ
ある程度のノウハウは有るにはあるが
0187デフォルトの名無しさん2010/08/22(日) 16:11:10
一回作ったクラスを別のゲームのプログラムに流用することがないんだからそれはべつにいいんじゃね
クラスの独立性を高めるのってライブラリ的に使えるようにするためでしょ
0188デフォルトの名無しさん2010/08/22(日) 16:16:32
>>185
それは設計がヘボだからだよ
とは言ってもゲームプログラムってどういう仕様が入るか分からんから適切な設計をするのって難しいけどな

>>187
ゲームプログラムに関して言えば、結合を弱く作るのは変更に強くするためだなあ
0189デフォルトの名無しさん2010/08/22(日) 16:17:44
>156
どんなゲームを作れればいいんだ
パックマンやスペースインベーダーじゃダメだろ
かといって最新のマリオやゼルダを個人で作れるようになってから就職しようなんて思ってたら10年単位でかかるぞ
0190デフォルトの名無しさん2010/08/22(日) 16:19:36
オプーナ
0191デフォルトの名無しさん2010/08/22(日) 16:33:36
>>189
その中間でいいじゃん 初代マリオやスーファミマリオレベル
まあ後は会社が選ぶけど
0192デフォルトの名無しさん2010/08/22(日) 16:37:24
>パックマンやスペースインベーダーじゃダメだろ

このセリフはパックマンやスペースインベーダーを作ってからなら言える
0193デフォルトの名無しさん2010/08/22(日) 16:44:21
既存のゲームのパクリだったら
どうしても比べられちゃうしよっぽど出来がよくないと評価されない

単純なものでいいからちゃんとゲームとして成立してるものの方が良い
よくFlashゲームでルールは簡単でグラフィックもしょぼいのにやけに中毒性のあるゲームあるだろ?
そいうのを自分で考えられて形にできる人なら大手は無理だけどそこそこの所ならいける
0194デフォルトの名無しさん2010/08/22(日) 16:49:47
オリジナルゲームが作れるかはプログラマじゃなくてクリエイターの分野じゃね?
プログラマなら既存のゲームの模倣品を作れるかどうかだけじゃね?
まさかゲーム会社入社後も1人で全工程作るわけじゃあるまいし
プログラマが勝手にゲームにオリジナル要素加えるなんてありえないだろ
0195デフォルトの名無しさん2010/08/22(日) 16:52:00
模倣品作れる程度なら新卒と派遣で十分ですから
0196デフォルトの名無しさん2010/08/22(日) 16:54:30
言われた事だけしかできないゲームプログラマなんて要らない
それって誰でも良いってことじゃん
0197デフォルトの名無しさん2010/08/22(日) 16:55:54
お前らみたいな手を動かさないゲームプログラマはいらない
0198デフォルトの名無しさん2010/08/22(日) 17:06:33
模倣品もちゃんと作れない人は多いよ。
むしろ仕様も無いのに同じものが作れるのはある意味で天才。

言われたものを100%作れるのも実は天才の部類だと思っている。

オレも含めてだいけど、言われたミッションを
100%守れる人はどのくらいいるのであろうか。
0199デフォルトの名無しさん2010/08/22(日) 17:09:56
仕様と素材は与えられてひとりで作れれば十分優秀だよねぶっちゃけ
0200デフォルトの名無しさん2010/08/22(日) 17:35:43
作れる作れないの前に
会社にいきたくない
0201デフォルトの名無しさん2010/08/22(日) 17:47:19
じゃあゲームの前に会社を作ろうか
0202デフォルトの名無しさん2010/08/22(日) 17:47:41
気が合いますね、俺もだよ。
いま会社だけどなw
0203デフォルトの名無しさん2010/08/22(日) 18:09:11
おれならパックマン作らせてコード見るね。
3Dの適性以外は大体わかる。
0204デフォルトの名無しさん2010/08/22(日) 18:35:02
コードはさほど重視しないなぁ
どんなにきったなくても1つのゲームとして完成してるかどうかを見る
解説がないと分からないような中途半端な未完成品を持ってきたら
問答無用で蹴るかしょうがないから中身を見て判断するが
0205デフォルトの名無しさん2010/08/22(日) 18:51:30
イミフw
0206デフォルトの名無しさん2010/08/22(日) 19:10:02
おまえらゲームプログラム関連の記述情報どこから集めてる?
0207デフォルトの名無しさん2010/08/22(日) 19:15:31
正直、本とかWebとかってあんま実用的な情報載ってないような気がする
0208デフォルトの名無しさん2010/08/22(日) 20:00:40
XNAで1000個の球を表示しただけでカクカクなんですが、
どういうテクニックを使えば軽くなるんでしょうか?
0209デフォルトの名無しさん2010/08/22(日) 20:06:59
球を全部板ポリにしろ
0210デフォルトの名無しさん2010/08/22(日) 20:14:41
やってみましたが、やはり軽くなりません。
JigLibXの衝突検出が重いようです・・・
0211デフォルトの名無しさん2010/08/22(日) 20:35:10
なにが「表示しただけでカクカク」だ、嘘こくんじゃねーよ
少なくとも計測して何が重いのかちゃんと調べろ
0212デフォルトの名無しさん2010/08/22(日) 20:41:51
めんどくさいのでやりません
住人が偉そうなのでもうきません
さようなら
0213デフォルトの名無しさん2010/08/22(日) 21:11:25
計測もせずに最適化なんてバカのやることだよなー
0214デフォルトの名無しさん2010/08/22(日) 21:17:56
20%がうんたらかんたら
0215デフォルトの名無しさん2010/08/22(日) 21:23:31
○○の言うところの埋蔵金か
0216デフォルトの名無しさん2010/08/23(月) 21:26:28
XNA使うような低脳にあまり多くを求めるなよ
0217デフォルトの名無しさん2010/08/25(水) 14:50:45
>>185
同意せざるを得ない
0218デフォルトの名無しさん2010/08/25(水) 15:01:38
シューティングみたいに弾を出すのって
球を出す度消す度に子クラスを作るよりも
初めから数十個作ってそこの座標を入れ替える方式の方がメジャー?
0219デフォルトの名無しさん2010/08/25(水) 15:12:09
ドドンパチ系を作るのに、弾を発射されるたびにインスタンス作ってたら、すっごい負荷がかかりそうだな。
0220デフォルトの名無しさん2010/08/25(水) 15:16:04
球を出す度消す度にクラスを作るが
あらかじめ最大数分確保してあるメモリに割り当てる
0221デフォルトの名無しさん2010/08/25(水) 15:37:38
ゲームとして遊べればそれでよい
0222デフォルトの名無しさん2010/08/25(水) 15:38:15
某言語だと配列使う以外に手がない
0223デフォルトの名無しさん2010/08/25(水) 15:41:05
N88BASIC?
0224デフォルトの名無しさん2010/08/25(水) 15:42:09
>>219
小物を作ったり壊したりを1フレー中に数をこなしたい場合は、
メモリアロケーターを自前で作成してやるのが王道。

簡単に2枚以上の速度でアロケートできるようになるよ。

いまのPCならドドパチレベルの弾撃ちだと、
毎フレーム作ってもぜんぜん平気。

作るっても画面内に1024発が上限として、
1フレームに128発も撃てれば十分でしょ。

ぜんぜん余裕だよ。

まあ、速度を気にする人たちはキャッシュ型にするとおもう。

容量可変のフレキシブルなキャッシュをテンプレートで作っておくと
色んなところで使いまわせてべんりなんじゃないかな?
0225デフォルトの名無しさん2010/08/25(水) 23:03:43
むしろ毎フレームインスタンス作るメリットなんてなんにも無いと思うけどな
0226デフォルトの名無しさん2010/08/25(水) 23:11:03
リサイクルメソッド書かなくてすむことじゃない?
毎回新鮮でうれしいじゃないw
0227デフォルトの名無しさん2010/08/25(水) 23:14:52
どっちにしろ初期化は必要なんだからいっしょじゃね?
0228デフォルトの名無しさん2010/08/25(水) 23:18:34
リサイクルは機を使うでしょ。

破壊してもとに戻らないデータなんか初期状態のものを、
別途保存しておかなきゃならないしさ。

そういう気を使わなきゃいけないコードが増えるのはバグの元だとおもう。
0229デフォルトの名無しさん2010/08/25(水) 23:28:51
メモリ確保とタスクへの割り当てって別処理じゃね?
0230デフォルトの名無しさん2010/08/25(水) 23:33:53
もう全部配列で管理しとけばいいんじゃね
0231デフォルトの名無しさん2010/08/25(水) 23:34:57
もちろんべつだけど、newが重たいから同一フレーム内でいっぱい
newしたい場合は。アロケーターを自前で作りましょうってはなしだけど・・・。

それに付随してキャッシュ型はちょっと面倒を見てあげなきゃならないことが増えるよねって話だよ。
0232デフォルトの名無しさん2010/08/25(水) 23:38:13
>>230
配列とまではいわないけど、メモリをフレキシブルに使わなくてもいいなら、
使用する上限個インスタンスを用意してあげて、それらをリンクリストで
つなげて管理してあげるのも一般てきだよね。
0233デフォルトの名無しさん2010/08/25(水) 23:47:57
多次元配列が使えるならわざわざポインタを使ってリストを作る必要もないよな。
下手にポインタ使うと最適化されないから処理速度の観点からもポインタを
使うような富豪的プログラミングは自重すべき。
ポインタを使うとバグの温床にもなりソースの可読性もうんぬんかんぬん以下略
0234デフォルトの名無しさん2010/08/25(水) 23:50:43
インスタンス作り置きじゃ全然メモリ足りないってんなら
ある程度動的に管理する仕組みを作らなきゃいけないけど
シューティングの弾ごときでそんな事態に陥ることはまずない
0235デフォルトの名無しさん2010/08/25(水) 23:59:52
ていうかいまどきのPCでnewの重さなんて気になるのか?
描画のほうがよっぽど重いと思うが
0236デフォルトの名無しさん2010/08/26(木) 00:01:32
>>235
あほ
0237デフォルトの名無しさん2010/08/26(木) 00:15:23
固定長でいいから最初に必要なだけメモリ領域をだーっと確保
newtとdeleteをオーバーロードして
newは開いている領域のアドレスを返して連結リストとかに登録するだけ
dleleteはリストから削除

デフォルトのnew,deleteを使うのは用途的に拙いでしょ
0238デフォルトの名無しさん2010/08/26(木) 00:24:16
あんまnewとかdeleteの裏で色々やるのは良くないけどな
弾しかnewしないわけじゃないだろうし、いちいちヒープ設定の手間考えたらnewとかdeleteとかの見た目にこだわるのはよくない
0239デフォルトの名無しさん2010/08/26(木) 00:33:51
配列だけでやってたら途中の抜き差しなんかやると面倒な処理で重くなるような気がするんだけど
0240デフォルトの名無しさん2010/08/26(木) 00:34:22
STLでcapacityを確保せずにベンチとってみたら200体ぐらいで処理落ちした。
でもnewが原因で処理落ちしそうな気配はないぞ。
理屈で遅いのは知ってるが実例出すのは難しそうだな。

いわゆるタスクシステムを使えば最初にメモリ確保しちゃっても
固定長だから大丈夫なんだろうが今どきはクラス使ってるだろうから
最初に確保しちゃうのは難しいんじゃないか?
クラスの種類毎に使用予定数の最大値まで確保しなきゃいけないから
無駄が多すぎて計算上はメモリが足りててももったいないお化けがでそうな気がする。
0241デフォルトの名無しさん2010/08/26(木) 00:39:38
>クラスの種類毎に使用予定数の最大値まで確保しなきゃいけないから

んなことない
1つの領域をクラスのサイズに合わせる必要はないぞ
まぁ最大サイズのクラスよりは大きくする必要があるから無駄は出るが
0242デフォルトの名無しさん2010/08/26(木) 00:40:14
>>239
やる事はポインタを使う場合と一緒だよ。
ゲ製作でHSPの例を提示したことあるけど避難所と一緒にソースも消えちゃったorz
というかぶっちゃけ未使用タスクはKILLフラグたてて配列全ループでも大して問題にならない。
抜き差し以外の所で問題になるかもしれんがそれはまた別の話だな。
0243デフォルトの名無しさん2010/08/26(木) 01:41:44
Game Programming Gemsの日本語版を読んで
どうしても著者の言いたいことが判断しかねるところがあるので原著が見たいんだけど
pdfとかないんでしょうか。買うしかないのか。
0244デフォルトの名無しさん2010/08/26(木) 01:44:03
torrent
0245デフォルトの名無しさん2010/08/26(木) 07:33:31
敵が死んだりした時の爆発のエフェクトはどうしてんの?
0246デフォルトの名無しさん2010/08/26(木) 07:44:45
昔は爆発グラフィックなんて共通で、せいぜいサイズ別に3種類くらいだっただろうけど、
今はしっかり『その機体が炎上するアニメーション』が必要になるから、
攻撃モーションとかと同様に炎上モーション作って切り替えじゃないかな。
0247デフォルトの名無しさん2010/08/26(木) 07:46:44
ああ、その都度インスタンスを作るようなやり方で爆発も作ってたらさすがに重くないかって意味
0248デフォルトの名無しさん2010/08/26(木) 09:33:44
別に重くないけどなんでそう思ったわけ?
0249デフォルトの名無しさん2010/08/26(木) 09:47:55
描画に圧倒的な時間を取られるゲームにおいてそんな細々しいこと気にしても無駄
0250デフォルトの名無しさん2010/08/26(木) 10:39:25
とりあえず適当に実装して、重かったら考える。
0251デフォルトの名無しさん2010/08/26(木) 12:05:24
地球防衛軍みたいなFPSが作りたいのですが、
フルスクラッチから書いてどのぐらいの制作期間と人数があればいいでしょうか?
当方プログラマーです。

さしあたってプログラマー1名(私)、モデラー1名(募集)で
フィールド上を動き回れるだけのものを作ろうと思うのですが、
これでプロジェクトをぶち上げてしまっていいものかどうか
0252デフォルトの名無しさん2010/08/26(木) 12:11:33
>>251
企画書と仕様書をちゃんと書けば誰か手伝ってくれるかもよ
■ このスレッドは過去ログ倉庫に格納されています