ゲームプログラマの人に聞きたい 42問目

このエントリーをはてなブックマークに追加
720uy
とある科学の超電磁砲でういはるさんが、複数のパソコンをつなげて並列処理をしていたんだけど
あの程度なら、やろうと思えば出来そうだよね
でも、pc知らない人からすれば見た感じうわーすごーいってなるんだとおもうけど
プログラマってやっぱり、そういう初心者の前では、ハッカーのフリをしてボロを出さないようにして
幻想を見せてやる、責任みたいのがあるような気がして、今Rubyをメイン言語にやってるんだけど
Rubyで複数のパソコンをつなげて並列処理で、ある程度の処理も可能にしたゲームを作るっていうのをやろうかと、
思っていたりする所存

このたびマ板、ム板を去ろうと思って、最後の煽りをして周っております
タスクシステムはきっと奥が深いですよ ぼくは木構造のタスクシステム管理をしていて、
5ネストとか10ネストしてる親子関係をもったタスクシステムでゲーム作っていますね
まぁ並列管理でも、タスクの名前を、工夫してかぶらないようにしていくとかやっていけば余裕だし
せいぜい200万行程度のソースコードなら、余裕だし、月.exeとかのソースコードじゃなければ案外、並列な管理でもゆゆーです
ぼくが木構造で管理してるのはただソースコードの完璧さがほしかっただけで、効率とかじゃないんですよね、
並列管理のタスクシステムとか、ゴミみたいなソースコードだな・・・・
721仕様書無しさん:2011/06/10(金) 16:44:54.20
Rubyで並列って、それ今まつもとがやってることじゃなかったか
722仕様書無しさん:2011/06/10(金) 16:53:22.45
幻想見せるとか意味わからん。
大抵のプログラマは、わからないヤツにすごそうなふりするためにやってる訳じゃない。おまえがそんな小学生みたいな夢しか見れないゴミってだけ。

やりたい事やるために作ってるか、やりたい事がある人のために作ってて、限られたリソースの中で可能な限り合理的に目的を達成できれば勝利。
プログラマ稼業ってのはやる事やってるヤツが偉くて、それ以外はゴミなんだよ。
わかったかゴミ。
723仕様書無しさん:2011/06/10(金) 16:54:43.49
そいつに反応するのは専用スレのほうでやってくれ
724uy:2011/06/10(金) 17:07:35.26
>>721
そうなんだ
Matzは、なかなか良い線いってるとマジで思う、遅い言語でも並列処理して
許容される程度の処理速度でれば、普通に静的言語捨てられるしな
今の時代にまともな考え持っていれば普通は並列処理に走る

>>722
わかってないな・・・・・・お前自身わかってるだろ、プログラマが凄いなんていうのは幻想だと
でも一般人だって普段からPCつかって、いろんなトラブルに悩まされてるせいか、
PCのエキスパートに見えるプログラマってのは凄いと思ってる、けどそれは夢
でも、それはばらしちゃいけないもんだろ、
プロでやってんなら、なおさらプロ意識をもてよ ゴミカスがw
725仕様書無しさん:2011/06/10(金) 17:23:10.56
お前がゆゆさまに持つ幻想まではムリな話じゃないかなw
726仕様書無しさん:2011/06/10(金) 21:34:50.65
ふと気になったんだが。
シングルコアのCPU環境で、仮にCPUとメモリ内だけで完結する処理を、並列処理にすると高速化するの?
727仕様書無しさん:2011/06/10(金) 22:12:06.42
そもそも並列処理ってどうやれば並列で動いてくれんの?
1アプリ内で処理を並列にするって結構なにやっても動いてくれないんだけど・・・
別アプリにしてキックするとそれっぽい感じになるけど
1フレ内で並列ってそもそも並列でやっていいかどうかって誰が決めんの?
728仕様書無しさん:2011/06/10(金) 22:16:32.47
OS
729仕様書無しさん:2011/06/10(金) 22:21:08.81
シングルコアなら、処理を細かくして、同時に動いてるように見せるとか
730仕様書無しさん:2011/06/10(金) 22:21:24.52
>>728
そいつ1フレ内に「並列処理していいでっかー?いいですよー」なんてレスポンス返せるほど機敏だっけ?
731仕様書無しさん:2011/06/10(金) 22:24:12.60
CPUとメモリだけで完結っていうのは、マップされたIOとかにも触らずただ計算するだけとかってこと?
その条件だと計算のもとになる値の入力や、計算結果の出力が出来ないよってネタじゃないよな・・・

シングルコアで何スレッドまで並列処理できるCPUなのかで変わる。
あと、そういうCPUでも複数同時に実行できない命令もあるから、処理にもよる。
並列実行される複数の処理からメモリの同じ領域に同時アクセスするかとかにもよる。

せめて割込み待ちとかがあれば非同期化することでスループットの向上が見込めるんだがCPUとメモリで完結って難しいな・・・
732仕様書無しさん:2011/06/10(金) 22:26:05.80
てか、自分のプログラムだと全然やってくんない
ググって並列処理できるみたいに書いてあるサイトの通りやってみても全然やってくんない
コア4つもあるのに残りの3つは知らんぷりん
733仕様書無しさん:2011/06/10(金) 22:34:36.25
>>730
いや決断に5秒は必要
734仕様書無しさん:2011/06/10(金) 22:34:50.83
スレッドなら
スレッドにとどまらないような処理にしないと回らないでしょうに
735仕様書無しさん:2011/06/10(金) 23:08:46.39
最適化とかOpenMPとかのレベルの並列処理が動かないのか、
自分で組んだマルチスレッドの並列処理なのかが分からんとなんとも。
736仕様書無しさん:2011/06/11(土) 01:30:46.46
そもそも>>727はプロセスとスレッドの違いをわかってるの?
737仕様書無しさん:2011/06/11(土) 05:58:48.96
どうでもいいが、やねうらおのサイゼリヤの話は
いつも流し読みのギャグ漫画が普通に面白くて戸惑いながら読んだような気持ちだった
738仕様書無しさん:2011/06/11(土) 13:06:31.41
昔どっかでああいうスタイルの書き方した文章を読んだ記憶が
英文だったかな?
739仕様書無しさん:2011/06/11(土) 13:21:41.03
小田嶋隆?
740仕様書無しさん:2011/06/12(日) 02:41:54.76
ゲームでthread使うなら、起動時にthread作成しといて、
用がある時にタスク投げ込み、処理結果をframe回ってきたときに
Ta○k Sy○temでとるってやり方になんじゃねぇの?
例えばcacheの入力管理させるとか。
741仕様書無しさん:2011/06/12(日) 05:59:54.27
この界隈ではスレッドプールとかタスクキューとか、その他もろもろの用語が存在しないのか。
なんでもかんでもTa○k Sy○temって呼ぶのに違和感を感じる。
742仕様書無しさん:2011/06/12(日) 06:12:58.26
わざわざ説明してくれてんじゃねーの
単語を知ってるのと理解してるのは違うし、ちょっと勉強し始めたあたりで
デザパタ用語なんかに振り回されて分かったつもりになる人も多いじゃん
743仕様書無しさん:2011/06/12(日) 08:45:04.66
いやまぁそうなんだけど>>709みたいな話もあるし
伏字にしてまでその言葉を使わなくても説明できるよねって思ったんだよ。
詳しく書いてくれるのは良いことなんじゃない。むしろそのなんとかシステムに過剰反応する俺が悪いw
744仕様書無しさん:2011/06/12(日) 09:42:09.39
プールやキューでは日本人にとって直感的ではない。
和製英語でいいんだよ。日本人が使うんだから。
むしろ自分達に合った言葉や使い方を生み出せず、どこかの国の英語を真似してるだけの奴は
英語を使いこなせていないと言える。英語は元々文法ガチガチで変化しないような言語じゃないってのに。
745仕様書無しさん:2011/06/12(日) 09:46:40.95
それでタスクシステムではTCBとかいう用語を使ってるようだけど、
リアルタイムOSの人が使う言葉なので、似てるけど違うものに同じ名前を使ったりとか、
普通に困るんですがね。
746仕様書無しさん:2011/06/12(日) 09:55:56.96
わざわざ英語にすんな検索するときウゼェ。
電算機とか、計数みたいに日本語にしろ。
747仕様書無しさん:2011/06/12(日) 10:01:30.11
それは日本語(やまとことば)じゃなく漢語だな
748仕様書無しさん:2011/06/12(日) 10:13:15.63
プールもキューも、まともにプログラミング勉強してたら普通に知ってる単語だろ。
749仕様書無しさん:2011/06/12(日) 10:21:50.28
・〜溜り・・・〜プール
 (接続溜り 等)
・待ち行列・・・キュー
750仕様書無しさん:2011/06/12(日) 10:23:50.55
>>746
マならむしろ英語の情報探すことのほうが多いと思うんだが
日本語じやまともに検索できないだろ
751仕様書無しさん:2011/06/12(日) 10:25:27.89
そうそう英語と日本語は一対じゃないから、
粒度の単語はそれぞれ粒度変更が必要になるな。
待ち行列・・・キューイングセオリー
通知行列・・・メッセージキュー
752仕様書無しさん:2011/06/12(日) 10:26:18.45
デファクトが定着するまでいろんな訳語が乱れ飛んだしたり
逆参照みたいな珍訳が定着したりするよりは英語のままがいいだろ
753仕様書無しさん:2011/06/12(日) 10:26:41.00
>>750
じゃ英語圏はどうやって探してるんだろうな?
754仕様書無しさん:2011/06/12(日) 10:28:57.96
英語圏の奴が、プログラミングに関して日本語の情報探してると思ってるの?
755仕様書無しさん:2011/06/12(日) 10:33:27.86
>>753
疑問に思うならその国の人に聞いてみたらどうかね
あぁ、日本語しかできないから無理なのかw
756仕様書無しさん:2011/06/12(日) 10:34:15.81
>>752
意味が解ってて訳したんならそうはならんだろ。
辞書に準じて訳すからアホな事になる。
電算機って訳だってエンドユーザーからすりゃ不思議かも
しれんがプログラマーからすりゃ直球的だろ。

それに和製英語の弊害は大きい。
日本でやってるリストラはレイオフなのに、リストラと書く。
Restructuer本来の再構築という発想が全く消え失せてる。
757仕様書無しさん:2011/06/12(日) 10:35:14.60
>>755
えっ、知らないの?
758仕様書無しさん:2011/06/12(日) 10:42:39.07
>>755
あっちの国は相当現実の比喩が多いが、
名刺だけで完結させないから普通に検索できるんだよ。
日本語でプログラムの用語探しても同じ話。
むしろ、日本語でプログラミング系の単語を探した方が
見つかりやすい場合も多い。なんせ、厨房やら、
神輿に乗った経営者が恣意的に横文字書きならべてるからね。
こいつらが検索結果から消えるだけで結構はかどる。
759仕様書無しさん:2011/06/12(日) 10:43:09.12
×名刺
○名詞
760仕様書無しさん:2011/06/12(日) 10:57:44.73
名刺プロクラミングか
761仕様書無しさん:2011/06/12(日) 11:10:01.31
ま、議論を要約するとQTEは禿げしくつまんねーから付けるのやめろということだな。
762仕様書無しさん:2011/06/12(日) 11:11:09.58

すみません〜会社〜部の〜ですが
 名刺を渡す→お客様の名刺に記述されたメソッド名から処理実行

お客
 わかりました私は〜部の〜です本日はよろしくお願いします。
 名刺を渡す→俺の名刺に記述されたメソッド名から処理実行
763仕様書無しさん:2011/06/12(日) 11:51:06.71
米国で仕事してるけど用語なんて揺れまくりで統一感無いよ。
だから英語だとこれが正しいキリッと断言されていると苦笑する
764仕様書無しさん:2011/06/12(日) 17:08:40.58
スレッドを使ったJAVAのデザインパターン本を見かけたけど、
あれってGOFがらみなの?
765381:2011/06/12(日) 17:57:05.59
それとゲームになんの関係が?
766仕様書無しさん:2011/06/12(日) 17:58:40.17
名前直しわすれてた。
767仕様書無しさん:2011/06/12(日) 18:07:27.96
ごめんもう言わない
768仕様書無しさん:2011/06/12(日) 18:32:29.33
>>767
 _, ,_
( ´-`) ドンベイ
769仕様書無しさん:2011/06/12(日) 19:04:03.29
昔、プログラミングの勉強した時にWisd○mS○ftってサイトで勉強したんだけど、
用語を何でもかんでもカタカナ英単語にされてて酷かった記憶があるな。
770仕様書無しさん:2011/06/12(日) 19:11:26.91
てかSyst○m程ロクでもない単語は無いよな。
特に日本の場合とりあえず〜S○stemって書いときゃいいて風習がある。
客もお前もSys○temってなんの事か解ってんのかよ。Software入れりゃ
Sy○temの出来上がりじゃねぇんだぞ。
771仕様書無しさん:2011/06/12(日) 19:21:39.02
>Sys○temってなんの事か解ってんのかよ。
わかんねぇよ○に何入れりゃいいんだよ
772770:2011/06/12(日) 19:26:07.72
すまんかった。
-でも入れといてくれ。
773仕様書無しさん:2011/06/12(日) 19:36:04.81
Sys☆tem
774仕様書無しさん:2011/06/12(日) 19:51:29.49
何故かは知らんがSys○temS○ftを思い浮かべた。
775仕様書無しさん:2011/06/15(水) 18:05:06.54
生ポインタで実装されているゲームってあるんですか?
776仕様書無しさん:2011/06/15(水) 18:07:17.76
C/C++で実装されたゲームは全部そうだろ
777仕様書無しさん:2011/06/15(水) 18:31:32.91
スマートポインタやハンドルみたいなのは使わないんですか?
778 [―{}@{}@{}-] 仕様書無しさん:2011/06/15(水) 19:02:51.96
じゃあハンドルとポインタの違いを言ってみよよ
779仕様書無しさん:2011/06/15(水) 19:18:08.99
生活は生保です
780仕様書無しさん:2011/06/15(水) 19:57:29.53
>>778
ハンドルはダブルポインタ形式のものの事。
物理アドレスに関わらず1から始まる単なる整数であることが殆ど。
ポインタと違い、アドレスから独立しているのでプロセス間や、
状況によればネットワーク間での交換が可能。
さらにファイルに保存し、その後最利用することが可能な場合もある。
781仕様書無しさん:2011/06/15(水) 19:59:41.06
ハンドル=実装はどうなってるか分からないが一意に識別するために発行された値
ポインタ=メモリ上のアドレス

じゃね?重複しないって意味でインスタンスのアドレスをハンドルの値として
使う実装もあるから近しい場合もあるけど、基本的に前者はじっそういぞん。
782仕様書無しさん:2011/06/15(水) 20:11:54.16
>>777
どちらも参照にコストがかかるからどこにでも使えるわけじゃないし
速度気にする場所は生ポインタ使うよ
783仕様書無しさん:2011/06/15(水) 20:20:15.97
ハンドルは使うメリットがない。
784仕様書無しさん:2011/06/15(水) 22:02:54.90
そか?
ポインタってstlのvectorのresizeするだけでシボンヌするじゃん
ハンドルでやってれば助かった・・・みたいな状況になる奴はきっとハンドルでも同じようなことになりそうだけどねw
785仕様書無しさん:2011/06/15(水) 23:14:35.77
それなりの規模の開発ならメモリリークを検出できるツールなりライブラリなりくらいあるでしょ。
786仕様書無しさん:2011/06/16(木) 01:13:45.73
 つか、ゲームでメモリー確保なんてそんな多用すんのかいな。
 メモリー管理がメンドイのもあるけど、そもそも動的メモリー確保は糞遅い。
よっぽど避けられない事態が発生する(メガバイト単位でメモリー消費が変化する)ので
なければ、関数のスタック領域を駆使すべきだ。
メッセージループの様な類では、一見スタックを駆使するのは不可能だが、
こんな感じで実現できる。早々ヒープが必要にはならない。

int PhaseA(ShareContext *share_context)
{
ContextA context;
share_context->Bind(&context);
while(・・・) /*メッセージループ*/;
return share_context->PhaseCode(XXX);

}
int PhaseB(ShareContext *share_context)
{
ContextB context;
share_context->Bind(&context);
while(・・・) /*メッセージループ*/;
return share_context->PhaseCode(YYY);
}
/* 関数テーブルで状態を遷移 */
while(int phase_code = phase(&share_context)) phase = phase_table[phase_code];
787仕様書無しさん:2011/06/16(木) 02:04:23.00
>>786
そんな毛嫌いするほど遅くないことも多いよ。
スタックを駆使するためのコードが不自然なら
十分にトレードオフの余地がある。
788仕様書無しさん:2011/06/16(木) 02:22:24.35
コードが不自然かというと、実際はスタック使ったほうがヒープ使ったコードより
人間の頭的には自然ではあるよ。見慣れないだけでね。

なんせ確保と開放だけのために凝ったコードが必要ないし、
局面管理と同一なんで、メモリー制御と局面の同期管理という複雑性がなくなる。
複雑性ってのは、ひとつの局面の間に明示的な確保開放を繰り返すとか、
局面を跨って明示的な確保開放を繰り返すとかね。
789仕様書無しさん:2011/06/16(木) 02:26:30.89
複数のスタックを跨って使いたい場合はどうするの?
790仕様書無しさん:2011/06/16(木) 02:37:14.84
>>788
C++使ってりゃ確保解放があってもコードは複雑にならないよね。
791仕様書無しさん:2011/06/16(木) 02:55:17.66
>>789
現実的にはこんな感じ。この場合はPhaseCによって共有情報が提供される。
PhaseCもさらに上位のPhaseによって共有情報を提供される。
struct PhaseA:public Phase
{
struct NeedContext{virtual XXX Yyyyyy()=0;};
private:
NeedContext *share_context;
public:
PhaseA(NeedContext *context):share_context(context){}
int Run(void)const{ContextA context; /*略*/}
};
struct PhaseB:public Phase
{
/*PhaseAと同様*/
public:
PhaseB(NeedContext *context):/*略*/{}
int Run(void)const{/*略*/}
};
struct PhaseC:public Phase
{
/*PhaseAと同様*/
public:
PhaseC(NeedContext *context):/*略*/{}
int Run(void)const
{
ContextC context;
const *Phase phase_table[] = {&PhaseA(&context),&PhaseB(&context)};
/*略*/
}
};
792仕様書無しさん:2011/06/16(木) 03:31:55.53
ざっと見た感じ、PhaseCがPhaseAとPhaseBの実装に依存してしまいそうな気が。
793仕様書無しさん:2011/06/16(木) 07:53:36.92
>>786
このコードなにしてるかわからん、、
794仕様書無しさん:2011/06/16(木) 08:12:54.89
>>793
メッセージループを行う関数を状態によって切り換えてる。
一種の自動人形。
795仕様書無しさん:2011/06/16(木) 11:34:49.84
すまん、状態遷移図で描いて?
796仕様書無しさん:2011/06/16(木) 12:30:38.66
メモリ確保に時間かかるなら最初から確保しておけばいいじゃない。
797仕様書無しさん:2011/06/16(木) 13:01:19.31
お前ら鯖の設定もろくにできないのかよレヴェル低いなwwwww

ハッカー集団、ゲームサイトを相次ぎ標的に
http://www.itmedia.co.jp/news/articles/1106/16/news021.html
798仕様書無しさん:2011/06/16(木) 13:15:57.31
>>796
それをスタックで管理してるって話しだろ。
799仕様書無しさん:2011/06/16(木) 13:15:59.62
ハッカー集団、やり過ぎだと思うけどね。
結果的に、無関係な一般人の多くに迷惑かけてるんだから。
800仕様書無しさん:2011/06/16(木) 13:26:12.67
普通Webサイトなんて外に丸投げだろ?
鯖の設定とかしないだろ
801仕様書無しさん:2011/06/16(木) 13:27:30.75
GNUじゃないobstackの実装で、何かいいのある?
802仕様書無しさん:2011/06/16(木) 14:21:17.13
そもそもスタックはスレッドを跨げないだろ
803仕様書無しさん:2011/06/16(木) 16:39:17.61
意外とゲーム畑出身の奴が俺SUGEEEで自己流に作り上げてザルセキュリティにしたのかもよ。
804仕様書無しさん:2011/06/16(木) 21:03:17.62
>>802
ん?変数の寿命の事いってんのか?
それともグローバル変数以外のスレッドへの変数の渡し方しらないの?
805仕様書無しさん:2011/06/16(木) 22:09:56.60
>>803
俺、出荷1週間前にmysqlの入門書読みながらアカウントシステム作ったことある
ほんとセキュリティがどうたらなんて言ってる場合じゃなかった
ただ、ただ、動けばいいってただそれだけだった

こんなのPGに投げときゃいいみたいな考えだから誰も気にしてなかったよ・・・
多分、どこもこんなもんかもしれない
806uy ◆yyC0rYWEq2 :2011/06/17(金) 00:50:33.72
>>786
柏葉剣付ダイヤモンド騎士鉄十字勲章を授けよう

おおーすげぇーw
2chみてて初めてだよ、
俺と同じ構想もってソースかいてそうな奴をやっと見る事ができた
流石はなんでもかんでも煽る2ちょんねる
周りから煽られてはいるけど俺はその書き方の優位性は知ってる
速度とかよりも、普通にリファクタリングしていけばその書き方に至ると思うね
自分でたどり着いたの? どっかの本にかいてあったの?

あと、>>791 で上位のPhaseっていってるけど、
もしかして、さらに上位の上位のPhaseとか存在してる?
もし木構造のシーン(タスク)管理までやってるなら俺とほぼ同レベルと見るよ
807仕様書無しさん:2011/06/17(金) 01:05:45.72
一緒にするな。勘弁してくれ。
Phaseの上位が存在するってのは、まぁそのとおりだ。
808仕様書無しさん:2011/06/17(金) 01:08:27.28
>>803
どうでもいいが、ザキュエルに見えた。
Xecualに意味があるかは知らん。
809uy ◆yyC0rYWEq2 :2011/06/17(金) 01:24:49.21
>>807
ほう
なかなかやるじゃないですか

普通に作業効率考えて設計すりゃそうなるよね
(*´・ω・)(・ω・`*)ネー .+:。゙d(・ω・*)ネッ゚.
810仕様書無しさん:2011/06/17(金) 02:10:35.78
相変わらず現場感のないスレだな。
811仕様書無しさん:2011/06/17(金) 02:14:00.00
スタックサイズいくつにしてるんだ
812仕様書無しさん:2011/06/17(金) 02:26:26.32
>>786
非常に示唆に富んだコードだけど実用にはハードルがいくつかあるな
これどのレベルで使った実績あるの?
813仕様書無しさん:2011/06/17(金) 08:53:07.83
uyに寄られるとはカワイソウに。
てーかautoで取った変数のポインタ持ち回るだけじゃないのか。
遷移する状態を保持したいけどグローバルにしたくない時はよく使う。
大きさが決まっているなら別にそれで問題ないよね。
今ならシングルトン使ったりするほうが多いのかな。
814仕様書無しさん:2011/06/17(金) 10:12:31.40
よく使う?
815uy:2011/06/17(金) 12:49:23.91
これやると複雑になるからな
概念全くしらない奴が読もうとする行為は魔道書の原点を読むのに等しい
エリエリレマサバクタニ
816仕様書無しさん:2011/06/17(金) 12:50:16.69
誰かuyスレ立てろよ。俺レベル不足
817仕様書無しさん:2011/06/17(金) 12:51:14.65
仕事でこれと似たコードのメンテナンスさせられたけど、うんこだった。
818仕様書無しさん:2011/06/17(金) 12:52:29.34
>>816
本物は先日2chを引退したらしいから、スレ立てても無駄だよ。
偽物のはずだから。
819uy ◆yyC0rYWEq2 :2011/06/17(金) 13:20:32.58
この書き方でやっていくには、木構造操作系の関数を充実させないと自由度低すぎてやっていられないから
成熟したソース以外はks
漏れは
とあるシーンから、上位の上位の上位にあるシーンの変数を使う、なんていう処理したくなったときとか、
最初は
scene.up.up.up.hensuu でやってたけど
今は
scene.search_up(/シーン名を正規表現で検索/).hensuu
こうやってる

全オブジェクトの変数はつながってる
地球は狙われている

こうする事で、多少階層の変化があってもネストの数を無視してそのまま動く
シーンっていうか、個々のオブジェクトとシーンを同じレベルで管理してて
オブジェクトの1個1個、全てが初期化時の引数次第で、メッセージループにもなれるよ、みたいな
そういうレベル
君はどういうレベル?

だからオブジェクトとシーンの境界は殆どなく、解読方法が100通り以上ある法の書みたいな事になってる
楽しいよ、めっちゃ楽しいよ ごめんね、スレ荒らしてしまったね
820仕様書無しさん:2011/06/17(金) 13:44:13.09
>>819
RIP
821仕様書無しさん:2011/06/17(金) 16:47:33.92
構造体のポインタ持ち回るってのは、カプセル化がうまくいってない証拠でもある。当たり前だけどさ。
Cでは使うかも知らんがOOだったら継承で済む話がほとんどじゃね?
822仕様書無しさん:2011/06/17(金) 17:12:55.03
あり得ない前提
823仕様書無しさん:2011/06/17(金) 18:16:25.77
>>819
うん、趣味グラマだなやっぱり
824仕様書無しさん:2011/06/17(金) 21:07:28.68
ほう
825仕様書無しさん:2011/06/17(金) 21:26:45.31
面白そうなネタだったのにキチガイが釣れてまさかの終了
826仕様書無しさん:2011/06/17(金) 22:46:23.97
>>812
 元々は、言語パーサー用に作ったもんで、そっちはconfig系のファイルからXMLまで結構使った。
ゲームはというと、ぶっちゃけOpenGLベースのシューティングゲー1本だけ。
それ以降は、アニメーション効果のあるナビゲーションパネルを何個かだな。
まぁ、この手の専門職じゃないからねぇ。

ゲームの方は、最初ベタに無設計な作りをしてたんだけど、動作が言語パーサーと似てるんで
Phaseの例でつくり直してやったらかんなりスッキリしたという成果はある。
あとuyみたいにクラスでツリー構造を組むんじゃなくオブジェクト構造でツリー風構造を組むんで、
新しい引数が必要になって数十箇所直さなきゃならないって事にはならなかったよ。
827仕様書無しさん:2011/06/17(金) 23:45:07.51
一般的な環境ではスタックサイズは制限あると思うけど
そこに言及がないのは小さいサイズだったってことなのかな?
828仕様書無しさん:2011/06/18(土) 00:23:38.87
 Windowsじゃリンカーオプションで、60MBスタックに割り当てても制限無いからねぇ。
 スタックサイズ云々でそう困ったりはしないさ。
一度どデカイ容量でスタック確保してから、実際は最大どの程度使用してるか
はかっといて、およそ最大と思われる量の1.2倍ぐらい用意しとけばまず落ちやしないよ。
 あと、スレッド利用して実行時にスタック容量変更する手もありだろうけど、面倒だからしたことはない。
 もうひとつ。容量に変化がないデータなら別にスタックに割り当てる必要ないんで、
main関数とか上位関数のstatic変数として確保しといてやる手もある。
 まぁ、初期化と終了段階なら無理せずヒープを確保しといてもいいんだけどね。
動的確保が問題になるのは、画面のアクションが始まってからだから。
829仕様書無しさん:2011/06/18(土) 00:30:10.06
そういうレベルなら問題も出てこなさそうだね。
830uy:2011/06/18(土) 00:38:03.21
uyさんはクラスなんて使ってなーよ
根幹に1つだけクラスがあってほかの部分はそのクラスnew時のyieldを使う

けどオブジェクトで木構造って、そこまでやってんだ
少し見くびってたよ
君がクラスでツリーしてるのかと思って会話レベルを下げていたんだ。失礼

てかC++しかやんないの?
よくC++であんな複雑なものかいたなと、素直に関心してる所だけど
俺はRubyでかいちゃってそれで満足

てか本当にSTG1個か?
その設計方法って超大規模プログラム向け設計のはずで、ゲーム1、2個作った程度でたどり着くのと違うと思うんだけど?
個人で大きなゲーム作ろうとしない限りそんなソースコードかかないよ?
ふーん
へぇ
天才か嘘つきかさて
831仕様書無しさん:2011/06/18(土) 00:38:44.30
ハイ解散
832仕様書無しさん:2011/06/18(土) 00:48:18.81
普通はシーン生成時にだけメモリ確保が許可されて
シーン終わったら全部ごっそり破棄で十分だろ。
シーン内でリアルタイムに確保&破棄なんかやる必要ほとんどないのに
イキってやろうとするから複雑なメモリ管理が必要になるんだよ。

あと、シーンの上位の上位の変数使うのに
scene.up.up.hensuuなんて馬鹿な事やってたら、
シーン配置変えただけでコード全部書き換える必要でてきて
仕様変更に弱すぎて使いもんにならんと思うんだが
おまえらほんとに仕事でやったことあるのか
833仕様書無しさん:2011/06/18(土) 00:52:12.67
>>832
後半の話だけど、クラス構造じゃなくオブジェクト構造で構築すりゃ解決できるぞ。
834仕様書無しさん:2011/06/18(土) 00:52:44.81
あるとは思えないレスばっかなんだからそうカッカすんなて
835仕様書無しさん:2011/06/18(土) 00:58:17.60
>>832
それ普通な環境なら幸せなんだけどそうじゃない現実。
なんかそういう文献ある?アホが多くて。
836仕様書無しさん:2011/06/18(土) 01:07:03.16
>>832
シーンの生成時にだけメモリ確保すりゃいいんなら、
わざわざヒープでメモリ確保する必要はないよな。
1シーンを何個かのコールスタックに割り当てりゃいいだけだし。
837仕様書無しさん:2011/06/18(土) 01:11:31.11
ていうかスタックで確保する必要がないんだよ。
わざわざプログラムサイズを膨らませるメリットは無い。
838仕様書無しさん:2011/06/18(土) 01:12:56.14
shared_ptr信仰も忘れないでください。
839仕様書無しさん:2011/06/18(土) 01:14:08.45
>>837
え?
840uy ◆yyC0rYWEq2 :2011/06/18(土) 01:14:50.32
>>832
シーン介した場所ではup.up.up.なんて流石にやらない もっと細かい場所の事を言ってた
俺はシーンとゲーム内オブジェクトもいろいろと繋がってるから

こんな感じ
player_shot.sym # => :player_shot_002 ← 沢山作られるから適当な番号
player_shot.up.sym # => :player
player_shot.up.up.sym # => :scene_name

player_shot.x でプレイヤーショットのx座標
player_shot.up.x でプレイヤーのx座標取得
player_shot.up.up.hensuu で、シーンの共通変数、みたいな

勿論さっきかいたように.upを生で使ってたのは初期だけな

まぁこれは、プレイヤーショットの処理のところをかいてるときの、相対関係で、

シーンのところからプレイヤーショットのxを取得する例をかいていみると、、こうなる
scene.task[:player].search_down_all(/(player_shot_\d*)/).each do | key , value |
  value.x # => プレイヤーショットのx座標げっと
end
search_down_all関数っていうのは、自分の持ってるタスク以下の正規表現にマッチするシンボルのタスクを全部検索する感じの関数

841仕様書無しさん:2011/06/18(土) 01:19:13.04
>>837
 なんでプログラムサイズが肥大するんだ?
 スタックだろうがヒープだろうがデータが使うメモリー使用量は変わらんし、
むしろヒープのほうが断片化が発生するしブロック単位で確保するから
空間効率も悪いぞ。コードサイズの事言ってんのか?
842仕様書無しさん:2011/06/18(土) 01:28:50.96
>>840
構造に依存しなくするのはとても良いんだが
結局データ同士の依存はそのままなので
単に「便利」の域を出ていないと思う。

規模が大きくなると、何がどこに影響しているのかどんどんわからなくなっていく
843uy ◆yyC0rYWEq2 :2011/06/18(土) 01:39:38.03
>>842
それはいえてるよ、根幹も複雑だしソースコードも複雑になる、つうか俺と786 は、似てても微妙に違う設計してるはずだから彼の話のほうをきいてほしい
俺はメッセージループ自体にPhaseの概念入れようか消そうかか迷った結果、消しちゃったからな、Phaseが欲しくなった時はPhaseが必要なシーンにPhase変数作ってPhase作る事にした
だからメッセージループ周りが若干違うと思われる
844仕様書無しさん:2011/06/18(土) 01:48:36.50
>>841
16bitのDOS時代、アセンブラでexeファイル作るときは
スタック用のセグメントを別途用意してバイナリに組み込まなくちゃいけない時期があったな。
845仕様書無しさん:2011/06/18(土) 07:49:42.08
EXEヘッダ中に書かれる数字が変わるだけで、EXEファイルのサイズは変わらない。
メモリにロードされる時にその空間を確保するから、そのサイズは変わるが。
846仕様書無しさん:2011/06/18(土) 09:42:40.70
boostは使っているの?、exe肥大化するから躊躇してるのよね
847仕様書無しさん:2011/06/18(土) 09:43:00.35
くだらないトリビア。

単に可変長のバッファが欲しいがために、寿命がその関数の中だけだというのにヒープを使う奴がいる。
C99 なら char buf[size] みたいな可変長配列が使えるのにと。

ヒープは、場合によるけど、スレッド同期のためやヒープが荒れているときの検索など、時間がかかることもある。
そこで、char * const buf = reinterpret_cast<char*>(alloca(size)) とするとよい。
C99 のも、これの構文糖衣。

alloca() の移植性は微妙だけど。
848仕様書無しさん:2011/06/18(土) 10:07:15.47
関数のネストが深くなるとバグり出すプログラムはよくある

char gBuf[4096]; //みんなで使うグローバルバッファ

・・・どっか別のソース

void unko()
{
  //退避・・・してるつもり
  strcpy(gBuf,hennano);

  chinko();//←実はこんなかの中の中の中あたりでもgBufを使用してる

  strcpy(oppai,gBuf);//←あれれ?動くときと動かないときがあるよ

}

毎回バグの原因なんてこんなくっだらねぇことなんだから
速度を求めるグローバルなんてやめろと言いたい
849仕様書無しさん:2011/06/18(土) 11:15:33.27
Minecraft ってjavaで作ってるのか。
C++とかもうオワコン
850uy:2011/06/18(土) 13:16:11.29
C++はそうかもしれないけどjavaもないし

てかC++は既にD言語に負けてる
実績や知名度とかでギリギリ地位守っているだけで
851仕様書無しさん:2011/06/18(土) 13:17:21.44
キチガイがなんかいってるね
言語は適性でしかないのに
852uy ◆yyC0rYWEq2 :2011/06/18(土) 13:49:27.32
お前はDの言語仕様しってるんかよ・・・
静的言語に今までなく動的言語にしか実装されていないような構文が入ってきてる
http://www.kmonos.net/alang/d/2.0/features2.html

どれだけC言語が得意で適正があるとほざいても、
Rubyの開発速度には追いつけないように
時代は進化しているんだよ
853仕様書無しさん:2011/06/18(土) 13:54:51.40
キチガイがなんかいってるね
言語は適性でしかないのに
854仕様書無しさん:2011/06/18(土) 14:05:43.17
言語は適性
とは、一般人は思ってないらしい
855仕様書無しさん:2011/06/18(土) 14:09:43.17
コンシューマーゲームが組み込み形式だからC/C++全盛なだけ
もしブラウザゲーム全盛なら
GCやメモリ管理・スレッドが整備されたJavascript系とかになるだろうし
スマホはObjC/Javaにならざろう得ないし。
856仕様書無しさん:2011/06/18(土) 14:20:33.16
スマホはC++なんだけどね。
857仕様書無しさん:2011/06/18(土) 14:22:10.11
>>856
くわしく
858仕様書無しさん:2011/06/18(土) 16:45:27.04
ワナビースレになった
859仕様書無しさん:2011/06/18(土) 17:52:27.20
>>855
ブラウザならもうしばらくしたら、C++復権がありうる。
NaClとかMSのアレとか中間言語を使用したネイティブクライアントの開発が活発だからね。
結局AppletやFlashは、重いし、バカが開発するせいで枠の飾りだけ開発した動画プレーヤーは、
参照の開放をまともにしないからメモリーリークで落ちるし、何とかしたいみたいよ。
860仕様書無しさん:2011/06/18(土) 19:02:56.10
なんでuyいるの?
解雇された?
861仕様書無しさん:2011/06/18(土) 19:14:30.32
コンスーマーで0x使えるようになるのは何年後ぐらいかのう
862仕様書無しさん:2011/06/18(土) 19:26:42.15
gccが対応してればすぐなんでは?
つーかまた乱用する奴続出なんだろうな。
863仕様書無しさん:2011/06/18(土) 19:29:39.21
>>860
単に面接受かった、てたのがウソか別人だったんじゃね?
まぁ受かったけどやってけそうもないから再帰した、もあるかもしらんが。
864仕様書無しさん:2011/06/18(土) 19:33:22.83
>>859
それはない。
ネイティブに近い性能が出る別の言語による開発
ならありうるけど。
865仕様書無しさん:2011/06/18(土) 19:56:44.10
ゲーム関係でC++以外の言語が使われるようになるにはメモリ回りの自由度がC++並でないと意味ない
つまり、C++でいいじゃん、というオチ
866仕様書無しさん:2011/06/18(土) 20:02:08.55
そこまでリアルタイム性を追求したゲームが需要あるのかという問題がある。
多少GCでカクついてもいいようなゲームのほうが一般人気ないか?
実際ロード長かったりバランス悪く処理落ちするゲームばっかだし。
業界の保守性なだけな気がする。
867仕様書無しさん:2011/06/18(土) 20:11:29.12
グラフィックとか操作性を諦めれば
別にC++でもそんなに開発が大変なわけじゃないし
結局は汎用性でC++が選ばれてるんでは?
868仕様書無しさん:2011/06/18(土) 20:20:52.78
C++じゃセキュアな環境で実装できないから本来なら汎用性ないよ。
コンシューマー機の保守性で逆にC++しか選択しない状態だけど。
869仕様書無しさん:2011/06/18(土) 20:26:54.45
他の言語使ったら100%のパワーは出ませんって状況じゃ誰もC++以外つかわんだろ
870仕様書無しさん:2011/06/18(土) 20:29:40.29
そこまでパワーが必要な場合は少なくなってる、スマホやグリーやブラウザゲーとか。
ゲームって言うといまだ縮小傾向のコンシューマーってどうかと思う。
871仕様書無しさん:2011/06/18(土) 20:34:46.58
プログラマーの数で言ったら今はスマホ系が一番多いんだろうな
とは言え花形はコンシューマーだしなー
872仕様書無しさん:2011/06/18(土) 21:52:34.61
uyってなんなのruby信者?lisp信者の100倍くらいうざいな
つか最初やねうらおのイニシャルかと思ったし
まぎらわしいぞ失礼だろ謝れよuyさんに
873仕様書無しさん:2011/06/18(土) 22:14:41.75
ポインタで構造体とりまわしてツリー構造で制御してるとか10年前のやり方ですやん。
C++ならそんなことせんでもうまく動作するもんが作れるっしょ。
874仕様書無しさん:2011/06/18(土) 22:18:10.84
話が理解できてないからって煽んなよ
875仕様書無しさん:2011/06/19(日) 04:25:23.40
>>870
うちはスマホゲームもやってるけど、javaやobjcが主流だよ。
理由は

・圧倒的に生産性が高い
・変な不具合でハマらない
・情報が多い
・デバッグ環境が整ってる
・スマホらしいAPIも使える
・実は速度は大差が無い(描画は元々内部でネイティブ)
・それでも速度が必要な部分はそこだけネイティブ

って所みたい。濃厚な3Dや物理演算が必要なゲームは
ゲームエンジンを使う流れ。正しい判断だと思う。

プログラマとしてはちょっと物足りないんだけどね。
876仕様書無しさん:2011/06/19(日) 04:27:59.32
>>864
なぜ?
Google的にはLLVM対応言語以外の選択肢は無いようだぞ。
それさえあれば、ブラウザをOSにしてその上にネイティブ環境を構築できるからね。
そんで他の言語はC++の上にランタイム環境を作って動くことになる。
確実なパフォーマンスを出そうとするとどうしてもブラウザネイティブなC++を使う事になるだろ。
そもそもパフォーマンスがいらないならFlashでもいい訳だし。
877仕様書無しさん:2011/06/19(日) 04:53:55.28
objcはそもそもネィティブだし。
C/C++との混在も普通にできるし。
878仕様書無しさん:2011/06/19(日) 05:46:55.67
うちはiPhone/Android開発やってるけど、まずiPhoneを極力obj-c固有じゃないC++の書き方で書いて、
それをAndroidのNDKに移植して、できるだけ同じソースコードを使うって方法だよ。
でもAndroidでC++を使うのには速度的な有利は求めてないね。あくまでも移植の簡略化だけが目的。
879仕様書無しさん:2011/06/19(日) 07:20:34.78
Androidは知らないけどiOSのソフトってレビュー見ると不具合だらけだし、
自分で使っててもよく落ちたり固まったりするソフト多いんだけど、
これは言語やハードの問題なのか、それともPGがゴミなせいなのか。
880仕様書無しさん:2011/06/19(日) 07:32:43.07
>>875
Eclipseが環境設定からうまくいかなくて死にたくなるんですね
881仕様書無しさん:2011/06/19(日) 12:35:53.64
スマホ向けのゲーム作ってるような弱小メーカはしねばいいのに
ゲーム業界の寄生虫
882仕様書無しさん:2011/06/19(日) 13:34:03.36
キチガイか
883仕様書無しさん:2011/06/19(日) 17:58:48.51
スマホ向け作ってないメーカーだけを残したら、それこそ任天堂だけになるんじゃないか
884仕様書無しさん:2011/06/19(日) 18:08:34.92
カプコンですらソーシャルゲームだからな
885仕様書無しさん:2011/06/19(日) 22:15:46.64
なぜかスマホがオナホに見える
886仕様書無しさん:2011/06/19(日) 22:17:23.56
スマホみたいな操作性最悪なデバイスに
ファミコンだかスーパーファミコン時代のゲームをベタ移植
それかWiiでもあきられたゲームが嫌いな人のためのゲーム
最低限、機器の特性を活かすか、操作性を改善するかしてから出せよ
音がなって絵が動けば全部ゲームかよクソが
おまけにフリーズ多発リセット多発
操作性悪い機器にクソゲーの山
1本数百円だからって客なめんな
こういう不誠実な商売してるとアタリショックがもう一度くるぞ
887仕様書無しさん:2011/06/19(日) 22:27:47.54
1本数百円:10万本数千万=数十人月
まあそれなりだよ
888仕様書無しさん:2011/06/19(日) 22:54:48.22
ソーシャルゲームに迎合できないおっさんどもはほっといても死ぬ
889仕様書無しさん:2011/06/19(日) 22:59:22.55
操作性が課題なのは確かにそうだと思うけどね
マリオやロックマンみたいなゲームはタッチパネルじゃ厳しい
890仕様書無しさん:2011/06/19(日) 23:01:34.74
十字キーゲームにしなきゃいいのに
891仕様書無しさん:2011/06/19(日) 23:19:33.53
なんでwzero3が出た頃にスマホでゲーム出さなかったの?あのときならシェア広げられたろうに。
892仕様書無しさん:2011/06/19(日) 23:24:10.36
マーケットがないところに投入する馬鹿はいない
893 [―{}@{}@{}-] 仕様書無しさん:2011/06/19(日) 23:28:33.46
中身がしっかりした2Dのドット絵ゲーム作ってくれよ
894仕様書無しさん:2011/06/19(日) 23:30:16.73
>>892
マーケットは作るんだよ!
895仕様書無しさん:2011/06/19(日) 23:31:08.15
作れるところにね
896仕様書無しさん:2011/06/19(日) 23:33:01.53
>>891
性能が低すぎた。
897仕様書無しさん:2011/06/19(日) 23:36:23.93
いまでも市場があるとは言い難いのでは。
898仕様書無しさん:2011/06/19(日) 23:59:40.75
別にタッチパネルがスマフォの要件じゃないだろうに・・・。
899仕様書無しさん:2011/06/20(月) 00:32:09.28
>>897
集金システムが標準装備になったのは大きい。
900仕様書無しさん:2011/06/20(月) 03:32:10.59
>>891
まだどこかのキャリアが「これからはWEB2.0の時代(キリッ」とか言ってた頃じゃん
当時は携帯ゲーム機と住み分けができるなんて考えてるやつが少なかったよ
それにソーシャル系のサービスも今より規模が小さくて種類も少なかったからコミュニケーションツールとして未成熟だった
901仕様書無しさん:2011/06/20(月) 07:47:30.46
wzero3 のソフトなんて知らないけど、palm でも WindowsMobile でもゲーム出てたろ。
そんでアレなんだから >891 の理屈の浅はかさがわかる。
902仕様書無しさん:2011/06/20(月) 13:32:53.56
俺からすりゃJavaもC++もDも「同じC系列」ということで総じてクソなんだが。
C#やDのデリゲードとかクロージャとか
LispとかハスケルとかOCamlとかでもっと自然に書けるのに
C風じゃないとヤダヤダっていう老外がいるせいで
いちいちC#やD言語みたいなCのマイナーチェンジの珍妙な言語が作られるハメになる。
903仕様書無しさん:2011/06/20(月) 14:09:49.54
Java/C#はよくできてると思うけどな。

そういう老害はろくなJava/C#のコードを書かないだろうことは想像に難くないが。
904仕様書無しさん:2011/06/20(月) 14:17:15.09
  \
    \
.       \
.       \      _______
          \   r'´ ̄ ̄ ̄    ̄ ̄ ̄`、::.   ___
   l} 、::       \ヘ,___,_ ______/::.__|    .|___________
   |l  \::      | |             |、:..  | [], _ .|: [ニ]:::::
   |l'-,、イ\:   | |    ∧,,,∧ .   |::..   ヘ ̄ ̄,/:::(__)::
   |l  ´ヽ,ノ:   | |   (´・ω・`)    ,l、:::     ̄ ̄::::::::::::::::
   |l    | :|    | |,r'",´ ̄ ̄ ̄ ̄ ̄`ヽ、l:::::
   |l.,\\| :|    | ,'        :::::...  ..::ll::::   Haskellで何を作ろうかなあ
   |l    | :|    | |         :::::::... . .:::|l::::   そうだ安定したOSを作ろう
   |l__,,| :|    | |         ::::....  ..:::|l::::   その前にFireFoxに対抗できるブラウザだな
   |l ̄`~~| :|    | |             |l::::   やっぱFlashやHTML5やJavaの動く見栄えのいいブラウザがいいよなあ
   |l    | :|    | |             |l::::   そしてゲームも欲しいよな
   |l    | :|    | |   ''"´         |l::::   もちろんモンハンやMGSみたいなメジャータイトルだよなあ
   |l \\[]:|    | |              |l::::   
   |l   ィ'´~ヽ  | |           ``'   |l::::   ふと気がつくと布団の中にいた
   |l-''´ヽ,/::   | |   ''"´         |l::::    この脱力感は何なんだろうか
   |l  /::      | \,'´____..:::::::::::::::_`l__,イ::::    そうか全て夢だったんだ・・・
   l}ィ::        |  `´::::::::::::::::::::::::::::::`´::::::     いい言語だねって褒められたこと以外は・・・
905仕様書無しさん:2011/06/20(月) 14:29:53.46
OSを作る、なんてのはともかくとして、
ちょっとしたモデリングとかには非常に有用なんだが。

ていうかブラウザとか巨大ゲームとか人海戦略が必須なものは、普及しきった
言語でないと人が集められない。Javaでブラウザ、すら失敗してるんだから。

そういうありえない夢をひきあいに出してバカ晒して何が嬉しいんだろうね。
906仕様書無しさん:2011/06/20(月) 14:42:09.53
えっ敗北宣言なの?
907仕様書無しさん:2011/06/20(月) 15:00:32.60
     /: : : : : __: :/: : ::/: : ://: : :/l::|: : :i: :l: : :ヽ: : :丶: : 丶ヾ    ___
     /;,, : : : //::/: : 7l,;:≠-::/: : / .l::|: : :l: :|;,,;!: : :!l: : :i: : : :|: : ::、  /     ヽ
    /ヽヽ: ://: :!:,X~::|: /;,,;,/: :/  リ!: ::/ノ  l`ヽl !: : |: : : :l: :l: リ / そ そ お \
   /: : ヽヾ/: : l/::l |/|||llllヾ,、  / |: :/ , -==、 l\:::|: : : :|i: | /   う う  前  |
.   /: : : //ヾ ; :|!: イ、||ll|||||::||    ノノ  イ|||||||ヾ、 |: ::|!: : イ: ::|/   な 思 が
   /: : ://: : :ヽソ::ヽl |{ i||ll"ン    ´   i| l|||l"l `|: /|: : /'!/l     ん う
 ∠: : : ~: : : : : : : :丶ゝ-―-      ,  ー=z_ソ   |/ ハメ;, :: ::|.   だ ん
   i|::ハ: : : : : : : : : : : 、ヘヘヘヘ     、  ヘヘヘヘヘ /: : : : : \,|.   ろ な
   |!l |: : : : : : : : :、: ::\    、-―-,      / : : :丶;,,;,:ミヽ   う  ら
     丶: :ハ、lヽ: :ヽ: : ::\__  `~ "      /: : ト; lヽ)   ゝ
       レ `| `、l`、>=ニ´        ,  _´ : :} `   /
         ,,、r"^~´"''''"t-`r、 _  -、 ´ヽノ \ノ   /    お ・
       ,;'~  _r-- 、__     ~f、_>'、_         |  で  前 ・
      f~  ,;"     ~"t___    ミ、 ^'t         |  は  ん ・
      ,"  ,~         ヾ~'-、__ ミ_ξ丶     |  な  中 ・
     ;'  ,イ ..          ヽ_   ヾ、0ヽ丶    l         /
     ( ;":: |: :: ..          .`,   ヾ 丶 !    \____/
     ;;;; :: 入:: :: ::      l`ー-、   )l   ヾ 丶
     "~、ソ:: :い:: :     \_  ノ ,    ヾ 丶
908仕様書無しさん:2011/06/20(月) 15:00:35.81
完成物を作れないんじゃ存在しないのと同じじゃね?
とりあえずシェアウェアとか同人ゲームとかからスタートすれば?
909仕様書無しさん:2011/06/20(月) 15:01:23.98
十数年前に初めてC++でゲームを作ったとき、最初は社内に全く理解者がいなくて、
少なくとも人を集められる普及しきった言語なんかじゃ全くなかったよ。
910仕様書無しさん:2011/06/20(月) 15:46:14.90
ていうかゲームが作れれば何でもいいんじゃないの?
911仕様書無しさん:2011/06/20(月) 16:10:28.41
そうね
912仕様書無しさん:2011/06/20(月) 16:22:42.09
関数型言語の実績のなさは異常。
913仕様書無しさん:2011/06/20(月) 19:13:38.82
>>902
こいつリーダーのプロジェクトは間違いなく完成しない
914仕様書無しさん:2011/06/20(月) 19:20:19.80
ヒープの理解が浅くてリーク断片しまくり、
デザパタとコンボで8割がシングルトンとかね。
いまでも普通か。
915仕様書無しさん:2011/06/20(月) 21:20:38.85
C++で書かれた公開されているソースでこれは凄いってソースある?
出来れば10万行以下くらいでCUI、GUI問わず。
916uy:2011/06/20(月) 23:17:17.73
適当にOS Mona 
917仕様書無しさん:2011/06/21(火) 02:26:56.65
EASTL
918仕様書無しさん:2011/06/21(火) 04:19:33.40
boostって書こうと思ってステップ数調べたら81万だった
919仕様書無しさん:2011/06/21(火) 05:08:19.22
どのソースだしても内容に関わらず難癖つけてやろうってオーラが見える。
920仕様書無しさん:2011/06/21(火) 06:49:28.21
巨大なAAは見づらいから辞めてくれ
921仕様書無しさん:2011/06/21(火) 07:47:46.52
ヘッダファイルの「ステップ数」って何?
どういう計量方法?
行数と比べて何か優位な点はあるの?
922仕様書無しさん:2011/06/21(火) 12:35:00.64
ステップ数というのは命令数のことだけど、
20年3社でこの仕事をやってきてステップ数を数える現場を見た事無い。
923仕様書無しさん:2011/06/21(火) 13:05:27.28
前にステップ数いくらみたいな下請けしたことあるけど、意味も無く長いコードを書いて高額請求たら切られたよw
最近だと品質評価でステップあたりのバグ数とか出すところもあるけど、基本的に内部向けの目安値だから
あまり役に立ってる現場を見たこと無いね。
924仕様書無しさん:2011/06/21(火) 13:06:54.16
COBOLとかRPGとかは1行=1stepだったんでstep言う人がいるんじゃないかな。
しかし、命令数とか言い出すヤツなんか見たことない。
925仕様書無しさん:2011/06/21(火) 13:16:47.10
ヘッダファイルの命令数か。胸熱
926仕様書無しさん:2011/06/21(火) 16:00:52.83
1stepが何バイト(平均)かで見積もってた人いたよ、昔
927仕様書無しさん:2011/06/21(火) 16:47:04.03
あー俺もファミコン時代に命令数をバイトで数えてた。
6502/65816はインストラクション長と消費クロック数がほぼ比例してたから
コードの速度を見積もれたんだよね。
928仕様書無しさん:2011/06/21(火) 17:21:36.59
コンパイル後のバイト数で評価するとテンプレート使った場合に爆発的に増そうだね
ステップ数もboostするw
929仕様書無しさん:2011/06/21(火) 17:32:27.57
もうコンパイル後のバイナリサイズがそのまま円でいいよw
930仕様書無しさん:2011/06/22(水) 09:11:40.58
ゲームプログラマって毎日どのくらいの量のコードを書くのが平均的なんだろうな
ちなみに自分は多いときを平均しても1000行/日いかないくらいw
デバッグや調整期間はプログラム以外のことやってるから含めない
931仕様書無しさん:2011/06/22(水) 14:32:17.21
人によって全然違うだろうなぁ。

あちこちかき散らかす感じだと、
無理やり書いたコードを無理やりねじ込むためのコードが
バグらないように無理やりコードを書いて果てしなくコードが増えていくからな。
こんな感じだと1000行なんてあっというまだろうな。
932仕様書無しさん:2011/06/22(水) 16:00:21.59
>毎日どのくらいの量のコードを書くのが平均的なんだろうな
パンチャーみたいなことやってるの?
933仕様書無しさん:2011/06/22(水) 16:30:30.60
コピペプログラミングが横行している現場である、という危険性をまず警戒するかな俺なら
934仕様書無しさん:2011/06/22(水) 22:18:08.49
本気でゲームプログラマになりたいと考えているのですが・・
今の時代専門学校のゲーム学科を出たほうが就職できると聞いたのですが、
やはり一度大学を出てからじゃないと厳しいのでしょうか?

自分は工業高校の3年で進路について悩んでいます..

就職するならこれはやっとけということがあれば何でも言ってください。
935仕様書無しさん:2011/06/22(水) 22:36:40.47
>>934
文系の大学行って余りに余った時間を使ってゲーム開発がガチ
理系に入るとマジでやばい、時間なくて・・・

ゲームの専門学校は2年じゃどうやっても足りない気がする
3年だとやたら金取るくせにやっぱり大した時間取れない気がする

うーん・・・それとどう考えても新卒でPGっていま現場でとってない気がすんだよね
どこも余裕なくて・・・カプコンとかあんなにクビにしてるのに新卒わざわざ
育ててるんだろか?とかちょっと思ったりして・・・という状況なので
ぶっちゃけもうお前、自分1人でゲーム作って売れる気がしないならゲーム会社なんてやめとけ
って感じなので高校の3年なら工学科の理系入って真面目に社会人なれ
んで余裕が出てきたら趣味でゲームでも作ってコミケで売れ

ゲーム会社はいまやめたほうがいいや
携帯ゲーとか大して技術いらんようなのが流行ってるじゃん?
お前が社会に出る頃にはさらに加速してるとおもうんよ
したらFlashみたいなゲーム延々作らされるで(研修とかなしでひたすらミニゲームだと思われ)
936仕様書無しさん:2011/06/22(水) 22:45:28.76
2chで相談するくらいなら諦めたら?
向いてない気がする
937仕様書無しさん:2011/06/22(水) 23:08:24.25
俺みたいな厨房はいきなりゲームを作るとか言い出して
勉強中だったりするがなw

そして挫折するのがオチと分かっていながら努力するw

ライブラリ作るの楽しいれす(^p^)
938仕様書無しさん:2011/06/22(水) 23:16:43.91
ゲームプログラムやってゲームを出せば、それで立派なゲームプログラマだよ
いわせんな恥ずかしい
939仕様書無しさん:2011/06/22(水) 23:29:51.88
>>934
企業のホームページを見ろ。
プログラマの採用条件が書いてあるから。
940仕様書無しさん:2011/06/23(木) 00:58:17.92
ゲームプログラマーになりたいというなら自分一人で作ればいいのに。
グラフィックなんてとりあえず神主や竜騎士レベルでいいだろ。
941仕様書無しさん:2011/06/23(木) 03:19:00.32
SM2.0から抜け出せない
後2年遅く生まれたかった
素人だけど
942仕様書無しさん:2011/06/23(木) 05:43:35.07
2.xわかってりゃ3.0は普通に使えそうな…
943仕様書無しさん:2011/06/23(木) 06:25:25.74
>>934
 専門学校だけはやめとけ、Bラン、Cランレベルの大学の方が
まだ入社できる可能性がある。企業から見れば専門学校は、バカの巣窟だからな。
944uy ◆KOAgYBL/Xg :2011/06/23(木) 06:28:29.08
名無しを相手におせっかいをやきすぎなんだよ
ゲームプログラマになったところで人生終わるとしても、そういうのは専門職のすべてにいえる事で何もプログラマに限った事じゃない
プログラマになりたい! → プロ「やめとけ」
漫画家になりたい! → プロ「やめとけ」
声優になりたい! → プロ「やめとけ」

なんだよこれ。

>>934
俺は本業ではないけど、趣味で作る為の道を・・・教えると・・・・・
とりあえず、絵と音楽作れないと、飽きる  自分で作れるようになるか、絵音楽を作れる知り合いを作れ
素材をフリーで集めればいい。なんていっても、早々気に入ったものみつかりゃしないし、
○○ってゲームと同じ音楽だね。なんていわれたらいやでしょ?

無機質なグラフィックだけ見てても飽きないなら別だけどな・・・・
プログラミングとともに、絵の練習と作曲と物語作りをはじめろ・・・・・・・
プログラミング技術だけだったら、センスあれば1年やって、もう真理は見えてくると思う・・・・
プログラミング自体はさほど難しくなんてない・・・だから、プログラミングだけにあまり時間をかけるな・・・と、いっておく・・・・・・・・
945仕様書無しさん:2011/06/23(木) 07:23:30.99
そうやって世の中にuyが量産されていくのか
自分に出来るところまでで諦めて真理が見えたとか言い訳するやつは仕事でやってくの無理だから
946仕様書無しさん:2011/06/23(木) 09:25:08.82
983:革命家[uy] ◆rT33C51l9k :2010/05/16(日) 00:35:16 [駄レス!] [良レス!]
<<<<<<<<<<<<<<<<<<<<<<<<<<
∨                                    ∧
∨             /ヽ        /ヽ             ∧
∨               /   ヽ      /   ヽ          . ∧
∨           /    ヽ    /    ヽ         . ∧
∨          /     ヽ__/      ヽ        . ∧
∨         /                 ヽ         ∧
∨         /   /\     /\      ',  <    .∧
∨         |  , , ,                    i        .∧
∨         ',      ー───   *   |        .∧
∨         ヽ /⌒⌒i    /⌒ヽ      /        .∧
∨           /    |    |   \   /         ∧
∨                                   ∧
∨     u                       y       ∧
∨                                   ∧
∨>>>>>>>>>>>>>>>>>>>>>>>>∧
947仕様書無しさん:2011/06/23(木) 12:10:09.48
学校行きながらでもフリーターしながらでもいくらでもゲームプログラミングできるのに、
何故それをせずいきなりゲーム会社に入りたいだのゲーム専門学校に行きたいだの言うんだろう。

絵を描いたことないやつがアニメーターになりたいっていってるようなもんだ。
948仕様書無しさん:2011/06/23(木) 12:17:43.41
“ぼくの考えた最強のゲーム”を作ってもらいたかっただけだろ
949仕様書無しさん:2011/06/23(木) 12:55:47.36
まだ何かを仕事にするってことがどういうことか分かってない
学生相手に出鼻をくじかなくてもいいとは思うけどな
950仕様書無しさん:2011/06/23(木) 13:05:53.13
>>947
ゲーム会社のプログラマの新卒採用条件をクリアして採用されさえすれば
職業としてのゲームプログラマになったということになるだろ?
ゲームプログラミングだけをひたすら続けたところでそれはただのアマチュアだ。
951 [―{}@{}@{}-] 仕様書無しさん:2011/06/23(木) 14:19:18.07
ゲームが作りたいんじゃなくてゲーム会社社員になりたいのか
952仕様書無しさん:2011/06/23(木) 15:03:49.33
http://blog.livedoor.jp/tek_nishi/

この人ゲームPG暦21年なのに最近初めてC++触ってるらしいが
そんなもん?
953仕様書無しさん:2011/06/23(木) 15:26:30.81
>>952
ObjCとかlispとか手を出してるみたいだし、好きでプログラムやる人種だね
今までベターCの範囲を出なかっただけでクラスとかは使ってたんじゃない?
単にモダンなC++に移行するって程度の意味に見える
954仕様書無しさん:2011/06/23(木) 15:46:13.00
もうUnityでゲーム作れるからPGもグラフィックもいらないね
955仕様書無しさん:2011/06/23(木) 16:11:16.00
>>951

>>934
>今の時代専門学校のゲーム学科を出たほうが就職できると聞いたのですが、
>就職するならこれはやっとけということがあれば何でも言ってください。

とあるからそうなんだろう。
956仕様書無しさん:2011/06/23(木) 16:47:35.23
その条件だとエロゲメーカーのプログラマ募集が入りやすいしお勧めだな
957uy ◆yyC0rYWEq2 :2011/06/23(木) 22:15:54.46
>>952
そのサイトきっつい
観覧注意とか言ってくれ
958仕様書無しさん:2011/06/24(金) 00:58:12.70
エロゲPGは経験者しか募集しないと思うよ。
未経験なら最低でも過去に作ったゲームのソース持って来いって言われるだろう。
959仕様書無しさん:2011/06/24(金) 01:00:06.19
プログラムってより、スクリプト書きみたいなことやることになるんじゃないの
960仕様書無しさん:2011/06/24(金) 01:20:16.06
 最近の3Dはしらんけど、デジタル紙芝居は、
基本的にエロゲツクールみたいなサードパーティで作ってんじゃねぇの?
961uy:2011/06/24(金) 01:36:02.85
デジタル紙芝居作ってる会社のPGって、その会社に1〜2人しかいないと思うし
何か詰まった時に一人で解決できるレベルじゃないと困るんじゃないの?
エロゲプログラマーはレベルは要求されると思うんだけど
このスレにエロゲプログラマーいるの?エロゲプログラマー
962仕様書無しさん:2011/06/24(金) 03:55:32.36
詰まる箇所のレベルもレイヤーも違うわけだが
エロゲならエロゲレベルの知識でいい
963仕様書無しさん:2011/06/24(金) 05:42:38.77
エロゲはエロゲでも3Dのとか最近は同人でも多いね
964仕様書無しさん:2011/06/24(金) 07:43:17.91
エロゲないしギャルゲメーカだと、スクリプトエンジンは、ありものをつかってますとか
他社開発とかで、いわゆるプログラマはいません、って会社もある。
965仕様書無しさん:2011/06/24(金) 11:22:14.49
>>958
そうだとおもった。
童貞の俺じゃ無理だわ。
966仕様書無しさん:2011/06/24(金) 14:31:38.83
ソーシャルゲーム開発会社の面談うけたら
技術力なんてどうでもいい、売れるゲームのアイデアをよこせって言われた。
こいつら労働力ではなく金ヅルが欲しいだけなのかと。
そんなもんあったとしても他人に言うわけないだろ。馬鹿か。
967仕様書無しさん:2011/06/24(金) 16:00:27.39
まあ正直いっちゃうのはバカだけど
大抵のゲームプログラマーは代替可能だし
とくにソーシャルなんて技術無視だし
968仕様書無しさん:2011/06/24(金) 16:35:00.79
良いアイデアを教えてもそのアイデアが良いか悪いかすら分からないのがソーシャルゲーム業界
どっかの作品をパクって、○○みたいなゲームです、で塗り固めたゲームしか採用されないだろ
969仕様書無しさん:2011/06/24(金) 19:20:00.13
簡単だよ
サービスが回るのがいい企画
970仕様書無しさん:2011/06/24(金) 20:33:02.50
>>966
ソーシャルは、
プログラマが企画をやって、効率よくつくろうって思想の所が結構あるよ。
971仕様書無しさん:2011/06/25(土) 07:05:59.37
効率よくと言うより開発費安くあげようっていうだけでは。
まあ運営会社に安く買いたたかれてるらしいからしかたないんだろうけど。

マじゃないけど、グラフィックデータの単価聞いてびっくりした覚えが。

そのうち、ネットの画像サイトとかで「あなたの才能をゲームに生かしてみませんか?」とか勧誘して使い捨て、とかやりそうだな。(もうやってる?)
972仕様書無しさん:2011/06/25(土) 11:18:36.34
http://www.google.co.jp/search?q=pixiv+%83J%83%84%83b%83N
一時期話題になったような
973uy ◆yyC0rYWEq2 :2011/06/25(土) 14:33:38.63
画像サイトってなんだよ
イラストサイトだろ
ふざけた呼び方すんな

てか実際やってるでしょそれ
絵師のサイトいくつかみても、上手い人はメアドの横に仕事受け付けの旨をかいてるし
絵師自身もそれを望んで、仕事受け付けしてるんでしょ
そもそも、プログラマなんかよりずっと短命で枠の小さい仕事だから
副業でやってるか副業を持ってるかだよ、殆どの絵師は
974仕様書無しさん:2011/06/26(日) 21:41:29.04
だから何だよ
975仕様書無しさん:2011/06/27(月) 01:29:00.94
安く買いたたいたなりのものしか上がってこない。
ソーシャルゲームなんかだと十分なんだろうけど。
周りからはあまり好かれてない四角い会社が抱えてるデザイナのクオリティには絶対に届かない。
976仕様書無しさん:2011/06/27(月) 23:02:54.76
質問。
SIMDユニットを備えた環境での開発で、スカラー値とベクトル値との計算ってどうやってやってるの?
スカラー値をベクトルレジスタに単精度浮動小数を一個ずつセットしてそれから掛け算したりしてんの?
977仕様書無しさん:2011/06/28(火) 19:05:53.48
>>976
CPU による。
ベクトルレジスタに値をロードする。
CPU の ISA かコンパイラのその CPU 向けの intrinsics を調べる。またはコンパイラの自動ベクトル化に頼って運を天に任せる。
978uy ◆hi.ht/Isu2 :2011/06/29(水) 06:16:48.32
>>974
ハァ???舐めてんの?

だったら今後一生、イラストサイトのことを画像サイトとでも呼んどけよ
979仕様書無しさん:2011/06/29(水) 08:58:08.01
何で?
980uy ◆hi.ht/Isu2 :2011/06/29(水) 10:31:30.06
なんだ ただのゴミか
981仕様書無しさん:2011/06/29(水) 12:43:19.66
>>976
スカラーの配列を読み込む命令を使う。
でも諸事情で使えず1個1個セットすることが多いけど。
982仕様書無しさん:2011/06/29(水) 18:42:03.91
やっぱり大抵の環境じゃ直接スカラーとベクター掛けられないんだね。
何でだろ?ベクトルの伸縮とかって行列で済むから需要が無いのか。
983仕様書無しさん:2011/06/29(水) 22:12:56.51
>>982
なんでって、性能向上がほとんどないのにコストは沢山かかるからさ。
984仕様書無しさん:2011/06/29(水) 22:32:42.23
>>983
コストってのは製造コスト?それとも乗算系の演算コスト?
まぁ、製造コストが増えるのは確実だろうけど。
985仕様書無しさん:2011/06/30(木) 00:01:25.49
俺もたしかその辺悩んだな
スキンメッシュやるときにインデックスを浮動小数点で渡すことになんだけど
渡ってんのかどうなのかさっぱりわからなかったから
SDKについてくるシェーダのデバッグツールもその辺きっちりでるわけじゃないしね
986仕様書無しさん:2011/06/30(木) 23:30:37.06
コンシューマではトライアングルリストで描画することはあまりないんですか?
987仕様書無しさん
比率でいえばトライアングルリストよりストリップの方が多い。
独立三角形を複数書く場合も縮退ポリゴンでつないだストリップを使うチームも結構ある。

本当にこんなことが聞きたいのか?
聞きたいことをちゃんと考えてみ。
質問を整理するのは、プログラマとしては良い訓練だ。