1 :
デフォルトの名無しさん :
2009/08/27(木) 07:06:31
2 :
デフォルトの名無しさん :2009/08/27(木) 07:41:21
2
うめ
埋め
梅
うめ
ume
ネットゲーム作ってるんだが、 3人以上になった瞬間にプログラムが異常に難しくなる。 MMOとかどうやってんだ。
>>10 通信も描画も計算処理も一緒に書いてないか?
オンゲになるとどうしてもある程度の抽象化が必要になってくるよ。
俺は2つスレッド立ててやってるよ。
◆通信スレッド
1.送信キューに貯まっているものを送信
2.受信
3.受信したデータを処理キューに放り込む
4.1へ戻る
◆ゲーム進行スレッド
1.処理キューに貯まっているものを処理
2.ゲームパッド等の入力
3.通常のゲーム進行計算
4.送信しなければならないデータを送信キューに放り込む
5.描画
6.1へ戻る
描画も分離して本格的に3コア使うくらいのものを作りたいのう。
12 :
デフォルトの名無しさん :2009/08/27(木) 20:09:30
Quake 3のソースコードとか見れば役に立つと思う。
13 :
デフォルトの名無しさん :2009/08/27(木) 21:51:45
ここはシェーダースレです シェーダー以外の話はするな
あまりスレッドをボコボコ立てるとメモリアクセスの排他処理がしんどい つーかそこがボトルネックになって遅くなる気がするが…
ゆくゆくDirectXでゲーム作ろうと思うんだけど WindowsAPIの勉強はほどほどにしていいっすかね
WindowsAPIを使ってゲーム作る本やサイトがあるんで ゲームプログラミングの練習のために興味はあるんだけど・・・ やりたきゃやれって感じすかね?
>>15 いいと思う。
DirectX使うとWINAPIはほとんど使わないからな。
ウィンドウが作れたらさっさとDirectX行って良いと思う。
>>17 断言されて迷いがふっきれた。ありがとう
WinAPIはほどほどにするよ
WinProcまわりはWindowsの老害って感じ。 まあDirectXに移ってから苦労しても苦労は変わらないと思うけど。
理解できないものは老害
>>13 認定してやろう。
お前は自治できてない自治厨だ
シェーダー使う事こそがゲームプログラムだろ シェーダーも使えない奴はいまだに原始的な手法でやってんの? そんな低脳にはゲームプログラマ名乗って欲しくないねマジで
>>23 ごめんね、いつまでもPS2やPSPで遊んでて(homebrew的な意味で
>>23 ここはお前や俺たちの歪んだ妄想をぶちまける場所じゃなくて質問者に回答するスレだからね?
わかってまちゅか?
>>24-25 明らかにおかしいからスルーしろ。
>>23 は煽るためにシェーダ云々書いてるだけだろうし、
本気で書いてたらキチ入ってる。
誰もゲープロ名乗ってないのに名乗って欲しくないとか書いてるし、
名乗って欲しくないとかゴミクズが自分の願望書いてるだけだし。
>>14 俺もそれが気になってスレッド立てたくない
俺のは
>>11 のに近いがシングルスレッドでやってる
まあでもこれからはマルチスレッドの時代なのかな
読むだけなら排他を気にする必要ないよ。 共有資源に書き込むことは少ないし。
Update Draw繰り返すやり方ってタイルベース・ターン制のゲームに会わない気がする
>>28 そうなの?
読んでる最中に書き変わったらバグ出そうな気がするんだけど…。
各スレッドのゲームループの最初と最後にクリティカルセクション食らわせればOK。遅くなるって言ってる人は変数にアクセスするたびに食らわせてるんじゃないの?それだと当然重くなる。
基本的な事ですが質問させてください。 オブジェクト指向でゲームを作る場合 monsterクラスなどを派生させて、様々なモンスターを作るのはわかるのですが、 STGやアクションなどの動きや敵(オブジェクト)の多くなるゲームでは いつ、インスタンスを生成してるのでしょうか? (弾やエフェクトやモンスターのインスタンスをその都度生成するとカクついてしまい・・・)
最大数を適当に決めてシーンの初めにまとめて生成。 ゲーム中は生成ではななくそこのプールから借りてきて使い終わったら破棄ではなく返却する。 最大数を超えたらその時はプールするサイズを動的に拡張して どっかに最大いくつ使ったかを記録しておいてあとで調整する。
つまりテスト段階でそれぞれのインスタンスの瞬時最大使用数を取得できるようにしておき、 調節時に、シーン毎にプールする数を設定させるという感じになるのでしょうか?
スレッドに自信ある奴のほとんどは理解してないだけ
コンシューマならメモリサイズは固定なので上限をすべて決めてゲーム開始時に確保しておく
37 :
デフォルトの名無しさん :2009/08/29(土) 01:02:03
理解してる奴のほうがほとんどだろ
このスレ見ても理解してない低脳は
>>35 くらいなものだし
そういうつまんない頑張り方はやめようぜ
誰も説明できないのかw
生成と削除のオーバーヘッド 実行時の切り替えにかかるオーバーヘッド クリティカルセクションとかうまく使わないとメモリ上のデータが不整合起こす こんなもんか
>>14 マルチスレッドの素人…同期すべきところで同期せずにバグる。
マルチスレッドの凡人…同期変数に頼り過ぎてプログラム面倒&パフォーマンス低下。
マルチスレッドの達人…上手に設計して同期変数を必要最低限に抑える。
パフォーマンスも最大化される。
一人でつくってればそれもありえるがな
安全なプログラム作りたいならAdaでも使え
お前が無能だから安全性考えなきゃいけないんだよ
47 :
デフォルトの名無しさん :2009/08/29(土) 22:13:51
Windows APIやDirectX無しでC言語でグラフィカルなゲームって作れないの? いつもWINAPIで作ってるんだけど、なにかに頼りっぱなし&他処理系へ移植性がないってのが なにか納得できないんだが・・・
SDK使っとけ
49 :
デフォルトの名無しさん :2009/08/29(土) 22:20:12
アセンブラでin&outを使って直接操作しとけ
SDLだ
TDLだ
gtkつかっとけ
53 :
デフォルトの名無しさん :2009/08/29(土) 23:07:21
3Dor拡大縮小・回転処理を高速処理したいならOpenGL+GLUT or OpenGL+SDL もしくは自前の描画ライブラリを作ってSDLと使うか。 ソフトウェア描画でも手で最適化すればインラインアセンブラ無しで 150MHzでサクサク動く(解像度が低い場合)。 3Dor拡大縮小・回転処理がいらない場合SDLが最適だと思う。 ソースコードをほとんど変更せずに、ほとんどのアーキテクチャ・OSで プログラムを動かすことができる(再コンパイルは必要)。
なんでC言語にこだわるかな。Flashにすればどこでも動くのに。
つーかロジックとデバイス依存をとりあえず切り離しておいてから考えようぜ。 デバイス依存の部分をSDLなりプラットホームネイティブにするなりすればいい。
>>54 ActionScriptで大規模ゲーム書く根性があるならやってるさ
SDLやGLUTっていてる時点で商用レベルの話ではないと思うけどね
ActionScript酷すぎだろアレ HSP並に何も考えて作ってないんじゃねえのかっていうくらいうんこ仕様 最近のJava風なやつは少しはマシそうだが、それなら最初からJavaにしとけよって感じ
silverlightでいいだろ
DirectXってCじゃないとできんからなぁ
>>60 C#だろうがVBだろうがJAVAだろうがHSPだろうがDirectXは使えるぞ
なでしこ(笑)とかもかなり頑張れば使える
>>28 甘いな。その考えは。
読むだけでもちゃんと排他をしないと、読み始めと読み終わりで別のデータって事もあるぜw
自分でラッパー書くくらいならOpenGL使うだろjk OpenGLはどんな言語でも誰かがラッパー作るからな。
>>62 よく分かってないのだが、変数一個読むだけでそんなことが起こるの?
そらくらいはアトミックな操作であってくれないと困りそうな気が。
あー変数というと曖昧だった 組み込み型の変数と言いたかった
>>65 構造体とかのある程度のサイズを持つデータなら一発でおかしくなる。
CPUのレジスタと同じ長さのデータならもしかしたら助かるかもしれない。
想像以上にレベル低いw
>>67 いや構造体とかじゃなくてもっとプリミティブな組み込み型の場合で問題があるのかと気になったのだけど、
共有資源に対するアクセスという話でイメージしているものが少し食い違ってるようなきがしてきた。
x86系でも昔の奴は32bitがアトミックじゃなかったと思うし、 今でも__int64はチップ(ATOMかCeleronかAthronか)によって違うかもしれない。 そのCPUで大丈夫でも他のCPUに移植したときにまずいかもしれない。 組み込み型変数ならアトミックであると勘違いしている時点で経験が足りない。
確かに言われてみれば CPU によってその辺はまちまちか とりあえず読み込みだからと安心しないことを心がけよう
おめーアホだろ
>>70 >プリミティブな組み込み型
>共有資源に対するアクセス
何いってんの? そんなん言語から見た話で、
CPUにとっちゃメモリーアクセスをレジスタ介して行うときに何回で行うかって事に尽きるのに。
そのあいだに割り込みや他のプロセスやハードウェアそのものでそこを書き換える奴がいるかどうかの問題。
>>75 まぁそう声を荒げずに
良い事書いてある記事のURLでも貼って色々読ませたほうが時間の節約にもなるし論争にもならない
キャラクターAがキャラクターBに攻撃して インパクトの瞬間まではBは待機、インパクトの後はダメージモーション という処理があるんですけど これってキャラクター同士がお互いの情報を知らないような設計のばあい キャラクターAが管理クラスに攻撃情報(位置・攻撃力・その他パラメータ)を渡して 管理クラスが次のupdateでその情報をキャラクターBに渡すみたいな感じでやってるんでしょうか?
AとBがクラスとして実装されているなら、ダメージモーションをさせる為の関数を持たせるという方法もある
Bを「待機」という曖昧な状態にせずに 「攻撃受け中」とかにすればいいんじゃないの
え? キャラクタの処理クラスがいきなり相手のキャラクタ処理クラスに作用するって、おいwww 根本が間違ってるだろ。
メッセージ送ったと思えばそうでもない。
そんな直接作用させたら、全体から見たときの各状態の辻褄が合わなくなるぞ。
class BaseChr { public: virtual bool interact(BaseChr &ch) { if (ch.posx() == posx() && ch.posy() == posy()) return true; } int posx() const; int posy() const; int power() const; protected: enum state { state_idle; state_damaged; } enum state m_state: };
class ChrA : public BaseChr { public: virtual bool interact(BaseChr &ch); }; class ChrB : public BaseChr { public: virtual bool interact(BaseChr &ch) { if (BaseChr::interact(ch)) { m_state = state_damaged; int other_powe = ch.power(); ... } }; ChrA a; ChrB b; a.interact(b); こんな感じのことをやりたいのだろうか?
そこは普通ジャッジのためのクラスなり関数なり 超頑張ってダブルディスパッチなり
セルの種類が ・ただの床 ・壁 ・水路 ・マグマ キャラクターの属性が ・通常 ・飛行 ・幽霊 ・水棲 飛行と水棲は水路のセルに入れる 飛行と幽霊はマグマのセルに入れる 幽霊は壁のセルに入れる みたいな感じの設定があるとします セルもキャラクターも継承を使ってポリモーフィズム的に実装したとします セルはキャラクターを、キャラクターはセルの情報を持っていません (さらにキャラクターの属性、セルの種類は今後増えるかもしれません) この場合キャラクターが移動先のセルに移動可能かどうかを判断するいい方法はありますか? RTTIは結局if-elseが増えてポリモーフィズム的な設計の意味がなくなるので使いたくありません ダブルディスパッチは基底クラスに変更を加える必要が出てくるのでこれもなるべく避けたいです
>>86 セルとキャラクタ属性を判定するクラスを作ればいいじゃないか。
もちろん属性クラスがもっと前に存在してて、その継承クラスとしてセルクラスとキャラクタクラスがあるんだけどな。
キャラクタクラスもセルクラスも属性クラスから継承された内容は知らないんでってう感じ。
セルと属性にID振って表で管理が一番楽
>>88 その「表」を誰が管理判定するかって問題なんだけどね。
(^w^)ウッヒョー!
一元化して管理するクラスを作る事で、制作上の作業面での管理もプログラムの動作的な管理も両方出来るって事で。
基底クラスに手を加えられないほど複雑な構造になってるのかなぁ…
複雑ではないんですが、あとからDLLでサブクラスのキャラを追加 とか目論んでるのでベースクラスはいじりたくないのです
でもどうせサブキャラもセルと属性でごにょごにょしなきゃなんないんだろうから…ねえw
95 :
デフォルトの名無しさん :2009/09/03(木) 03:07:42
ビット? 論理和か?
どっちかというと積じゃね?
ただの床にはどれも入れない、とwww
ビットじゃ足りなくなるだろうし… これはデータタイプの問題より、比較するコード埋め込み場所の問題だけどな。
100 :
デフォルトの名無しさん :2009/09/03(木) 18:41:59
// 実際に使うときにはもっと改行を増やして下さい /* cell.h */ #define CM_NONE 0x00000000 #define CM_WALL 0x00000001 #define CM_HOLY 0x00000002 #define CM_FLUID 0x00000004 #define CM_HOT 0x00000008 class cell_t{ public: virtual int get_material()=0; /*略*/}; class floor_t:public cell_t{ public: virtual int get_material(){return CM_NONE;} /*略*/}; class wall_t:public cell_t{ public: virtual int get_material(){return CM_WALL;} /*略*/}; class waterway_t:public cell_t{ public: virtual int get_material(){return CM_HOLY|CM_FLUID;} /*略*/}; class lava_t:public cell_t{ public: virtual int get_material(){return CM_HOT|CM_FLUID;} /*略*/}; /* player.h */ class player_t{ public: virtual bool is_acceptable(cell_t *); }; class human_being_t:public player_t{ public: virtual bool is_acceptable(cell_t *c){ return !(c->get_material()&(CM_WALL|CM_FLUID|CM_HOT)); }}; class jetman_t:public player_t{ public: virtual bool is_acceptable(cell_t *c){ return !(c->get_material()&CM_WALL); }}; /* 以下略 */
>>100 だから、ビットでしかも条件判定文の羅列にすると、仕様変更や追加があったとき、死ぬるぞw
テーブルにしてコードをマトリックス状に並べるのが一番いい。
変更が面倒になったら、プランナーにそのまま渡しちゃえばいいんだよ。
可読性や保守作業さえ考えなければビット演算は大いに楽しめるものだよねw
103 :
デフォルトの名無しさん :2009/09/04(金) 01:23:18
>>103 不用意にビット演算入れて回収騒ぎになる馬鹿
フラグの数が限定されていれば、ビット演算のフラグ管理ってむしろ可読性高いだろ
痛い目も見たことがないんだね。経験不足。 ビットフィールドのほうがまだ可読性や安全性は高い。
痛い目って例えばどんなのだろう?
108 :
デフォルトの名無しさん :2009/09/04(金) 09:45:39
>>106 みたいな奴と同じチームで開発してて、
ビット演算使ったら殴られたとかじゃね?w
普通にやっていれば痛い目なんて遭わない。
ビットフィールドなんて論理和か論理積で一通り難なくこなせるっしょ。 バグ混入の隙がわからん。
条件が変更される事が最初から分かってるんだから、 そのときに絶対別の事で忙しいと予想されるプログラマじゃ無くて、 只のアルバイトとかプランナーに直接弄らせる方法を取れって事。 ビットフィールドの条件判定の羅列を素人が手出せるワケねえだろう。 テキストで作ったテーブルとかそんな感じのデータならまだ弄れるからな。
switch-caseで十分
ビットフィールドは、他の型にキャストして操作とかするバカが いるから侮れない。 struct { char a : 7; char b : 1; } x; *(char*)&x &= 0x80;
ほほお、ビットフィールドの内部構造がコンパイラ依存だと言う事を知らないのは、恐ろしい事だねぇ
ビットフィールドはCのコードとアセンブリコードの対応が不鮮明になりがちだから使いたくないな デバッグはアセンブリコードに限る
今時のゲーム環境で、ビットビットと騒いでるのは哀れに感じる。
それはものすごく理解できるが、それができる人がこんな所で騒いだりしないだろ。
大量のAIを作動させるときは、条件分岐なんかでCPUのパイプライン処理を止めたくないからビット演算を惜しみなく使う。 これはいいよな?
AIで実際に使われているのがあるぞ。将棋AIの上位のシステムのほとんどが ビット演算で処理してる。マルチCPU+ビット演算だ
そりゃゲームのルールがほぼ固定されてりゃ使うわな
結論を言えばシェーダー最強だな
4k introとかやろうと思ってるのでいろんなところ物色中だったり、騒いだりはしないんだけどね
>>110 ふだんwinapiでしかビットフィールドは使わんが何かあったっけ?
フラグ立てるのとフラグ判定くらいしかしないのだが。
125 :
デフォルトの名無しさん :2009/09/04(金) 20:51:35
まだシェーダ厨が混ざってるな。 面白いと思って書いてるんだろうけど 面白くないし頭悪そう。
シェーダーはCompute Shaderを待ちきれない それよりかはCUDAで遊ぼうぜ
127 :
デフォルトの名無しさん :2009/09/05(土) 10:23:20
最近スレッドに取り組んでいる者です。 Q1.スレッドは一つ立てるとすでにメインのスレッド(main文)があるから、2スレッド動いているとうことで、 スレッドを呼び出さないときより処理は速くなりますか? Q2.ゲームの描画をスレッド化するとき、描画がキャラ部分、文字、マップに分かれていたら、それらをそれぞれ一つずつのスレッドにするのか、 それとも描画部分をまとめて一つのスレッドにするのかどちらが一般的でしょうか?
一つしかないリソース相手にするなら一つの所でやるのがベストだけど、 どうせOSが吸収してるから好きにしろよ。
Q1の質問を日本語訳すると、シングルスレッドよりマルチスレッドの遅いのでしょうかということかな。 スレッド切り替えのオーバーヘッドを考えれば遅いと言えるけど、 シングルスレッドで並列処理を組むとそれなりにオーバーヘッドのある実装になるので、 上手に実装されていれば大差ない。 あとマルチスレッドのほうが一般的には実装がシンプルになり、シングルスレッドはスパゲティ化しやすい。 そしてスパゲティなコードは遅いから、マルチスレッドの方が現実的には早くなると思う。 Q2 描画部分はまとめて1スレッドが一般的では。 MTみたいに描画をマルチスレッド化する物は、キャラの種別ごとに分けるのではなくて、
スパゲティであることと処理速度は関係ないだろ。
まぁシンプルに設計できる奴の方が速い処理を書けるということは多そうだけど。
>>127 アムダールの法則を調べてみるといいかも。
131 :
デフォルトの名無しさん :2009/09/05(土) 14:19:54
(以下、デュアルコア前提) A1 膨大なオブジェクトの演算を必要とする場合、遅くなる場合があります。 そのような場合、メモリのバンド幅がネックとなります。 ただし、それに対して描画が著しく高速な場合、速く見せることができます。 この方法は、描画がDirectXやOpenGLによりハードウェア処理されている場合のみ有効です。 まず、描画スレッドのフレームレートが計算スレッドのフレームレートより 高くなることを想定します。そして、計算スレッドでフレームを処理する際、 各フレームの履歴を2, 3フレーム残し(おそらくリングバッファ)、 描画スレッドでは最後のフレームを描画するのではなく、 直前のフレームとその前のフレームを線形・キュービック補間して描画します。 描画も計算も十分に速い場合、マルチスレッド化は常に両方のコアを作動させる場合があり、 省エネに反する場合があります。
132 :
デフォルトの名無しさん :2009/09/05(土) 14:31:21
A2 その場合、重なり合いの関係でオブジェクト種ごとに分けるのではなく、 ピクセルやスキャンラインごとに分ける事になりますが、 * 描画がDirectXやOpenGLによりハードウェア処理されている場合 「描画」処理そのものをスレッドで分けても意味はありません。すでにGPU内で 相当な数のマルチスレッド処理で描画しています(GPUはCPUより作動クロック数が 低いですが、同時にものすごい数の描画処理ができるので、結局はCPUより速くなります)。 ただ、「描画のための計算」、たとえば行列演算やパーティクルのポイントサイズ計算を マルチスレッド化することは可能です。ただし、それなりのプログラミングテクニックが 必要であり、実装によってはパフォーマンスが低下する可能性があります。 * 描画がソフトウェア処理されている場合 GPUの真似をしてCPUでもマルチスレッドで描画したとしても、無駄です。 マルチスレッド化よりもMMX, SSE, WMMX, AltiVecを使用したほうが数倍高速です。 なお、「描画のための計算」はハードウェア処理と同じく、マルチスレッド化 できない訳ではありません。
133 :
デフォルトの名無しさん :2009/09/05(土) 16:22:25
>>128 ~132の皆さんありがとうございました
なるほどマルチスレッドを生かすにはそれなりのテクニックがいるとうことですね
131,132さんは難しすぎて分かりませんでした。
またお願いします
windowsプログラミングだとそうせざるをえないしな。>マルチスレッド メッセージループから分岐させて重たい描画処理させるわけには行かないし、 フレーム管理もカオスになる。 もっとも、リアルタイムな描画を必要としないなら話も違うが。
OpenMPみたいに使う側にそういうあれこれを意識させないライブラリを使うのも一つの手だが。 ゲームには向かないなぁ。
OpenMPってそんなライブラリだったか?
>>136 纏まった処理を、複数のスレッドで分業させるんだから>135は間違っちゃいない。
意識はさせまくりだった気がするが
139 :
デフォルトの名無しさん :2009/09/06(日) 09:59:15
最近のプロセッサは速度頭打ちになってるからマルチコア化で誤魔化してるにすぎない こんな体たらくだから上級ゲームプログラマはシェーダーに頼らざるを得ない
再配布可能なSE集公開してるとこおせーて
142 :
デフォルトの名無しさん :2009/09/06(日) 13:20:09
セーブ・ロードのオブジェクト設計喪前らどうしてますか? やっぱりmementoパターン?
mementoパターンで何を解決したいんだ
各クラスのカプセル化を保持しつつ、各オブジェクト状態の保存・復元。 アクセッサは論外としても、mementoも結構面倒そう。 それ以外の匠の技があるのならぜひ聞きたいと思ったのだが。
確かコーラに入れるといいんだよな。
おれはGoFパターンの中に解決方法はないと思うけどね。 boost::serializationみたいなもの?
それはメントス。凄くおいしくなるんだよね。
boost::serializationを使うなら構造体をそのままバイナリで保存した方がまし。 なんでコンテナの要素数を出力する必要があるのかと問い詰めたい。
ポインタ持ってるようなクラスをそのままセーブできないでしょ。
151 :
デフォルトの名無しさん :2009/09/06(日) 16:19:16
エンディアンの問題もある。
そんじゃXMLパーサ搭載してXMLにしてZIPで圧縮だな。
構造体そのままセーブとか、同じ事やりたいわけ?
ゲームデータのセーブごときにデザインパターンとか考えたこともないな
該当箇所だけ読み出したいとかなったときに無駄に苦労するからやめたほうがいい 後悔チンポ立たず
サムネイルとか進行度は別につけたほうがいいかも?
サンプルが少ないと思ったら確かに気にする機会はすくなさそうだなぁ。 SLGはセーブに必要なメンバが多数のオブジェクトに散らばりやすい。 他ジャンルなら確かにどうとでもなりそうだなぁ。
ライブラリの中の挙動が理解できないからわけわかんないコード書くやつって多いよね 自分の書いているコードも把握できないとか
キャラとかアイテムにクラス識別用のenumとか作るのって普通かな エンカウントするモンスターのフィルタを外部ファイルにおいておくとかする場合ほかにやりようは無いよね?
クラス識別じゃなくて、アイテム識別だろ? そこからコントロール用のクラスが呼ばれるんだろ?
アイテムとかコントロールとか突然出されても 意味が複数想定しえるから意味がわからん こういう人と仕事したくない
ゲー専の生徒さんか何かでしょう
ファクトリーパターンだな。
バカはまずシェーダーの勉強から始めろ
166 :
デフォルトの名無しさん :2009/09/08(火) 00:30:16
DxLib3.0誕生
シェーダなんて1時間もあればすぐに入門終わらせて入っていけるのに 無駄にシェーダ嫌いを産んでるからまずシェーダから入るのは正しい
シェーダーでゲームは面白くならない
シェーダーはゲームが面白くなる要素のひとつである
3.0って3D機能有るんだな
>>165 お前が消えろゴミクズ
ここは最初から最後までシェーダースレだ
DxLib3.0でもシェーダー使えるの?
>>165 言うだけ無駄。そのうち飽きるだろうからそれを待とう
>>171 シェーダー厨と言われた訳を考えようか
>>172 内部がDirect3D9になったから、やりようによっては使える。
ところで、「DxLib3.0でもシェーダー使えるの?」の「も」ってどういう意味?
以前のバージョンだと内部がDirect3D7だから使えない筈なんだけど
管理人さんがこっそりリリースしてたDirect3D9暫定対応版のこと?
>>167 ちょいと暴論じゃないか?
固定機能パイプラインの機能を一部置き換えるものだから、まず最低限必要な3Dパイプラインの知識が先だろう
つまり、ウィンドウ表示してデバイス初期化して行列設定して…というのが先だろう
その後シェーダーを学習させて、色々遊ばせるのがいいんじゃないかと思うんだが
3Dパイプラインにウィンドウやデバイスの初期化は関係ない。
サンプル書き換えて俺ってスゲーって奴ばかりだなw
>>177 それで十分
一歩でも前へ進めば後は惰性でもいける
そんなやつばっかw
ちがうな そんなことばっかなんだよw
Luaとかって使ってる? インタプリタパターンに興味あるんだけど難しいかな
182 :
デフォルトの名無しさん :2009/09/09(水) 03:44:16
シェーダ厨テラウザス ただの荒らしだな そんなにシェーダの話したけりゃシェーダスレに行くかスレ立てればいいだろ このゴミクズ …まぁゴミクズって言ったら失礼だわな、ゴミクズに対して
シェーダ
シェーダ
シェーダ
表面しか分からない奴より全体が分かってる奴のほうが使えるのは自明 さしずめ電子軌道の挙動を考慮できる奴のほうが高校レベルの問題でもつまずかないように
誰もそんな話してないのに。 シェーダーがウザいんじゃなくて空気読めない奴が鬱陶しい。 まぁわざとやってるんだろうけど。ネタだったらネタでもっと面白いのやれよ。
シェーダ
シェーダ
宇宙刑事〜
第三者的にみると、 軽はずみにウザいとか鬱陶しいっていう奴のほうがウザい。
わずか1ミリ秒で焼結を完了する。では、その原理を説明しよう。
まずマッチを用意します。
>>182 みたいなのがシェーダ荒らしの主犯だろうな
ID出ないのをいいことに自演やりたい放題
それはもはや東方厨並かそれ以上にたちが悪いなwww
>>194 が自演荒らしの主犯じゃね?
自演自演と書き込んで自分があたかも自演してないと言いたそうな感じが
シェーダをNGワードにするとすっきり
シェーダって見た目を加工する話だろ? このスレは見た目だけじゃなくてゲームシステムそのものを扱うんじゃないの? シェーダの話以外するなっておかしいよ。
話題が無いんだよ 空気悪いから気軽に書き込めないし
空気つっても
>>194 みたいな香具師が自演荒ししてるだけだしなぁ。
203 :
デフォルトの名無しさん :2009/09/11(金) 19:13:26
荒しじゃなくて頭悪いだけでしょ どこでもそうだけど、犯人探しを始めるとみんな疑心暗鬼になって嫌な雰囲気になるのは分かりきったこと 頭悪杉
>>203 まぁまぁ
夏も終わったし、そろそろ馬鹿も減るだろ・・・
毎年夏が終わっても厨房の余韻があるよなw
206 :
デフォルトの名無しさん :2009/09/12(土) 14:09:28
お前らゲームの話題投下しろよ。
なんかおすすめのプラットホームある? PSPやAndoridに興味あるんだけど
XBox
つまねーな
210 :
デフォルトの名無しさん :2009/09/12(土) 15:48:21
別にシェーダ厨じゃないんだが、前スレで屈折シェーダの話で 閉じた凸包のメッシュだと、光線が入るときに一回、出るときに一回 屈折すると思うんだが(回折云々はいらん) 単にhlslのrefractを使う方法だと、どちらか片方しか表現出来ない。 二回屈折させる方法は何かないか? 出来ればshader2.0で出来る方法がいいんだが。
法線を法線マップでやって 表側と裏側の法線を2回別のテクスチャにレンダリングしたら? とかテキトーなこといってみるテスト
あ、でもそんな面倒なことしなくても2回目の屈折率で作った画像から ピクセルを取得すればいいだけかもしれないなw
213 :
デフォルトの名無しさん :2009/09/12(土) 17:42:38
かなり無理矢理なやり方だが忠実。屈折率はxとする。全反射は無いものと仮定する。 1. あらかじめメッシュの中央にカメラを設定し、 屈折率を1/xとするシェーダーをメッシュに適用し、 キューブマップを作成。Zバッファも取り込もう。 2. シェーダーでhlslのrefractを屈折率xで使用しつつ、次のこともする * refractの結果から、光の進み方を決定。 * そして、さっきのキューブマップとそのZバッファを使用し、レイトレーシング。 *
そうかピクセルごと屈折率が必要かw
>>211-212 はハナから駄目だなスマンコw
で、考えたんだけど1回目と2回目の複合した屈折率をバッファに書き込む
屈折率マップを作ることでいけないだろか?w
とかまた言ってみるテストw
>>213 1パス目は、メッシュの表裏逆にして屈折シェーダでキューブマップ描画、
2パス目は、普通に視点から屈折シェーダ適用(1パス目のキューブマップ使用)
ってこと?
原理はさっぱりわからないが、試してみる。サンクスコ。
>>214 透過して観える景色、キューブマップに写っている画像が
無限遠に近いものなら、単純に2つの角度を足すだけでいいかな
とは俺も思っていた。
例えば、宇宙空間とか。でも部屋の中とかは近すぎて駄目だろうな。
>>215 >例えば、宇宙空間とか。でも部屋の中とかは近すぎて駄目だろうな。
意味がわかんね
2つ角度があるように思えるけど結局そのピクセルに対する屈折率って1つみたいなもんだろ?
この前提がくつがえるなにかがあんの?
広いとそれが消えるってのがよくわからん
ある物体のある地点Aから入った光がある地点Bから抜ける屈折率って1つに絞れない? 屈折率は絞れないなwスマンコw でも物体を通る前のベクトルAが物体をでた後のベクトルBになるだけならいけ・・・ないかw 駄目だなwスマンコw ああ、やっと広いと駄目な理由がわかったw
>>218 なあ?視線から物体まで伸びるベクトルはまっすぐだとして
物体から出た後で伸びるベクトルってまっすぐになるんだっけ?
なる
あ、まっすぐってちゃうよ こう視点から物体へのベクトルと平衡になるかっつー話だよ?
>>222 角度は、面の法線と屈折率とによって変わるから、必ずしも平行にはならない。
>>218 の遠い方のは、物体から出るベクトルは、出る位置におくのが本当は正しいんだけど、
出るベクトルを入る位置に置いても、殆ど同じ結果になるだろうから、それでいいんじゃないか、的な論。
実際、普通の屈折シェーダは、
>>218 の近い方のように位置と角度でサンプルしている訳じゃなくて
角度だけで近似的にサンプルしていて、考え方は、
>>218 の遠い方と同じ。
ただ、問題があって、出るベクトルを求めるのが難しい。出る面の法線が必要だがどうやって得るか?
出る面の法線だが、その物体に合わせたキューブ法線マップを作って サンプルするのが、良さそう。
視点から物体へのベクトルAに対してのベクトルBだけでいいんだから 必要なのって2次元的なベクトルBマップじゃないの? 1パス目でベクトルA→ベクトルB変換してテクスチャに書き込んで 2パス目で作ったもん使って描画すればいいんじゃね?
ポリゴンの頂点とボーンの動きについて分かりやすく解説してあるサイトない?
砲弾の動きを表したいんだけど 座標は普通に求められるんだけど 砲弾みたいに徐々に下を向くように飛ばすにはどうすればいいんだろ?
そこは普通に物理演算したら楽じゃね? 重力加速度を毎フレーム加える。 速度 += 重力加速度 * 剋條ヤ 位置 += 速度 * 剋條ヤ
229 :
デフォルトの名無しさん :2009/09/14(月) 14:05:57
飛んでってる最中の角度だったら角度が移動方向に従えばいいので ピッチ=atan(速度.y/sqrt(速度.x*速度.x+速度.z*速度.z)) or ピッチ=atan(速度.y,sqrt(速度.x*速度.x+速度.z*速度.z)) 重力により速度.yが下がっていくとピッチが下がり、 結果的に下を向く訳だ。
230 :
228 :2009/09/14(月) 14:16:03
あ、座標はわかってるのか。 これは失礼。
平面で考えてたからzがどこから出てきたのかわからなかったw
というか、そんな難しいこと考えずに 単純に速度ベクトルの向きにしとけばいいような
>>232 な
俺は数秒間、空いた口が塞がらなかったw
その向き=角度を求めてるだけじゃねーの?
流体力学の話じゃないのか? 砲弾の形によって飛距離や命中精度が変わるというような。 技術開発に多く投資すると他国より早く高性能砲弾を入手できるとか、そんなゲームじゃないの?
>技術開発に多く投資すると他国より早く高性能砲弾を入手できるとか、そんなゲームじゃないの? どんなゲームだよw
コサックスとか?w
一つのオブジェクトの状態だけを扱う Stateクラスってアリだと思う?
ないあるよ
メンバー変数でいいだろ常考
C++でぷよぷよ作ってるんだけど、設計に悩む。
ローグライク シューティング 格闘 アクション どれが一番簡単?
一生悩んでろ
シューティングでも横スクロールのグラディウスみたいなゲームからコールオブデューティーみたいなFPSまでいろいろあるし アクションでも横スクロールのマリオみたいなのからミラーズエッジみたいなのまでいろいろある
シューティングじゃない? 基礎は一通り詰め込まれているイメージがある。
入門ならインベーダーでも作れば。
いっそのこと弾幕インベーダーにしようぜ
248 :
デフォルトの名無しさん :2009/09/16(水) 01:15:43
やっぱシューティングだろ。 アクションは当たり判定がシューティングより面倒。 ただし3Dにすると結局シューティングも面倒。 もしくはシューティングと何かを組み合わせるとか(Paradroidみたいな)。
249 :
デフォルトの名無しさん :2009/09/16(水) 01:17:04
個人的にはFPSをおすすめする。 主人公をモデリングせずに済むんだぜ?
いっそのこと恋愛インベーダーにしようぜ
選択肢には無いが、テキストゲーが一番だろう。 文字列の操作に否応無しに慣れるから、ゲーム以外を作るときにも経験が活きてくる。 あ、今時Cの標準関数で文字列扱う人なんていませんか。そうですか
どういうこと? CUIベースのゲームのこと?アドベンチャーゲーム? CUIでなくても標準ライブラリの文字列操作関数なんて普通に使うし CUIならキモになるのは文字列操作じゃないよね
GUIでもアドベンチャーゲームでなくとも普通に使うな
文字列の指定位置から指定サイズ削ったり、 空白区切りの要素の指定番目を 得たりする関数を作っておくと便利。 それを応用して、ファイルの指定桁(要素)、行から、 上に書いたの文字列と同じような処理を 1関数でできるようなのも作っておくとさらに便利。
え〜、std::stringとかstd::stringstreamとか使えばいいのに。 車輪の再発名はいやん。
ちょうど作っていた所だから、 いきがって書いてしまったorz
俺もシューティングが一番簡単だと思うな。 当たり判定がどうとかは一回作れば終わりだからどうってことない。 問題はステージの作り方だよ。 シューティングは敵のでるタイミングを考えるだけだからな。
259 :
デフォルトの名無しさん :2009/09/16(水) 16:46:46
敵の登場タイミングはほぼランダムでいいんじゃね?
ランダムだと序盤でいきなり大量に敵が出てしまうだろ 何度も同じ場所を通る場合はイベントの進行に沿ってフラグで管理すればいい そうじゃないならフィールド上に最初から置いておけ
道中など飾りにすぎない
車輪の再発明でも表に出さないで自分で勉強目的なら別にいいんジャマイカ
まともな奴がするわけないだろ 韓国人みたいな奴に決まってる
物理の授業ってまさに車輪の再発明だよね 263の言うまともな奴ってどんな奴なんだろう?
物理の授業ってすでにある解決法を無視して一から作成するような内容だったっけ?
>>261 でも俺は道中以外ではボム使わないし
ボムのグラフィックこだわってた場合は道中もちゃんとなっててほしいよっ
>>265 少なくとも俺の高校は色んな事を実験で証明して、それから式を導いたんだけど
実験が上手くいかないとどうやっても理論値に一致しない罠w 重力加速度を求める実験ぐらいしか覚えてないが、あれには苦労した。
>>267 実験方法はだいたい決まってたんじゃないの?
そこから生徒に考えさせてたら車輪の再発明だろうけど
お前ら何のために物理の実験の話してんの?
車輪の再開発の是非のため 一度は自分で作ってみるのがいいと思う。 コピペで済ませて中で何をやってるか想像もできないレベルだと その関数のコストがどれくらいなのかもわからんし。
ゲームこそ車輪の再発明ができることが要求される分野だと思うんだが。 ワンパターンのコピゲーなら違うんだろうけど。
要はたくさん売れるゲームをどれだけ安く作れるかってこと 再発明が売れるゲームにつながっていればいいけどね
ビートマニアとかコード費ぜんぜん掛かってなさそうだよな 再利用ってかほとんど丸コピって感じだ 俺も開発楽で面白い同人ゲーで一発当てて続編商法でウハウハしたいぜちくしょう
ビートマニアは楽曲とかに金かかってるんだろ マニア向けのゲームだし、レベルの調整とか開発結構大変なんじゃね?
ここスレタイと内容ちがくね?
ゲーム関係のスレはこんなもんだよ
誰かがゲーム作ってそれを周りがフルボッコしつつも最後に1行アドバイスするみたいな流れになれば活性化するよ
ゲームプログラムの範囲ってどこまでなの? 間接反射を考慮する場合のイラディアンスの式が良く分からないんだけど そういう質問ってここでも大丈夫ですか?
280 :
デフォルトの名無しさん :2009/09/18(金) 19:49:32
いいと思うよ
詭弁まで韓国人に似てるし 日本はもうダメだな
聞きかじりレベルがお似合い
ここで人の助言が聞けない奴が苦労自慢で オナニーしてるだけだろ
284 :
デフォルトの名無しさん :2009/09/19(土) 11:26:19
衝突判定について質問です。 ボックスと無限円柱の当たり判定はどうすればいいでしょうか? ボックスと、無限ではない唯の球や円柱の判定は、 ボックスを6平面に分割して(実際は3平面ですが)、それぞれの平面との距離を測ることにより 実現出来ていますが、無限円柱のような無限に伸びる形状だの 先の方法の破綻パターンに多くの場合接触してしまい、常に接触しているとなってしまいます。
円柱に垂直になるローカル座標にもってきて後は真上からみた 2次元判定じゃん
>>285 その二次元判定はどうしますか?
3Dのボックスから2Dの多角形を作って
判定するのですか?
287 :
デフォルトの名無しさん :2009/09/19(土) 16:11:53
>>286 x^2 = y^2 + z^2
駆使すれば良いんじゃない?
>>288 教えて頂いた関数を確認したところ、
線とボックスが接触しない場合、距離=0で返すので
これをそのままは使えませんが、考え方は理解出来ました。
つまり、ボックスと直線の距離に帰着するんですね。
ボックスと直線の距離は、、、
案は出来ましたが、相当重いですねコレ。
やべ、質問間違えた このdistanceはRayの始点からの距離だから、円柱の半径とかとは全然関係無いよ AABB直方体でも6頂点全部を平面に射影しないとダメだわ
>>286 なんでそんなに馬鹿なのにゲームなんて作ろうと思ったの?
1のこと聞いたら10とはいかないまでも3か4ぐれーは学べよ
>>290 確かに、distanceはそっちでした。
私も間違えましたw
>>291 円柱の平面に射影させるとして、その後どうするつもりなのか
知りたかっただけです。
>>290-291 convex closureは角度ゆるい順に並べていけばいいので
頂点数をnとすると、O(n)でいけます。そんなに重くないのかもしれませんね。
一応
>>289 の方法も書いておきます。私はこれでいきます。
@直線とボックスの交差判定をする -> 交差すれば終わり
Aボックスの12辺と直線の最短距離から、最も短いものを候補にする。
ただし、辺の範囲(t=0~1)に収まっていないものはパス。
Bボックスの8頂点と直線の最短距離も加えて、最も短いものを候補にする。
どうやらO(n)でなくてO(n log n)らしい、、 ま、n=6なら大した違いはないか
色々手間かけてるけどボックスの真ん中貫通されたら判定できないんじゃね? Ray判定加えるか、制約条件をつけないと
296 :
もう時間はない。日本消滅法案可決まで後1年 :2009/09/20(日) 12:11:36
行政書士兼社労士 黒田大輔
http://www.youtube.com/watch?v=Loiu6D_Hyvs ←2015年に中国に軍事侵略され日本人虐殺
http://tsushima.2ch.net/test/read.cgi/newsplus/1253398565/601-700 小沢が外国人参政権付与に、通常国会で意見集約へ ←売国行為だけはスムーズ
あなたがたは知らないでしょうが、日本は今崖っぷちです。もう後少しで朝鮮・中国に乗っ取られます
マスゴミ(テレビ・新聞)は既に在日コリアンの支配下にあるからこれらの恐ろしい売国の実態を報道しません
民主党が国会で通そうとしている法案
外国人参政権・・・中国・朝鮮人に参政権を与える法案、これが通れば議会に日本を滅ぼす朝鮮・中国人を送られ、日本終了
人権擁護法案・・・日本人の言論の自由を奪う法案、2ch閉鎖、ネット情報の反日政府介入、また韓国人と言っただけで差別と見なされ逮捕
沖縄ビジョン・・・この2012年までに沖縄を中国に返還するという法案、3000万人の中国人移民を受け入れおきなわ終了
国籍改正法案・・・これは既に去年国会でカルト公明党が通しました(爆笑)マスゴミは一切報道しませんwwこれによって今日本国籍取得を請願するだけで容易に日本国籍取得が
できるようになりました。既に何人もの中国・朝鮮人が帰化し世界中で日本人を名乗って犯罪を行ってまります(これは日本人の印象を悪くするための工作活動です)
移民受け入れ法案・・・日本本土に1億人の朝鮮・中国人の移民を受け入れて、日本人文化、日本語、土地、技術すべて奪われます
そして反日教育を受けた彼らは日々日本人を一匹残らず殺すでしょう(現在チベット・ウイグルで中国は民族虐殺してます。これが日本で起きます)
生放送中 売国奴である民主、社民、公明、自民を糾弾せよ!
9・20日本が終了する外国人参政権、3000万人中国朝鮮移民断固反対!名古屋デモ
http://live.nicovideo.jp/watch/lv4050986
>>295 円柱の平面に射影させる方法は、
6辺を2D平面として判定するので問題ないです。
>>293 の方法は@で対応します。
3Dから2Dに写しても三角形は三角形だろw
6辺の凸ポリゴンを12枚の3角にするとか ゆとりマジぱねー
>>299 6辺とか面倒じゃね?
円と三角形の当たり判定ルーチンが会社のライブラリにあるから(笑)
それにもってきちゃうぜ
>>299 2D平面とは、ax + by + c = 0の平面として扱うということです。
ax + by + cz + d = 0は3D平面でしょ。その2D版ですよ。
ま、ゲーム関係のスレは
大体こんぐらいのレベルですかね。
いまどきのゆとりは妄想すらまともに書けない
303 :
デフォルトの名無しさん :2009/09/20(日) 13:10:07
以前から疑問に思っていたのです Soft で作成した Game program を編集する時に使う言語… 一般的に何言語を使うのですか?
とりあえず日本語を学ぼうぜ!
305 :
デフォルトの名無しさん :2009/09/20(日) 14:33:53
サイタ サイタ サクラ ガ サイタ
コイ コイ シロコイ
バイナリ解析の事言ってるような気もするが編集?なのか 編集が何を指すのかよく分かんないです
RPGツクールで作ったゲームの編集方法が知りたいんだろ
>>303 の質問は恐らくこうだろう。
「ゲームのプログラムを作成するのに広く使われている言語は何ですか?」
改造にしろ何にしろ日本語が使えないと。
>>293 だから座標変換して2D判定になったら
円と三角形の当たりルーチン(ネットで検索すれば落ちてる)を使えばいいだろ
立方体は2Dにした後なんらわけわからん形してるけど所詮三角形の集合体という前提は変換後も崩れてないわけだし
バウンディングボックスのメッシュぶち込んだら当たり判定できるよ
300が会社で使ってるから満足だろw マジ救えね
まぁプレイヤーにとって不自然じゃないならいいんじゃね
結局のところ、どんなに意味不明なアルゴリズムを使っていようがどこまで汚いソースコードだろうが、大衆が面白いと思えるゲームは売れるんだよね
アルゴリズムが腐ってるゲームが面白くなる事はまずないけどね。 そういうゲームは漠然とつまらなさを感じさせる動きをするからね。
意味不明かどうかは組んだ奴が説明できるかどうかにかかっている
アルゴリズムが腐っている割に面白いものは無いわけじゃないぞ たとえば「弾が乱数で微妙にぶれる弾幕」 直進弾的な挙動だが、動きがきもちわるい。かすりに行くなんて自殺行為。でも調整次第では意外とおもしろい
高周波ブレードかよ
ロケットなんかは本物でもぶれまくって飛んでいくしな
アルゴリズムの話に 面白いかどうかとか 売れるかどうかとか これだからバカは嫌だ
自称頭いいプログラマさんがお金を稼いでくれればいいんですがね
>>321 ゲームを作るならプレイヤーが居なけりゃしょうがないが、プログラミングによる知的自慰行為をするだけならそれでもいいな
ゲーム作りも義務でやるんじゃなければ、自慰行為であることには変わりないわけだが。
ユーザーなきゲームプログラム
ここはゲームプログラミングのスレであることはスレタイを見れば確定的に明らか
面白さとか販売本数とかは正直デザイナチームの力が99%だからなぁ
売り物でも自慰行為の産物でもどっちでもいいんだけど アルゴリズムと、面白いかどうかとかそういう訳のわからんもんが はなっから結びつかないんだって。 なぜなら、アルゴリズムとは解くべき問題は決まっていて 問題を解くまでの手順のことを指すからだ。 大体、面白いだの面白くないだの 売れるだの売れないだの、プログラム技術板で 持ち出してくるんじゃねーよ、ヴァカ
おまえらちゃんと作らないとWiiのメジャーみたくなっちゃうぞ
>>328 で、どういう当たり判定を実装すればいいんですか
幼稚なスレだという事が解って良かったじゃないか 何処かで良いメーリングリストでも立てろ
おまえらバグバグなゲームしか作れなさそう
ちょっと誰かIOCCCで入賞できそうなプログラム書いてみてくれ
結局こいつ等の言う良スレって何の知識も
技能も無い奴が、この程度
>>333-334 の事をして
もてはやしてくれるスレの事を言ってるんだろ
じゃあそろそろシェーダーの話でもしようか
337 :
デフォルトの名無しさん :2009/09/22(火) 02:01:30
DirectXを使わずにグラフィカルなゲームを作れる気がしない。
シャーダーはDirectXのスレのほうが向いてるだろ
オブジェクト指向以外のプログラムが理解できません Cでゲーム作るとかどうやっているんですか
モノの管理が面倒になるだけでオブジェクト指向じゃなくても基本は変わらんでしょ むしろオブジェクト指向しか知らずにゲームを作るっていうのが どういう考え方なのか興味深いんで教えてくれませんか
>>340 関数ポインタ使いまくり。
要するに、Cでオブジェクト指向的なことをやるんだけど。
>>328 激しく同意
ここ最近やばいぐらい頭の悪い奴増えたよね
日本語が駄目なのもそうだけど
脳みそが普通の人間レベルの思考ができないってのはどうなの?
っていう奴が増えた
アルゴリズムと面白さなんてまったく関係ないのに
わざわざ出して話すること自体もう脳みそが腐ってるとしか思えない
質問も煽りもテンでズレててちょっと心配になる
本当に全く関係ない話題をいきなりしゃべりだすの
ヤバイってお前等w
スレタイにゲームって単語が入ってる時点でまともなスレになるわけないのに。
>>343 結局悪口に終始して中身のあることを全く言ってない件について。
もちっと技術的な話したら?
私は少なくとも悪口は言ってないよ。 掲示板利用の最低限のマナーは守ろうね、という話をしただけ。
2ちゃんねるでいまさらw
↑これゆとりジョークだから真にうけないで ブラックユーモアが理解できないとかよくあるだろ
>>340 クラス、仮想関数の宣言マクロで実現してCFrontを再発明。
その次はSTLもどきコンテナをマクロで実装。
352 :
デフォルトの名無しさん :2009/09/22(火) 16:31:55
頭おかしいのが湧いてるようだがどうせシェーダ厨だろ。 このトータルプロデュースの時代にシェーダしか使えないものだから どこにも雇ってもらえず2chで暴れてストレス発散してるんだろ。
OpenGLは学術的な研究用だったか何だったか忘れたが ゲーム用途ではなかった気がする。 まぁ現実にはゲーム開発にバリバリ活用されているわけだが。 個人的にはDirectXみたいに音声とか入出力とかも統合された環境が良い。
OpenGLなんかで開発したら、 LinuxとかMacとか使ってる愚民が移植しろだのオープンソースにしろだのうるさいよ。
355 :
デフォルトの名無しさん :2009/09/22(火) 17:45:40
M$脳多すぎ 友愛されちまえ
356 :
デフォルトの名無しさん :2009/09/22(火) 17:48:10
>>304-310 レス では無い様ですが? どうも…
何の Game だったか… 取り敢えず古い Game です
昔 Game data を打ち込んだ事は在るのですが zero と
実行 () の見分けが付かなくて動作してくれなかった事が在ったのですが…
現在の file はもっと複雑なのだろう事は理解しました…
Game を創っていると話していた者が Soft を使うと言っていたので少し質問してみた訳です…
因みに RPGツクール は遣らないですね…
357 :
デフォルトの名無しさん :2009/09/22(火) 17:57:10
>>356 意味わかんねーからレスできねーんだよw
358 :
デフォルトの名無しさん :2009/09/22(火) 18:01:25
359 :
デフォルトの名無しさん :2009/09/22(火) 18:15:03
だったら板違いだな 改造板あるだろ
361 :
デフォルトの名無しさん :2009/09/22(火) 18:29:53
>>359-360 態々 どうも…
通常 tech は programming の質問に使用して居りますので…
一応 Game program に付いての質問だったのでスレ違いでは無い様な気はしますが…
ルー大芝みたいなしゃべりやめろw
363 :
デフォルトの名無しさん :2009/09/22(火) 19:12:14
>>361 ゲームプログラムってのは開発の段階の話で、
開発が終わってリリースしたものをどうこうってのは改造に当たる。
んで改造ってのは大抵プログラミングは使用しない。
改造は解析が中心だし、そういうものは専用のツールか何か使ってやるもんだ。
ルー大柴っつーか FM radio の DJ みたいなのを image して読んでたが。
365 :
デフォルトの名無しさん :2009/09/22(火) 21:50:03
>>363 レス どうも…
概要は掴めました…
release 前の開発時点の編集には programming は行うと言う事ですか…
改造をするつもりでの質問では無かったのですが?
ですが その様な印象を与える書き込み方だとは思ってもみなかったです…
366 :
デフォルトの名無しさん :2009/09/22(火) 22:14:28
>>365 改造じゃないのか?
じゃなんだ、一から作りたいの?
ファイル解析とかじゃねぇの 芸風がキモいな
エスパーしてみるぜ ゲームの作り方 ・ゲームの仕様を決める(specification) ・仕様にしたがって設計する(design) ・設計にしたがって実装する(programing) 使用するソフトはエディタや統合開発環境と言われるもの 使用するプログラミング言語はC、C++など ・プログラムをコンパイルして実効コードに変換する(compile) 使用するソフトはコンパイラ ・リリース >365はプログラミングとコンパイルがごっちゃになってるのでは ゲームをソフトで作成することはできない ゲームをプログラミング言語で実装して、それをコンパイラというソフトで変換するだけ
>>365 Please write your question in English if you can
because your Japanese is terrible and hard to read for us.
>>365 ネックをひねるようなレスばかりで
何をしたいのかすらよく分からない。
落ち着け こういうの巻き割りダイナミックだ
>>365 「編集」ってすでにあるものをどうこうするイメージ。
だから改造だと思われたんじゃないの。
どうせ fishing なんだろ いいから shader の talk しようぜ together
be together, be together
踊るよ
376 :
デフォルトの名無しさん :2009/09/23(水) 14:09:26
それ、何とかって名前の歌手の歌だよな。
377 :
デフォルトの名無しさん :2009/09/23(水) 16:17:55
>>369 Sorry, I mine all you have to do is What sort of programming on Game source language revision if.
How usable language modification writing now? a query.
but, I judging by don't Japanese is terrible so much, difficult English too.
Japanese de OK.
>>377 Hey, your English is terrible as well as Japanese.
Both of them look like a result from computer translation software.
Are you Chinese or Korean?
You meant what kind of programming language we use to develop a game software, right?
C++ is very popular for gaming software industry in Japan. Some developers are still using C.
As far as I know Java is probably popular for a game software on cell phone.
Could it be an answer for you?
英語の読み書きもやばそうなのでいちおう日本語でも書いておく。 日本のゲーム業界ではC++が主流。 もしかしてそういうことではなくて、開発工程を聞きたいのだろうか? 開発中と開発後で言語が変わると思っているのだろうか? 質問のポイントがつかめないな…。
分けわかんない日本語を分けわかんない英訳ソフトに通すと ユニバースの法則が乱れる。
382 :
デフォルトの名無しさん :2009/09/23(水) 18:04:54
>>377 Get out of here! Fuck you!
What the hell ARE you meaning!
なんかAdobe Flashみたいな「ゲーム作成ソフト」があると思ってるんじゃないかと。 で、それで使われる言語は何?ってことじゃね?
384 :
デフォルトの名無しさん :2009/09/23(水) 18:13:34
>>377 Or you may be drunk.
385 :
デフォルトの名無しさん :2009/09/23(水) 18:16:21
何かじゃねーだろ
いい加減スルーしろよ
388 :
デフォルトの名無しさん :2009/09/23(水) 18:40:05
>>386 レス どうも…
C 言語を使う事も在る様ですが?
大体は C++ を使うと言う事は理解しました
音声記憶素子で java を使うで良いのでしょうか?
389 :
デフォルトの名無しさん :2009/09/23(水) 18:42:08
391 :
デフォルトの名無しさん :2009/09/23(水) 18:49:49
>>391 ok ok
we are the world
393 :
デフォルトの名無しさん :2009/09/23(水) 18:56:17
>>388 まず何がしたいんだ?
ゲームを作りたいのか、
現場の話を聞きたいのか。それによっても変わってくる。
自分で作りたいんだったらとりあえずC/C++で良いと思うよ。
394 :
デフォルトの名無しさん :2009/09/23(水) 18:58:27
>>392 それとも cell 欄で java を使うのでしょうか?
396 :
デフォルトの名無しさん :2009/09/23(水) 19:10:58
>>395 申し訳ないのですが?
英文が短すぎて何を言いたいのかが分かりません…
int c = 0; c++ = ++c; printf( "%d", c );
>>396 あなたはどんなゲームを作りたいのですか?
具体的に教えてください
399 :
デフォルトの名無しさん :2009/09/23(水) 19:20:58
>>398 レス どうも…
C 言語 と java ゲーム 作れますか?
401 :
デフォルトの名無しさん :2009/09/23(水) 19:25:20
n = 1; printf("%d %d\n", n++, n++);
>>399 ここで聞くより任天堂に問い合わせたほうが早いよ
403 :
デフォルトの名無しさん :2009/09/23(水) 19:41:36
int a = 1; prinrf("%d",(((++(a++)+++a)+++a)++));
404 :
デフォルトの名無しさん :2009/09/23(水) 19:42:48
>>399 C 言語 と java "で" ゲーム 作れますか?
というのであれば答えはYES
405 :
デフォルトの名無しさん :2009/09/23(水) 19:47:35
>>399 C 言語 と java "を題材にした" ゲーム 作れますか?
ってことか?
作れないことはない。
406 :
デフォルトの名無しさん :2009/09/23(水) 19:48:13
>>393 レス どうも…
取り敢えず 混沌状態になって来たので マジレス で…
始めに質問した様に使用するであろう言語を知りたかった訳です
C/C++ は視野にいれているのですが?
言語を覚えながら program の状態を見れるのは凄い良いな と思う訳です
Game を創るかは分かりませんが上記の通りです
因みに
>>401 は
様々な評価順によって生成される可能性のある出力を全て列挙せよ
と云う問題です
source が書き込まれたのと C/C++ だと云うので つい書き込んでしまいました
本当は C 言語板で質問しようと考えていたのですが…
407 :
デフォルトの名無しさん :2009/09/23(水) 19:50:15
釣りである事が判明しました
408 :
デフォルトの名無しさん :2009/09/23(水) 19:53:37
タスクシステムとは何ですか?
すげえ人工無能っぽい
>>406 のレスは「てにをは」とかが、もれなく無茶苦茶だから
何一つとして意図していることが理解できない。
チューリングテストが行なわれているのはこのスレですか?
サヴァン症候群にあこがれる厨二のガキとかじゃね おれらが何書いても、俺kakeeeeeeeeeeee以外の事が頭に無い奴とか居るだろ 誰にも歯牙にもかけられなくなるまで黒歴史を作り続けて貰おう
英語圏以外の国に住んでいた帰国子女じゃない? 一番得意な言語で話してくれたら、文系の企画が答えてくれるでしょう。
ローソンでパンの袋が云々って文章に匹敵するな。
>>414 はガキの自作自演
ガキ向けのスレを見てればわかるようになる
出た自演認定厨。
最近変なコメントを書き込んでるのは実はAI
421 :
デフォルトの名無しさん :2009/09/24(木) 15:33:18
なんで歌手がこんなスレに書き込みするんだよw
そういう先入観は捨てたほうが良いぞ。 音楽やってたってプログラムに興味ある奴もいるだろ。 たがなぜ突然AIが出てきたか疑問。 関係者かな。
あれだけメジャーだったらプログラムとかやってる暇ねーだろ
424 :
デフォルトの名無しさん :2009/09/24(木) 15:42:08
つか、なんでAIw もっとヲタっぽい歌手いるだろうがw
AIを歌手ってうけとるのは、なんのネタ?
初音ミクかシャロンアップルか
アイちゃんの話にならないのは何でだ
そんな話がしたいなら壁としろ 来るな
このスレッドは天才チンパンジー「アイちゃん」が 言語訓練のために立てたものです。 アイと研究員とのやり取りに利用するスレッドなので、 関係者以外は書きこまないで下さい。 京都大学霊長類研究所
このスレって常駐する気にはならんが、時々見るとおもしろいなw
432 :
デフォルトの名無しさん :2009/09/25(金) 04:35:25
ヲタっぽい歌手ってしょこたんとかか。
>>418 自演も見抜けずに自演厨の玩具になってるお前よりはマシ
まあここまで大半が俺の自演なんだけどな
こいつがAIか
ま、アイちゃんもこれにめげず、 がんがん書き込んでくれよな
437 :
デフォルトの名無しさん :2009/09/25(金) 10:48:21
人口知能じゃなくてゲームプログラムの話しようぜ
438 :
デフォルトの名無しさん :2009/09/25(金) 11:12:05
普通ゲームにもAI搭載するだろ
ちんこう知能だと?
440 :
デフォルトの名無しさん :2009/09/25(金) 11:17:41
校内写生
441 :
デフォルトの名無しさん :2009/09/25(金) 11:22:22
HSPとC言語はどっちが簡単にゲーム作れますか? 本当に使った人教えてください!!!!
もちろんHSP
HSPだな
比較対象がC++じゃなければ確実にHSP
マジレスすると作りたいものによって変わってくる。 ファミコン初期のようなゲームならHSPで十分。
でも本当のことを言うと、C/C++を十分にわかってる人でないと HSPを使いこなすことは難しい。 何も知らずにHSPから始めると、名前空間がごちゃごちゃになって詰まる
447 :
デフォルトの名無しさん :2009/09/25(金) 12:03:30
HSP最強でおKですか????
最強言語でなければゲームが作れない雑魚に限っては
449 :
デフォルトの名無しさん :2009/09/25(金) 12:52:09
HSPとCの良いところと悪いところを教えてください
450 :
デフォルトの名無しさん :2009/09/25(金) 13:08:42
フリー素材屋に小さいサイズしかないのはどうしてですか? 64×64を探しています。
拡大すればいいだけでは?
>>449 HSP
良いところ: 簡単
悪いところ: 簡単なことしかできない
C
良いところ: 難しいことができる
悪いところ: 難しい
453 :
デフォルトの名無しさん :2009/09/25(金) 13:19:39
454 :
デフォルトの名無しさん :2009/09/25(金) 13:24:05
そこでシェーダですよ シェーダでアンチエイリアスかければOK
455 :
デフォルトの名無しさん :2009/09/25(金) 13:29:26
>>454 ありがとうございます
それをやってみます
アイちゃんなかなか面白いじゃないか。 ちゃんとした会話っぽく見える。
シェーダでアンチエイリアス(笑)
kwsk
シェーダに祈りを オンシュラソワカ
マジレスするとテクスチャを大きくするときにジャギーが出ないようにするには GAME PROGRAMMING Gems 6 に書いてある方法がいいよ 事前処理が必要だけど、ジャギーも出ないし リニアフィルタで拡大したように画像がボケたりしない
アンチエイリアスって…大きいのを小さいのにするんじゃなかったっけ?
アンチエイリアスはすごく大雑把に言うとローパスフィルタをかけることなので、拡大縮小とは厳密には関係ないよ
>>460 その本持ってないんだけど、ネット上に詳しく書いてる場所ない?
465 :
デフォルトの名無しさん :2009/09/25(金) 20:02:05
ぼけたりせず、ジャギーも出ないって本当かよ? フィルタの類じゃないんだろ? 何て名前の技術なんだ? つーか、ぼけるけどソフトになるか、 ぼけないけどシャープになるか、 どっちかだと思うんだけど、どっちでもないって どういう状態?
アップコンバートとか?
C++の入出力のところは全部すっ飛ばしていい? マニピュレータとか挿入とかファイル入出力とか ちゃんと読んだほうがいい?
ちなみに独習C++の8章と9章のことなんだけど
469 :
デフォルトの名無しさん :2009/09/25(金) 21:24:56
独習読んだことないが、 少なくともファイル入出力は必要だと思うぞ。 ゲームでセーブするときとか必須だろ。
ファイルにするとチートされるから、復活の呪文で君に伝えたいんだ…
iosクラスを使ってファイル操作するのかなぁと思ってね 別の関数使うなら特に意味ないような気がする ファイル操作の基本は独習Cの方でやったからさ(ちょっとだけかじった程度だけど)
いや、わかった
ファイル操作のところは勉強しておくよ
>>469 レスありがとう
473 :
デフォルトの名無しさん :2009/09/25(金) 22:38:18
DXライブラリ:フルスクリーン:画面停止 修正したバージョンでコンパイルしましたが、 マウス位置y=0の時だけ演奏以外の処理が停止ます。
C++で開発するときってGCどうしてるんだ? Boehm GCみたいなライブラリを使ってるのか、 自分で全部開放してるのか
c++でのゲーム開発でGCは使わないね 言語処理系作るときならともかく。 pcならshared_ptr、それ以外は自分で面倒見るのが多いかな。
476 :
デフォルトの名無しさん :2009/09/25(金) 23:25:23
ハゲ
477 :
474 :2009/09/25(金) 23:39:34
>475 ありがとう
メモリ管理ろくに出来ない奴がほとんどだからな
どうせ他のリソースの管理があるから ついでにメモリ管理やっても手間はあまり変わらない。 使いてぇぇっていう動機&理由がそもそも生まれない。 逆に、ゲームでGCに頼りたくない理由、場合によっては使うことができない理由は挙げてたらキリがないくらいあるな
GC使うかはともかく、リアルタイムゲーでボスが出てくる時に 読み込みで一瞬止まるとかは萎えるよね あらかじめ読み込んでおくとか演出で誤魔化すとかくらいはやってほしい
481 :
デフォルトの名無しさん :2009/09/26(土) 02:00:49
ファミコン時代のロックマンのボス読み込みはok?
そうだな 画像データもマップデータもアイテムデータでさえ違いがないぐらいでかくなってきてるしな メモリ管理のみやってもらってもなんの恩恵もないな ストリーミングしなきゃいけねーときもあるし
>>480 それはレトロならではだから逆にレトロゲームファンに喜ばれてると思うぞ
おまえら473無視かよw
>>473 DXライブラリのHPに質問掲示板があるから、そっちで聞いたほうが速いし正確
>>484 何の脈絡もなくああ書かれたら質問の類いには見えなくて
発端レスがあるかと思いきや見つからず追うのを諦めた。
質問になってねぇよ
488 :
デフォルトの名無しさん :2009/09/26(土) 20:43:48
だな
一時期の質問者そっちのけで回答者達がイチャついてた状況が嘘みたいだ…
490 :
デフォルトの名無しさん :2009/09/27(日) 16:08:13
シェーダ以前にマルチスレッドが自在に扱えなければ大したゲームは作れない。
491 :
デフォルトの名無しさん :2009/09/27(日) 16:15:37
あの変な日本語書いてる人どこ行ったの?
またマルチスレッドで盛り上げるつもりか・・・
海外に住めばバイリンガルになれると思っている人が多いけど、 日本語も英語も中途半端になっちゃった人って多いよ。
マルチスレッドっていっても、まあジャンルや種類にもよるわな。 よっぽど衝突判定が大量にあるとか。
マルチスレッドってそんなに大事なの?
496 :
デフォルトの名無しさん :2009/09/27(日) 18:46:23
人によっては大事ではない。 「画像表示ってそんなに大事なの」ってのと同じレベル。 テキストだけでもゲームは作れるしAAで画像的なものも表示可能だが、 画像を表示できるゲームとはどうしても格が違ってくる。 マルチスレッドも同じ。 まぁお前の作ったゴミクズはそもそもお前くらいしかプレイしないから 使いたければ使えば?って感じw お前みたいな奴にマルチスレッドは理解できないんだから失せろよ低脳www
マルチコアなら処理量増やすために重要になるな でも必要ないところで一人遊びしてる奴のほうが多い
格とか言ってる奴にはもっと基本的なものが必要だな
ゲームって正直あんまりにマルチスレッド必要じゃない気が
>>496 俺が低脳?
お前のコメはバカ丸出しだな
メリットとデメリットと結論がかけない奴は無能
>>500 あなたが噂の変な日本語書いてる人ですか?
丁寧に設計してればマルチスレッドじゃないと困る場面って殆ど無いけどね。 とはいえこれからの時代、マルチコアのハードで性能を出すために避けては通るなくなるんだよなぁ……
505 :
デフォルトの名無しさん :2009/09/27(日) 20:35:58
だからマルチスレッドでハードウェアの性能を引き出せない奴はクソだって
>>504 ×避けては通るなくなる
○避けては通れなくなる
508 :
デフォルトの名無しさん :2009/09/27(日) 20:42:24
マルチコアプログラミングなんて性能停滞させた低能CPUメーカーの尻拭いだからな
メリットとデメリットと結論がかけない奴は無能
511 :
デフォルトの名無しさん :2009/09/27(日) 20:46:23
マルチコアCPUインフラが整ったこの日本のIT環境で マルチスレッドを使わないという選択肢は選ぶのが非常に難しい。 精神構造に著しい欠陥でも存在しない限りマルチスレッドの導入が検討されるのはごく当然のことと考えられる。
512 :
デフォルトの名無しさん :2009/09/27(日) 20:47:27
頭の悪い
>>509 の知ったかぶりが笑えるwww
マルチコアになったのは消費電力の関係だしwww
ここで関数型言語台頭の予感
盛り上がってるね
で、どこをMT化するとスピードアップすんのよ
517 :
デフォルトの名無しさん :2009/09/27(日) 21:41:34
>>516 みたいないけぬまさんってアク禁にできないの?
そもそも、1CPUも使い切ってないようじゃ無理。
519 :
516 :2009/09/27(日) 21:50:58
>>517 いやまじでわかんないんだけど
MTフレームワークの解説とか読んでみたけどイマイチ理解できなかった
俺の様なアホにもわかりやすく頼むよ
普通にマルチスレッドなコーディングしてるけど。 メッセージループに描画処理書けないし。 でもdirectinputとかでWM要らないとなると何処で使うんだろ? あまり詳しくないけどネットワークプログラムとか?
つうか、マルチスレッド使ってるって言えるのは、 マルチコアとシングルコアで実行した場合の性能比が100%を 超える場合のみだよなぁ。 本当にお前らのプログラム100%超える? 実は、シングルコア実行時100%割ってるだけじゃねえの?
マルチスレッドでうれしいのは、設計が楽になること。
アイドル処理使う場合とスレッド作る場合があるけど 気分でなんとなく使い分けてる 作りやすさはシングルスレッドのほうが断然上だと思うけどなあ
>>521 ガチでCPUをフルに使うなんて考えられんw
そもそも最近流行のマルチコアCPUを意識してマルチスレッドな
プログラム書く香具師っているのか?特に趣味で。
だいたいマルチコアCPUの仕様をそれなりに把握してなきゃ効果的に使えなさそうだし。
ないとは思うが、そのためにアセンブリなコード書かなきゃいけないとかなったらイヤポ。
せいぜい、適当に書いたコードでベンチ出してそれで満足するのが関の山っぽいなぁw
趣味でマルチスレッドなコード書いてるけど? > だいたいマルチコアCPUの仕様をそれなりに把握してなきゃ効果的に使えなさそうだし。 そんなことない。 それ気にするくらいなら、シングルスレッドでもパイプラインとか理解しなきゃ効果的にCPUを使えない。
全部コンパイラにおまかせっ♪
なんでCPUを使い切るとかいう話になってんの
>>521 >趣味でマルチスレッドなコード書いてるけど?
いや、マルチコアCPUを使う前提でね。
性能上の問題じゃなくて設計上の必要性でなら漏れも書いてるよ。
>それ気にするくらいなら、シングルスレッドでもパイプラインとか理解しなきゃ効果的にCPUを使えない。
ちょっとググったらマルチコアCPU向けのプログラミングでも
マルチスレッド化以外に特に気にする必要がないみたいね。
でも一つの重たい処理をマルチスレッドで処理するなんて骨が折れそうだなぁ
OpenMPでfor分を並列処理したりとかC++0xでマルチスレッドなコーディングが可能とか
頭が沸騰しちゃいそうだよぉ(^p^)
529 :
デフォルトの名無しさん :2009/09/27(日) 23:07:56
>>527 妄想癖が激しすぎて仮想敵を作ってしまう奴がいるんだよ。
「この条件で論破できたら俺ってすごくね?」っておっ始めるんだよ。
親がまっすぐ帰ってこいって言ってるのに
「この石家まで蹴って帰ったらすごくね?」って始めるのと一緒。
ようは精神構造が消房並ってこと。
どこからスピードアップの話が出てきたの? 誰もスピードの話なんかしてないのに 頭おかしい証拠だよ アホとか以前に混線してるみたいだから説明したって理解できるわけないでしょ? mtメリット調べる前に精神科に行ったほうがいいよ
なんとも幸薄そうな頑張り方だな…
煽ってるだけで中身がまったくないな
仮にスピードアップするにしたって 十分に時間のかかる処理でかつ、互いに干渉をしない処理 じゃないと複数のCPU使っての並列化ってできねぇし意味ねぇし用途が限られる 処理の初っ端に2つ処理を調べてまず処理見積もり時間を出してそれが十分に時間がかかる処理なら 互いに干渉しないことを調べて互いに干渉しなかったらようやくマルチで実行する意味がでる それまでどう逆立ちしたってシングルのが早い Windowsアプリでアプリ2つ起動したほうが勝手にOSが割り振ってくれそうな処理ぐらいしか用途がない (つまり、意味がないと俺は思うんだけど・・・) ゲームだと先読み処理とかホント裏方で別にゲーム売り出す分には「NowLoading」でも出しておけば いいような売り上げに関係しないようなところしか使えない (しかも、最近、NowLoadingなんて出す必要がないほどどの環境もハードが普通に早い)
低脳の頑張りだな…
>>533 そりゃ、同じ処理をさせるならどう考えてもクアッドコア2.5GHzのCPU使うより
シングルコア10GHzのCPU使った方が速いよ?
でも、そんなCPU用意できないでしょ?
全角でアルファベット書いてる時点でアホっぽい
>>528 > いや、マルチコアCPUを使う前提でね。
マルチコア前提だけど。
ゲームコードなら、物理演算別スレッドとかふつうに。
(これからはGPU使ってやるのが主流かな?)
素直にマルチスレッド分かりませんって書けばいいのに。
>>535 だから早いときって
>十分に時間のかかる処理でかつ、互いに干渉をしない処理
この条件を満たしたときのみでしょ?
普通の処理はこの条件を満たすかどうかのチェックしてる間に終わっちゃうぐらい処理短いわけで
CPUが複数あるからってなんでもかんでも早くなるんとは違うよね?
わかりませんなんてあるわけないだろ どのようにデメリットよりメリットを引き出すかという問題なんだから
もしかして、実行時に 「ここはスレッド化したほうが速いからスレッド化するか」 「この処理はスレッド化しても速くなりそうにないから、単一スレッドで突っ走るよ」 みたいな判断をやると勘違いしてる?
>>540 マルチスレッドはよく分からないからメリットが分からないと怖くて使えない、
と言っているようにしか聞こえないけど。
>>541 それをやったほうがいいぐらい時間のかかる処理じゃないとやる意味がほとんどない
仮にデフォルトであるとしたらデータの先読みやストリーミング再生ぐらいしか使わないだろ
でもこの辺ってだいたい勝手にやるしあまり意識する必要はないと思うぜ
だからやることになると思う
いやまぁマルチスレッド使った事無い人はそう思うだろ
>>544 なに?
使ったことない人はマルチにするだけで早くなるとか思ってるってこと?
>>543 ふつうは、スレッド構成とか、同期の取り方とか、並列性を活かせるようなデータ構成とか
そういうのを「設計時に」決めるもんだ。
なんか勝手に速さの話にされたまま話が戻ってこないけど さすがにネトゲはシングルスレッドで作らないだろ
>>547 どの部分をマルチにするかわかってて言ってる?
550 :
デフォルトの名無しさん :2009/09/28(月) 01:56:24
使ったこともないと言うか、 マルチがどういうものか分かってないんじゃねーの? そういう初心者以外の奴は話に混ざってくるなよ。
非同期IO使い始めたらスレッドが激減した
>>550 お前の認識はマルチにするには結構事前準備が必要ってのでいいんだよね?
>>548 だったらなぜ世のアプリケーションがマルチスレッド対応を謳ってるの?
CPUコアが増えるだけで処理時間が短縮できるんだったら
プログラム作る側が頑張る必要も、対応してると言うこともないだろ
556 :
デフォルトの名無しさん :2009/09/28(月) 01:58:58
>>552 そりゃやってある前提だろw
なんか「マルチスレッド」っていう魔法の呪文があると勘違いしてる奴が混ざってるなw
おまえらコンピュータの仕組みわかっててマルチスレッドって言ってる?
558 :
デフォルトの名無しさん :2009/09/28(月) 02:01:17
>>553 結構っていうかそれなりに必要だろう。
なんかマルチスレッド化のコードを1、2行追加すればできると思ってる?
____ / \ /\ キリッ . / (ー) (ー)\ <「メリットわからないけどマルチスレッドはわかります」 / ⌒(__人__)⌒ \ | |r┬-| | \ `ー’´ / ノ \ /´ ヽ | l \ ヽ -一””””~~``’ー?、 -一”””’ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒)) ____ /_ノ ヽ、_\ ミ ミ ミ o゚((●)) ((●))゚o ミ ミ ミ <だっておwww /⌒)⌒)⌒. ::::::⌒(__人__)⌒:::\ /⌒)⌒)⌒) | / / / |r┬-| | (⌒)/ / / // | :::::::::::(⌒) | | | / ゝ :::::::::::/ | ノ | | | \ / ) / ヽ / `ー’´ ヽ / / | | l||l 从人 l||l l||l 从人 l||l バンバン ヽ -一””””~~``’ー?、 -一”””’ー-、 ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒))
OpenMPなら数行だな
>>555 そう書いておくと売れるからってただそんだけじゃね?(笑)
AAうざいお(´・ω・`)
563 :
デフォルトの名無しさん :2009/09/28(月) 02:04:56
ム板で一番活発なすれ
ビジネスアプリならわかるんだけど、具体的のどの処理を別スレッドにしてんの? まさかディスクの読み込みだけですとかじゃないでしょ?
ネトゲという単語が出たので飛んできました。 ネトゲはスレッド作りまくるね。 俺は最高100スレッド近く作ったことがある。
566 :
デフォルトの名無しさん :2009/09/28(月) 02:08:06
ぶっちゃけWindowsでできる超簡単な並列化として しなきゃいけない処理が10個あったとしてそれぞれが互いの結果に干渉しないもんがあったとして 1個分の処理を行う.exeファイルを作って ShellExecuteで2個ずつ起動するようなプログラム書けばそれだけで並列処理できるじゃん (勝手にOSが並列化してくれる的意味で) 大抵の業務アプリの場合の対応なんてめちゃくちゃ楽だよな ユーザがアプリ2つ起動して同じことやらせても並列化できるもんはできるw
ディスク、ネット、サウンド、メモリカード、描画は別スレッドなのはもはや常識。
>>566 そんなの普通に作れば大抵勝手になるじゃん
(サンプルやオンラインゲームの入門書からしてなりそうな感じになってるの多いし)
意識しねーとできねーもんでもねーし何が言いたいんだ
多分、パッパらパーでマルチスレッドなんて単語すら知らない開発者だって意識しなくてもやってるだろ
明言することなのか?
出た限定仕様ww 干渉しないタスク限定www 今ゲームのマルチスレッド化の話してるんだよ
メモリカードにわざわざスレッド使うのかよ・・・ 何のハードか知らんけど非同期に読めないの?
>>568 描画別か?
内部更新しないと描画なんてしたってしょうがないだろ
まあ、やりたいなら止めないけどw(意味はないよな?)
574 :
デフォルトの名無しさん :2009/09/28(月) 02:12:49
>>573 頭おかしいの?
描画中にも演算できるからそのためにマルチスレッドにするんだよ?
描画と演算が完全に独立してるの?
>>573 のゲームは描画前に必ず内部更新したかどうかチェックするそうです
>>564 どの部分って言われても、専用スレッド割り当てることもあるけど
ジョブキューに放り込んだら空いてるスレッドが取り出して実行するみたいな感じ。
>>575 将棋のAIとか特殊なの?
そーゆーのは作ったことねぇからわからないけど
結局さ、普通のアプリだと次のフレームになってから演算しないと無意味なの多くない?
581 :
デフォルトの名無しさん :2009/09/28(月) 02:17:56
>>573 が馬鹿すぎて笑えるw
だからマルチスレッドを理解してない奴は入ってくるなってw
自称マルチスレッドわかってる奴らは参照透過性すら言及しないな
>>577 無意味だよね
仮に2回連続で描画スレッドが動いたときに
なんのために描画するのかさっぱりわからない
内部と描画は基本的に1:1であって並列に動かすのは内部の特定の処理だけじゃね?
描画を別スレッドにしちゃうってのはちょっとよくわからない謎仕様だと思う
584 :
デフォルトの名無しさん :2009/09/28(月) 02:19:30
このご時世に固定フレームレート臭のする老人出現
>>570 スレッドをどんな場合に使ってるかっていう話題なのに、普通別スレッドにするものは除外ってどういうことよ?
まともにゲーム作れない奴ほど技術用語に振り回される
>>584 可変だとしても内部処理してからじゃないと描画しても意味ねぇだろ
>>583 描画に10ms、演算に10msかかる場合はどうするの?
スレッド分けないと50FPSしか出ないよ?
100FPS出せるなら出してよ。
589 :
デフォルトの名無しさん :2009/09/28(月) 02:24:49
謎が解けた!
だから
>>583 の作るゲームはヌルヌルじゃないんだ!
>>588 何をいってるの?
さっぱり意味がわからない
内部処理完全に終わらないと描画できねぇだろ
最期にカメラが30度動いたら全部描き直しな状態が俺の頭に浮かんでるんだが
お前の前提だとこの現象はどうなっているんだ?w
内部更新と描画を別スレッドにする理由がよくわかんね GPUに描画コマンド投げたあとはGPUが絵描いてる間に せっせと内部更新するわけだから元々非同期な処理だよね
描画中に、次のフレームに描画するオブジェクトの演算を裏でやるんだよ。 ていうかこんな基本的なことを学生以外の人に説明しないといけないのか?
描画スレッド云々言ってる奴は描画のレイテンシすら把握してなさそう
>>592 ずっと気になってたんだがよぉ…
お前さん、もしかしたら釣られてるかもしれないぜ
>>592 それゲームプログラマがスレッド書かなきゃいけないシステムの例を挙げてくれる?
少なくともコンシューマ機では思い当たらないんだけど
>>592 だって意味ねーもんそれ
プレイヤーの入力はいつ反映するの?
597 :
デフォルトの名無しさん :2009/09/28(月) 02:32:07
次のフレームの演算開始前だろ
描画そのものをさらにスレッド分けすることもあるね。
>>597 前のフレームの描画も終わってないのに愉快なことしてるなw
同期も理解できていなさそう
601 :
デフォルトの名無しさん :2009/09/28(月) 02:35:47
敵のAIをマルチスレッド化する話が出てこないんだけど…
GPUがないときの話をしてるのか 1つのCPUだけで全部こなすような
603 :
デフォルトの名無しさん :2009/09/28(月) 02:38:10
>>602 敵AIつってんだろ
人の話聞けボケナス
>>601 スレッド化に満足してAIは書けないからね
このレベルの奴らのAIなら手動で最適化したほうが高速化できそう
605 :
デフォルトの名無しさん :2009/09/28(月) 02:39:43
そもそもそんなに頭のいいAIなんてみたことないしね 有名RPGでも味方が馬鹿で馬鹿でしょうがないぐらいなのに 1フレ越して考えるAIになにかメリットあるのかね? お金にはならないなーw
描画別スレッドにしたパターンってこんな感じ? 計算 計算 計算 計算 計算 -- CPUで計算 \ \ \ \ 描画 描画 描画 描画 -- CPUからGPUへコマンド流し込み \ \ \ 表示 表示 表示 -- GPUで表示
お前らもう寝ろよ 今日は仕事だろ
>>607 違うんじゃね?
1フレ遅れになったときとかに
内部処理
内部処理
描画
内部処理
内部処理
描画
・
・
・
ってやりたいってことじゃね?
内部処理を一定カウントでまわして
描画はそのときどき可能な状態を取得して描画ってことだろ?
もし、これをやるとすると内部処理更新中に描画されたら大変だから
描画に必要な内部処理情報を確保しておく必要がありそうだけどな
そういう仕組みないなら矛盾がおきてるだろうな
>>606 味方が馬鹿なのは救いようがあるが(めいれいさせろにすればいい)、
敵が馬鹿なのは救いようがない。
結局、内部処理に一区切り付かないと描画なんてできないのに
なぜスレッドをわけるのか?
本当に馬鹿の考えることはわからない
>>611 で?敵が頭よくなるとなんかいいの?すげー強いの?
ローグライクゲーを作ろうと思うんだけども ダンジョンのランダム自動生成のロジックに参考になるサイトとかソースとか無いかな?
だ・か・ら! お前らもう寝ろよ 今日は仕事だろ
619 :
デフォルトの名無しさん :2009/09/28(月) 02:56:49
>>612 少なくとも、すぐにハマっちゃうような敵だとゲームやっててもつまんね。
回り込んで撃ってくるとかはしてくれないと。
>>620 回りこんで撃ってくると1フレ以上必要になるんだ・・・
敵AIにも色々考えさせにきゃならないだろ。 例えば主人公がいて敵がバキュバキュ撃ってくる。 すると主人公の近くに撃つと爆発するドラム缶がある。 撃てば主人公にダメージを与えられるだろうが、近いと自分も爆炎でダメージを受ける可能性がある。 近くでは撃てない。 敵が仲間のところへ主人公を誘いこめば倒せるかもしれない。 しかし仲間のところまで逃げきれるか。 逃げきったとして仲間が主人公を倒したら手柄を持っていかれちまう。 ここはドラム缶を撃つか。 しかし故郷では家族が待っている。 主人公を倒したとしても自分も巻き込まれて死んだら家族は悲しむだろう。 それに死ぬのは怖い。 なんてAIに思考させてたらかなり時間くうぞ。 特に葛藤してる状況だと相当時間がかかる。 まぁ人間じゃないから葛藤も早送りで演算できるが。 そこらへんパソコンって便利。
演算量とアルゴリズムの複雑さは比例しないが
ランダムで行動選択するのと変わらないな。
>>605 何だかんだと御託並べても、結局 30 fps しか出せてないのが笑えるな。
そもそもAIの更新って1フレームに一回だったり、 30フレームに一回だったりするし 一概に1フレ超えて考えるAIとか言えないだろ
なんか突然伸びるスレだなここは ム全体で一日1,000レス以下程度なのに なんでここだけで数時間で100もレスがつくんだ
1フレを超えて考える AI は経路探索や視線判定、コリジョン判定を大量に行うようなのものでは十分ありうる。 でも、この処理のせいでコマ落ちしてしまう不具合を回避するには、ファイバやコルーチンで十分でもある。 複数の AI 同士を同時に実行したり、別の更新処理や描画処理と並列に実行するような時にはスレッドを使う。 描画処理を別のスレッドにするのは、DirectX を使う時と OpenGL のイミディエートモードだけを使う場合には、 かなりの効果がある場合がある。 OpenGL のディスプレイリストや相当する機能を使う場合、次のフレームのディスプレイリストを用意する PS1時代からの手法が有効なので、必ずしもスレッドを分ける必要は無い。が、ディスプレイリスト作成処理 をさらにいくつものスレッドに分けることができるようになる。例えば Z プリパス描画と普通の描画と半透明描画 のそれぞれのディスプレイリストを別のスレッドで作成するようにして並列度を向上させることができる。
631 :
デフォルトの名無しさん :2009/09/28(月) 12:20:10
632 :
デフォルトの名無しさん :2009/09/28(月) 14:09:24
市販のゲームでVRAMにロードされてるテクスチャが160MBって 何枚くらいロードされているのでしょうか?
>>632 DDS形式で512x512なら160枚
内部演算と描画を別スレッドに分けるのは解るんだけど、 それだとユーザーから見るとキー入力が1フレーム遅れて反応することない??
1フレームの遅れがユーザの目に見えるというのか
おれは入力モタつくのがすごく気になったんだが…
637 :
デフォルトの名無しさん :2009/09/28(月) 19:00:27
更新中に描画されちゃったらワンフレ前の住人とワンフレ後の住人が混ざるパラレルワールドじゃんよ(笑) バグが止まらないな(笑)
ダブルバッファにするに決まってるだろ。 混ざらねえよ。
>>635 格ゲーじゃ1Fのズレでもコンボがつながらないとか日常茶飯事じゃん
1Fは目には見えないけど違和感を感じることはできる
640 :
デフォルトの名無しさん :2009/09/28(月) 20:58:52
何でお前ら1フレ単位で会話きるの?
頭おかしいの?
>>635 とか
>>938 は1フレ=8msくらいな感じがするけど、
>>639 とか30msな感じがする。
自演か?
642 :
デフォルトの名無しさん :2009/09/28(月) 21:03:11
>>638 内部処理と描画が同時に実行されてんだからなるだろ
ならないようにするには内部処理の描画に関わるデータを
すべて描画用に確保しておかなければならない
>>644 何?ダブルバッファって内部処理のデータのこと指して言ってるの?(笑)
自分用語ご披露するのもいい加減にしとけよwww
まあ、いいけど・・・すっげぇw無駄だなwww(核爆ww)
まったく意味ねぇのにホントご苦労様としかいいようがないよw
GPUで勝手にパイプライン処理になってるのにわざわざ自分でメモリ2倍とってまで
馬鹿やってるんだ?w
救いようがないな(失笑)
この辺りではどんな魚が釣れますかな?
しいらかんす
なんだ釣りだったのか。 マルチスレッドどころか3Dすらもやったことなかったとは…。
コードも書かずに「理解できる俺すげー」だもんなw
650 :
デフォルトの名無しさん :2009/09/29(火) 04:10:15
自分でコード書いたことがあれば
>>645 がおかしいことにすぐ気付く。
レベルが低すぎてゲハ板かと思った
内部処理のデータを毎フレーム複製する必要がある時点で糞くて使えない
マジどうしようもねえな
まあ、マルチスレッドを理解するってそういうことだしな 片や書いてて、片や読んでたんじゃ処理速度やタイミングで結果が変わっちまうから 事前準備でメモリも完全にわけておくかもしくはロックでもしておかないとダメだしな ロックしたんじゃ並列で動かないからやっぱりメモリ隔離がデフォか?
マルチコアってCPU側で勝手に割り振ってくれるんじゃないの?
汎用OSで描画と他演算を分けているのは、 偶然うまく動いているだけにすぎない
メモリ隔離自体は、内部処理のデータ量がよっぽど多くなけりゃ問題無いし簡単じゃね?
1 フレームの遅れは、格闘ゲームをかなりやったヤツなら違和感を感じる。
が、すぐに慣れる。
音ゲーも一緒。
それに、今では 1 フレーム遅れのゲームばかりなのだから、みんなそれで慣れてる。
格闘ゲームでも 2d なら更新と描画を並列化させなくても 1 フレームで処理できるだろうから、
スプライト時代と同じ遅延(1 フレーム遅延なし)で作ることもできる。やってるチームがあるかは
知らないけど。
さらにいうと、そこでの遅延より液晶モニタの方が。
>>652 全てではなく、座標変換に使う行列と、UV スクロール量とかその辺だけ。
液晶モニタの遅延は酷いのだと6、7フレームとか普通にあるしな。
660 :
デフォルトの名無しさん :2009/09/29(火) 12:57:31
>>657 面倒臭いと思うよ
描画してるときも書き込めないし
書き込んでるときも描画できないから3つぐらい用意することになるんじゃない?
描画が終わってないときに次の内部処理しなきゃいけないときは3つ必要だしね
ここまで頑張っても多分効果ないのが悲しい話だけどな(笑)
視線から物体まで伸びるベクトルはまっすぐだとして 物体から出た後で伸びるベクトルってまっすぐになるの?
長さが0以外のベクトルは全て真っ直ぐだろ・・・
663 :
デフォルトの名無しさん :2009/09/29(火) 15:51:16
何が? 屈折の話?
「物体から出た後で伸びるベクトル」というのは何かの暗号だろうか?
たぶんベクトルをチンコのことだと勘違いしている つまり挿入前のチンコはまっすぐだとして 挿入後のチンコはまっすぐなのかってことだろ
多分レイトレの反射あたりのことだとは思うが まっすぐって表現も無いよな。お前は幼稚園児か。
随分昔の話してるけどw
>>219 は俺なw
>>218 の1枚目の絵の球体から出たベクトルがまっすぐ右に伸びてるから
屈折して別のほういくんじゃね?って意味で書いたんだぜ
マルチスレッドの話題から話を逸らしたい誰かの意図が確認できました 真・マルチスレッドストッパー。。。( ̄ー ̄)ニヤリッ
いいぞ もっとやれ
マジでマルチスレッドの話題から話を逸らしたくてやってるの? ていうか見た目に無意味なのが同じ会社の同僚にばれちゃうとまずいとか そういうのあるの?w っていうかみんな気づいてるけどいわないだけだろそれってw
673 :
デフォルトの名無しさん :2009/09/30(水) 04:08:45
いいぞ もっとやれ
674 :
デフォルトの名無しさん :2009/09/30(水) 12:46:22
描画はGPUに丸投げするから描画処理はGPU。 演算処理はCPU。 だから描画をGPUに投げた次の瞬間に演算が始まるから、 そこではGPUとCPUでスレッドが1つづつ動いてることになり、 マルチスレッドで動作しているのと同じことになる。 よって描画用にわざわざスレッドを用意するのは意味がない。 とか本気で思ってるキチ*イがいそうで怖い。
将来的には、GPUが勝手にメモリから情報取ってきて 勝手に表示するようになるんかねえ それまでGPUがあればの話だけど
676 :
デフォルトの名無しさん :2009/09/30(水) 18:55:50
変な奴多いよな お前らちゃんと社会生活送れてんの?
678 :
デフォルトの名無しさん :2009/09/30(水) 19:05:15
まあ、不正は、許しては、いけないしな、当然だよな。
会社つぶれるとか流出が無ければプログラマの給与もうpとかそういうの別に無いから流出しても気にしないよ
680 :
デフォルトの名無しさん :2009/09/30(水) 19:34:28
俺フリーゲーム作るほうだから関係ねーし。 むしろ宣伝してくれ。
スクエニみたいな糞ゲー和メーカーはこの世から消滅すればいいのに
知的財産なんてすでに崩壊してる ゲームは全部無料にしてゲーム中に広告を入れるスタイルに変えるべき
電通社員と中国人って結局言ってること同じだよね
ここまで煽りあってデバッグの話すら出てこないからなw
机にフェニックスは要らない子
686 :
デフォルトの名無しさん :2009/10/01(木) 14:01:58
じゃあデバッグの話をしようか。
687 :
デフォルトの名無しさん :2009/10/01(木) 14:41:21
デバッグって子ウィンドウ作ってそこに変数一覧出せば良いだろ。 それで一通りクリアすればOK あとはフリゲなら取るに足らないバグしか残ってない。 例えばRPGなら所持金がバッファオーバーフローするとか。
688 :
デフォルトの名無しさん :2009/10/01(木) 14:56:28
子ウィンドウねえ(笑) 今度こそデバッグの話をしようか。
まさかテストプレイみたいな単純作業の話がしたいわけじゃないよな?
690 :
デフォルトの名無しさん :2009/10/01(木) 16:33:38
そもそもゲームにデバッグなんて大したものは要らないだろ。
ゲームのデバッグってまともにやると人海戦術的なところがあるしな。
例えばレースゲームだと各車両で壁にガンガン当たって抜けてしまうところがないかチェックするらしい。
>>688 はメインウィンドウに表示させる馬鹿。
もしくはファイル書き出し派のアホ。
ウィンドウが前提のやつとは話が通じないだろうなw
692 :
デフォルトの名無しさん :2009/10/01(木) 17:16:27
「ゲームプログラミングの為の3Dグラフィックス数学」に 点の集合から、自然な軸を求める方法が載っていますが(主成分分析法) この方法をボックスに適用した場合、ボックスの元々の主軸と同じ値が求まれば良いのですが そうならない場合が殆どです。 多分、元になる点の選び方が悪いのだろうと思い、 ボックスの直径の端の6点を使う場合と、頂点の8点を使う場合を試しましたが同じでした。 どうすれば、最適な軸が求まるでしょうか? それとも主成分分析では、ボックスからボックスの軸を得ることは出来ないのでしょうか?
誰かはやくこのスレをデバッグしてくれ
寒い
>>687 は単なるチート厨の香りがするわ
ゲーム製作も同じ程度にしか考えてなさそう
こういうリアルな話題があると 妄想過多で自分をゲーム会社の社員と思い込んでる 精神障害者しか居ない事がわかってしまうね・・・
教室の隅っこでウジウジしてそのまま不登校とか始めても 2chでは元気いっぱいw
大学生以下はプ板に来るなよ
質問です このスレを消す方法を教えてください 初心者なので詳しくわかりやすくお願いしますww
まずC++でゲームを作ります
702 :
デフォルトの名無しさん :2009/10/01(木) 21:12:04
>>700 おまえが消えれば良いと思うよ。
そしたらみんな喜ぶとし。
かぶった
>>695 って頭悪い厨房の香りがする
人の手法はとやかく言うくせに自分の手法は何一つ書かない
ゲーム制作そのものをやったことがなさそう
というか普段から妄想ばかりして作った気になってそう
>>696 が端的に言ってるけど
お前ら、ゲーム作ってますか?
707 :
デフォルトの名無しさん :2009/10/01(木) 22:27:47
現在進行形で開発中。 今新しく作るゲームのフレームワーク部分をフルスクラッチで書いた。 来る新時代を意識して書いたから半年はこれで戦える。 それで今は新しく作るRPG用のマップエディタを作ろうと思いながらこのスレを見たらお前がいた。
クソスレを正常化させてまでして、無い知識をひけらかしたいとか・・・ よくよく自分がやってる事を考えてみろよ
709 :
692 :2009/10/01(木) 22:35:13
誰かわかる人いませんか・・ 3Dでは必須技術だと思うんですが・・
>>710 >>708 は明らかにおかしいからスルーしろ
煽りとかではなくてガチキチの臭いがする
気になるならアボンしとけ
やった事もないプログラミングの妄想技法を書く奴は どうせ、株や車やセックスでもそういう妄想を垂れ流すので 何処かで矯正されるべきだ
713 :
デフォルトの名無しさん :2009/10/01(木) 22:49:18
キチというより鬱病に見える
日本も核武装しろとか、自衛隊を正規の軍隊にして 北朝鮮攻め込めレベルの奴等が、 テストやデバッグについて書いてんじゃねー
>>708 =キチ||鬱病www
どっちにしても脳がまともじゃないwww
ヒキNEETで精神が壊れる直前だと思われ。 何か変な事件起こしそう。
顔真っ赤にして
>>687 が粘着してるのが目に浮かぶ
自信満々に俺様理論書き込んだつもりだったんだろうけど
おーいみんなー!
キチの
>>708 が出てきたぞー!
719 :
デフォルトの名無しさん :2009/10/01(木) 23:56:44
>俺様理論 リア厨がよく使う用語だなw
なんせ精神年齢低いから、こういうイジメムードが出来ると 書き込みが進むな
だから頭がおかしい奴はほっとけって
>>687 のやり方もどうかと思うけど
それでバグのないゲームがリリースできてるんならいーんじゃねーの?
子ウィンドウがどうのって言ってる奴を煽ってる奴は、恐らく煽りたくて煽ってると思う
でなけりゃ問題点を指摘してどうすべきか書くはず
それを書かないってことは煽るのが目的だからでしょ
>>699 ム板といわずにプ板って言うのは初耳だw
>それでバグのないゲームがリリースできてるんならいーんじゃねーの? キチふたりめ
724 :
デフォルトの名無しさん :2009/10/02(金) 00:06:54
>>721 煽るのが目的じゃなくて
単にゲーム作ったことがないから
デバッグの方法が書けないだけだと思う。
>723 >キチふたりめ いきなり自己紹介かよww
みんながゲーム作ればスレが荒れないのに。
まともに作ればバグなんて出ない。
>>727 に煽り以外の要素が無いことだけはわかった
何か>708から荒れてる気がする。
あぼーん対象
>>708 ,710,711,712,713,714,715,716,717,718
>>719 ,720,721,723,724,725,728
議論できないゴミクズは社会の迷惑だから消えてくれ
731 :
デフォルトの名無しさん :2009/10/02(金) 00:16:22
厨二以前の問題。 粗悪な家庭環境で育ったんでしょ。
小学生の喧嘩になってきたよ ママァン
お前らを隔離するためにゲ製があるんだぞw
>>692 3D以前に日本語をちゃんと話そうな
ボックスのくだりから全く意味不明
ボックスの元々の主軸?
ボックスの直径の端の6点?
ボックスからボックスの軸を得る?
何を言ってるんだ?w
最近は両親がキチ入ってるから自分がキチだって気付かない香具師が増えたな、
具体的には
>>717 とか
やめろ >717の顔が真っ赤だ。 >717が高血圧で死んだらお前らのせいだぞ。
これだから焼酎どもは 明らかにおかしいレスをスルーすることすらできねーのか
まともなスレで現役プログラマに教えを受けたら 負けだと思っている
742 :
692 :2009/10/02(金) 00:39:22
>>735 わかりづらかったですね、すみません。
質問を変えます。
ボックスを構成する8頂点が与えられたとき、
そのボックスに最適な互いに直交する3つのベクトルを
得る方法を教えてください。
最適な、とは、ボックスをそれぞれベクトルに平行な平面で
囲ったとき、面積が最小になるものです。ボックスの面積と同値が理想です。
3Dって難しいなと思った
744 :
デフォルトの名無しさん :2009/10/02(金) 00:58:47
あ
745 :
デフォルトの名無しさん :2009/10/02(金) 01:00:23
>>742 直交する3つのベクトルでは何も囲えないだろ。
数学で出てきた3次元空間のxyz軸みたいなもんだろ?
8頂点の任意の凸型立体なの? 横から見ると、平行四辺形や台形になってる事があるだけで、 あくまで「ボックス」なの? 今書こうとしたら、8個の点を内封する直方体で書いてしまった 答えは出せるけど、処理は重いし、 「ボックス」である事を利用したらスマートな答えがあるかもしれん ので辞めた
直交する三本の直線を、三次元空間上に交差しないように配置することは可能でしょうか?
こんな釣堀じゃなく数学関係の板で聞いたほうがいいよ このスレは俺以外バカしかいないから
>>747 まず直交する三本の直線を作ります。
それぞれをx、y、zとすると、、
x軸をy軸方向にずらして、
y軸をz軸方向にずらして、
z軸をx軸方向にずらすと出来ます。
>>747 ランダムに配置してもほとんど交差しません。
万が一にも交差したら運が悪かったと思ってやり直しましょう。
>>692 >>742 だからさ!日本語を話せよw
さっきから意味不明すぎる
どのスレだろうと、優秀なエスパーはそうそういないぞww
ボックスの定義はなんだよ?
只のランダムな8頂点なのか?(非平面もありえる)
それとも8頂の各平面を形成する4頂点は平面上に必ずあるのか?
さらに8頂点は座標だけで、各面を構成する組み合わせは予め分らないのか?
それとも各面を構成する頂点の組合わせは分っているのか?
もろもろありすぎ
質問が出来ない奴は
ほぼ100%の割合で、答えを教えても理解出来ない、答えを写すだけ
と言うのが俺の自論
>>742 ボックス=直方体かつ、点列がボックスの頂点であることが分かっているのなら、
任意の点から一番近い2点へ伸ばしたベクトル(2本)と、それらと直行するベクトル
でいいんじゃね?
>>751 傍から見ていてもっとも不愉快
そんなこと言うなら質問スレに常駐するな
初心者の言うことは理解が浅いか誤認識が原因で変になることがあるから、まずはそこからデバッグするのが回答者の義務
754 :
デフォルトの名無しさん :2009/10/02(金) 08:18:46
それはあるな質問者は関数の仕様がわからない状態なんだから引数なんて知るわけ無い 回答者が質問してうまく揃えてやる必要あるだろな ただ気になるのはここ最近質問者も回答者に完璧を求め過ぎる どっちも人間なんだからいい妥協点を探る練習をしないとこの先困るぞ
>>692 「ボックスの主軸」と「点の集合の軸」では同じ「軸」でも言葉の意味が違うんじゃないだろうか。
>>742 直方体なら、六面中から平行でない三面を選び、その法線。
その法線は、その面の辺を構成しない線分のうちのどれでも良いから正規化したもの。
または任意の一頂点を選び、その頂点を共有する線分。
>>751 >只のランダムな8頂点なのか?(非平面もありえる)
ランダムじゃなければ、答えを得るのは容易でしょう。
>それとも8頂の各平面を形成する4頂点は平面上に必ずあるのか?
平面上に必ずあるなら、答えを得るのは容易でしょう。
>さらに8頂点は座標だけで、各面を構成する組み合わせは予め分らないのか?
わかっているなら、答えを得るのは容易でしょう。
>それとも各面を構成する頂点の組合わせは分っているのか?
わかっているなら、答えを得るのは容易でしょう。
>>692 で主成分分析と書いているので、ある程度わかると思うのですが。
質問の内容すら通じないなんて、悲しいですね。
>>752 それでいけそうですね。ありがとうございます。
しかし私が求めているのは、点集合から最適軸を求めるアルゴリズムにおいてなので、、
質問を変えたのが悪かったんですかね。
ここをもっと掘り下げて対応してくれるなら、続けて書きます。
>>755 どちらも単なるベクトルで同じだと思います。
点の集合がボックスを形成するなら、
点の集合の最適軸とボックスの主軸は同じになって欲しいというのが、質問の動機であり、
これがそもそも間違っているなら、それで解決でいいのですが。
>>756 6平面がわかっているなら、、
758 :
デフォルトの名無しさん :2009/10/02(金) 12:04:00
>>757 どんなゲーム作ってんだ?
そのベクトル以前のやりたい処理を書いてもらえれば
他のもっと簡単な方法があるやもしれん。
当たり判定辺りかなと思うが。
759 :
デフォルトの名無しさん :2009/10/02(金) 12:05:17
ゲームプログラミングを勉強してまだ初心者なのですが、C++でつまづいているのですが何か良い書籍を紹介してもらえないでしょうか、先走っちゃって例の「ゲームプログラマになる前に覚えておきたい技術」 という本を買ってしまったので読破できそうなC++のおすすめの本はありますか
760 :
デフォルトの名無しさん :2009/10/02(金) 12:09:39
>>757 よくわからんけど、計算誤差が起きてるんじゃね?
ボックス中の点も大量に加えてみるとか。
いずれにせよ、ボックスが立方体に近いと主軸が面に平行になるのは期待できないでしょ。
#立方体の軸って、対角を結んだ直線じゃね?
763 :
デフォルトの名無しさん :2009/10/02(金) 12:50:43
DirextXとOpenGLってどっちが簡単? クオリティはあんま求めてないんだけど
764 :
デフォルトの名無しさん :2009/10/02(金) 12:51:28
もちろん3Dで
ボックスの主軸 │ ┏━━━┓ ┃ │ ┃ ┃ │ ┃ ┗━━━┛ │ 点の集合の軸 / ・ ・ / / ・ ・ / って思った。
>>763 Irrlcht などのライブラリ使うならどっちでも良い問題。
>>758 移動・回転するOBB(開始位置のOBBと終点位置のOBB)から
直方体を作り、衝突判定をする為の処理です。
直方体を可視化してみると、2つのOBBを自然に包容する状態ではなかったので。
例えば、移動・回転の量がゼロに近いのOBBの場合、包容直方体とOBBが近い形に
なって欲しいのに、斜めに回転したような形をとるんです。
>>762 >>765 >#立方体の軸って、対角を結んだ直線じゃね?
どうやら、その通りのようです。
ですから、
>ボックスの直径の端の6点を使う場合
だとうまくいくはずですね。
その方向で調べてみます。
ボックスという単語を使うのはやめたほうがいいな。
直方体なのか凸包六面体なのかそれ以外なのかわからん。
包容直方体も細部が意味が通じない。AABB では不満なのはわかるが、具体的にどんな特徴の包含直方体が欲しいのか。
>>767 直方体が二つあるなら8頂点ではなく16頂点になるんじゃないか?
開始位置での中心点と終了位置での中心点を結んだベクトルを採用しても、かなりの場合に十分だと思うがどうだろう。
769 :
デフォルトの名無しさん :2009/10/02(金) 16:13:57
hoge
770 :
デフォルトの名無しさん :2009/10/02(金) 19:25:18
子供達にはのびのびとゆとりをもって育って欲しいものです。 そういった良好な環境で育った子供は友愛の精神を大切にするのです。
お前らまだ質問自体が釣りだと気付かないの
>>767 のような究極の頓珍漢発言してるクセに
>>757 見たいな発言してるのって典型的な最近の若い奴だなw
出来ないくせに、言う事は上から目線
さらに初心者だからそれは当り前、導いてやるべきとか言ってる馬鹿もいるし
日本のプログラム技術者の大半がレベル低いのは、もはや当然の域だな
一部の出来る開発者のセミナーや本に群がるのが理解出来るw
>例えば、移動・回転の量がゼロに近いのOBBの場合、包容直方体とOBBが近い形に >なって欲しいのに、斜めに回転したような形をとるんです。 意味不明な質問して、更にその意味不明質問を偉そうに振りかざす前に… お 前 の バ グ だ ろ ー が w w
>移動・回転するOBB(開始位置のOBBと終点位置のOBB)から >直方体を作り、衝突判定をする為の処理です。 この発想も間違ってる OBBが、距離のある点を軸に180度回転だけしてみろよ? 開始位置と終点位置で細長い包容直方体を形成するが、移動時の軌跡は外してるだろw
身の丈にあったことしろよな 少なくともこんなもんに手を出すレベルじゃねーじゃん
>>776 バグ?
では、私の理屈は正しくて実装が誤っているだけってことですか?
それだったら、良かったんですけどね。
>>777 なるほど、それは気がつきませんでした。
境界球で包容直方体を作る方向にシフトします。
ありがとうございます。
>例えば、移動・回転の量がゼロに近いのOBBの場合、包容直方体とOBBが近い形に >なって欲しいのに、斜めに回転したような形をとるんです。 あのな移動も回転も0に近いのに、元の形から斜めに回転した形になる時点でバグ以外の何者でもないだろ… 挙句、実装コードじゃなくて理屈の方を質問してるレベルじゃ、もっと基本をやるべき 更に、 >バグ? >では、私の理屈は正しくて実装が誤っているだけってことですか? なんて言っちゃう辺り、小学生が大学の問題を解こうとしてるような物 対象を理解もしてなければ、実装が間違ってると言う自覚もない さらにまともなデバッグすら出来ないって丸出しだから… それと、リアルタイムコリジョンは移動量を細かく区切って (移動フレーム毎、移動量が大きければ更に分割する) 時間軸で当り判定をするものだぞ? 移動前、移動後でコリジョンは取れないだろ (移動量が微少なら上の説明と同じ事になるけど)
>>780 これ以上は止めましょうか。時間の無駄ですよね。
あまりウダウダやってると友愛されるよw
罵り合いが好きだねえ・・・
ゲームの話しようぜ
こんなIDの出ない板で馴れ合いスレだなんて おかあさん間違ってると思うの
786 :
デフォルトの名無しさん :2009/10/03(土) 14:13:12
質問スレなのに回答者が質問者を罵るスレ初めて見たww いいぞ!もっとやれww
まともな質問で、まともな質問者なら問題ない 意味不明な質問で、その意味不明な原因の理屈や手法を 脳内で当然と思い、それをエスパーで理解出来ないと質問者のくせに高飛車な発言するような 高慢ちきな質問者なら罵られて当然w
ゆとりは皮肉が理解できない 誰もが自分と同じように考えると思い込む 思い込みで説教までする
>>787 質問スレじゃ当たり前のことだと思うが。
・画像が絡んでくると、文章での説明が難しいため誤解をまねきがち ・プロとアマが入り乱れてレベルや前提に乖離がみられる ・ゲームという性質上、低年齢な人やアレな人の参加が多くなりがち 以上の事から荒れやすくなるのかなと
荒れる理由は説明能力のない奴の書き込み一択だろ。 画像とかでも普通に考えて文章で伝わりにくいものは、 絵とか書いてロダとかにあげるだろ。
いいんですか?わたしが参入してしまっても
このスレを含め、ゲーム技術系のスレが 何でこんなにレベルが低いのか考えてみた方がいいよ。 それで、もうちょっと自重して欲しいよ。 でも無理か、所詮匿名掲示板だもんな。
とニコ厨がもうしております
説明も何も、もう確立した方法があるのに 自分で考えた意味不明な方法を質問して それが学術的にも正しいとか思い込んでいて それを突っ込むと偉そうに反論したりする様な奴もいるだろw
>>796 もう止めようといったじゃないですか。
何で止めれないんですか?
私も我慢してるんですよ。アンタもちょっとは我慢してもいいんじゃないの?
798 :
デフォルトの名無しさん :2009/10/03(土) 22:55:33
×止めれない ○止められない
>>797 なんだ?w
自分のことだと自覚があるのか?w
間違いを認めることは良いことだが、それ以前に無かった事にしようとしても
み っ と も な い だ け w w
>>799 別に間違いだと認めてはいないし、無かった事にもしていません。
ただアンタに付き合うのがウンザリなんですよ。
アンタの書いた文章を読めば、何もわかっていないのに
ただ難癖つけているのはバカでもわかります。
アンタとやりとりする為には、とりあえずいろいろ知ってもらわなきゃ始まりません。
何で質問者として質問しに来ているのに、アンタに手取り足取り
教えなきゃならないんですか?
手取り足取り教えた上で、それでご回答頂くんですか?笑わせないでください。
ではさようなら。
>>797 最近のヤローは超自分勝手だな
自分で好き勝手やって、旗色が悪くなると
また好き勝手に止めろとか言い出して、
挙句また自分勝手な理屈で止める自分が正しい的な発言
>>800 お前の頓珍漢質問に誰も、誰一人も明確に回答してない時点で、
それ以前に、自分のバグなのか理屈のバグなかすら理解してない
レスを自分で書いてる時点で、お前のレベルは明確w
なんどでも言うが、優秀なエスパーは全世界を探してもそうそういないぞww
>>800 世にある解決方法ではなく、お前さんの理屈と考えた方法で回答が欲しいなら説明する必要があるだろ
ちなみにお前さんの言ってる方法はイマイチわからんが、ゲームで使われてる一般的な方法とは思えんけど
>>800 君さ、君の質問のレスは残ってるんだよ?
恥ずかしいと思わないの?
ゲームやゲーム以外でも、バカ正直な数的な処理をするだけが良い手法じゃないってのから理解すると良いよ
おまえらフィルタしやすいようにトリップ付けてください
いや、 俺がわがまま言ってるんじゃないよ みんながどう思っているかを非常識なお前に教えてやってるんだよ トリップなんか付ける必要ない
807 :
デフォルトの名無しさん :2009/10/04(日) 00:12:19
なぁ?これからはレベルの低い書き込みはコピペして晒さないか? 2ちゃんのレベル向上にもつながる。
セーブファイルってどこに作るといい?
809 :
デフォルトの名無しさん :2009/10/04(日) 00:52:42
>>808 イカレたところに作ろうぜ。
全部レジストリとかデスクトップとか。
俺なら実行ファイルのあるディレクトリにセーブ用フォルダ作ってそこに突っ込むけど。
すごいこと考えたネットワーク上に保存すれば書き換えられないぞ
1:自プログラムファイルの直下 2:マイドキュメントの中 3:マイドキュメントの中のsettingの中のディレクトリ 4:他人のPCのルート のどこかって話だろうけど 一人でしか遊ばないのなら1でもいいだろうけど Vista以降は3推奨だっけか?
アンカわすれてた上のは >808 ね
>>809 "program files" の下って書き込みできたっけ?
PROGRA~1 とかの時代ならよかったけどな。
時代はポータブル OSに指定されたとこに置くとかアホくさ
毎回ユーザに指定させるのか?
Vistaだと特殊フォルダに「保存したゲーム」ができるね。 この下にメーカー名フォルダとタイトルフォルダ作って入れてるね、MSのゲームは。
今のところあのお作法はあんまり守られて無いね
パスワード形式でいいじゃん
821 :
デフォルトの名無しさん :2009/10/04(日) 11:33:13
※※※コイツに注意※※※ ----------------------------------------------------------- 805 :デフォルトの名無しさん:2009/10/03(土) 23:29:43 おまえらフィルタしやすいようにトリップ付けてください ----------------------------------------------------------- ↑コイツのためにトリ付ける必要なし。 コイツをフィルタで除去すればOKです。
なにこいつきもい
3Dゲーム用マップ作製自画自賛自演
824 :
デフォルトの名無しさん :2009/10/04(日) 12:48:06
結局先日の変な質問してる奴の作ってるゲームって どんなのだったんだろうな
>>825 物理以前にプログラミング能力、、、いや論的な思考力が欠如していて
何も作れてない気がするw
すいません、 前スレでも有益な情報がかなり出てたと思うのですが、 今見ようと思ったらdatファイルをなくしてしまっていることに気付きました。 どなたかよろしければ前スレのdatファイルをうpしていただけませんでしょうか。 余裕があればまとめサイトを作ります。
828 :
827 :2009/10/04(日) 23:59:31
すいません、ネットで過去ログを保管してるサイトを見てみたら出てきました。
>>826 まだやるんですか?
アンタみたいなパラノイア珍しいです。私も久々に会いましたよ。
真っ先にアンタみたいなのに目を付けられたのが、私の運の尽きですかねえ。
人が散々主成分分析だって言ってるのに、
見当違いの言い掛かりつけてきて、意味不明だの何だの
ファビョっている辺り、バウンディングボリュームの構築すら、
ろくにやってないであろうことは、容易に想像がつきます。
何か聞く度に、アンタみたいなパラノイアに絡まれるんでは
そりゃまともな人間は残りませんわ。
私ももう匿名掲示板で聞くのは止めますよ。もうウンザリ。
>>824-826 一応作っているのは物理シミュです。
http://www1.axfc.net/uploader/Img/so/61247.jpg
>>829 そんなのどこにでもいるぞ
いちいち相手にするのが悪いのとやっぱり最終的にやりたいことを
まず示すべきだったと思うんだよね
局所局所自分に必要な情報だけ拾いたいみたいだけど
俺はあんたが求めてるものと本当に必要なものって違う気がするな
でもまあBBXにでもいってみればどうかな?
知ってるかもしれんけど
http://bbx.hp.infoseek.co.jp/
>>829 そんな物理シミュレーションを要求されるのってどんなゲーム?
アクション?
832 :
デフォルトの名無しさん :2009/10/05(月) 00:27:13
>>829 どんなことがしたいんだよ
キャラとの当たり判定か?
>>829 悪いが、自分で利口だと思ってるようだが
やりたい事に対して、やってる事が頓珍漢
バウンディングボリューム?
ボックスとか言ってるレベルがようやく用語を検索したか?w
物理シミュやるのに、移動前と移動後の頂点でバウンディングボリューム作ろうとしてる頓珍漢な奴より
仕事でもっと高度な事やってるから安心して自分の低レベルを猛省しろw
主成分分析と言って省けるレベルの説明だと思えんがw >「ゲームプログラミングの為の3Dグラフィックス数学」に >点の集合から、自然な軸を求める方法が載っていますが(主成分分析法) >この方法をボックスに適用した場合、ボックスの元々の主軸と同じ値が求まれば良いのですが >そうならない場合が殆どです。 >多分、元になる点の選び方が悪いのだろうと思い、 >ボックスの直径の端の6点を使う場合と、頂点の8点を使う場合を試しましたが同じでした。 >どうすれば、最適な軸が求まるでしょうか? >それとも主成分分析では、ボックスからボックスの軸を得ることは出来ないのでしょうか? …未だに頓珍漢すぎて笑えるw
ありがとうございます。
そうします。
私も反省してます。
>>831 とりあえず、HALOのバギーみたいな
簡単な車のゲームを作ってみたい。
>>832 >>780 の後半で彼が言っているような感じで、
移動・回転するバウンディングボックス同士の当たり判定を行う処理を作るにあたり、
移動体同士の判定では重いのと、8分木との相性が悪いのとで、
移動前のボックスと移動後のボックスで、それらを包容するボックスを作り
当たり判定をしようと考えました。
しかし、作ったボックスの精度が悪かったので、それを質問した次第。
レスを頂いたおかげで、なんとなく理由はわかりましたし、
>>777 の言うとおり、移動前後で包容ボックスを作ること自体、間違いだとわかりました。
(この点はこのパラノイアにも感謝してます)
ということで、今のところ不明点はありません。ありがとうございます。
>>833 私はわからないことがあったから聞いただけですよ。
利口だとか高度だとか、知るかよそんなこと。
>>836 お前の超加速度的な頓珍漢ぶりに大爆笑w
お前がパラノイアと言う俺だが、
>>780 も
>>777 も俺の発言なだが?
分って無い俺に、分ってるお前は指摘されて教えられてるわけか?
大爆笑だw
>>837 知ってますよ。
貴方の発言にはクセがありますし。
だから、その点は感謝してるんです。
>人が散々主成分分析だって言ってるのに、 >見当違いの言い掛かりつけてきて、意味不明だの何だの >ファビョっている辺り、バウンディングボリュームの構築すら、 >ろくにやってないであろうことは、容易に想像がつきます。 大いなる矛盾w お前見たいな、技術も無い、説明もろくに出来ないのに 自分の思った通りにならないとガキの喚き出すようでは どのWEB上で質問してもうまくいかないから安心して挫折しろw
>移動前のボックスと移動後のボックスで、それらを包容するボックスを作り >当たり判定をしようと考えました。 やりたい事に対して、自分で考えたマズイ方法で、さらにその方法の実装時の問題を質問するより WEBでやりたい事の主な実装方法を調べて、その実装を聞くという発想が出ない時点で オレオレ方法の当り前を振りかざしても、誰も理解してくれないし解決しない
>>840 質問した点は、そこじゃないじゃないですか。
誰も、移動前後のボックスから包容ボックスを作ることに固執はしてません。
オレオレ方法も主張してません。
ただ、ボックスを材料にボックスを作ったのに、なぜ同じ形にならないのか?
単純に疑問に思っただけですよ。そんなに頭のおかしい疑問ですかね?
>>841 物理シミュ的な実装したいって奴が
移動も回転もほとんど0なのに、移動前後を含む形状が
斜めに変形した形になる理由を質問してる時点でおかしいだろw
どこをどう見ても100%実装のバグ以外にありえないだろ
その時点で物理はおろか数学的なレベルも明らかだと思うが?
>>842 100%実装のバグなのだとしたら、だったらどうなるのが正しい結果なの?
質問の動機となった、私のプログラムの場合、
正方形のボックスの8頂点を入力として、主成分分析から新しい3軸を得ると
それはボックスの対角線と平行になるケースが多かった訳だけど、
(ボックスと同じ軸になるケースも若干だけどありました)
どういう出力が得られるべきなの?出来れば解説付きでお願い。
いやバグならバグでいいんです。そっちの結果の方が私も都合がいいし。
私もまだよく理解してないんで、教えてくれるなら助かるし。
>>843 あのな……移動も回転もほとんど0なのに
>100%実装のバグなのだとしたら、だったらどうなるのが正しい結果なの?
って言っちゃう数学レベルはどうなんだ?w
移動も回転もほとんど0なら、その正方形のボックスから
ほとんど少し大きくなった(ほぼ同じ)正方形以外に有り得ないだろ……
バグです 解説は不要です そのまま回線切って死ぬ事をおすすめします
>正方形のボックスの8頂点を入力として、主成分分析から新しい3軸を得ると >それはボックスの対角線と平行になるケースが多かった訳だけど、 後は、説明が圧倒的に下手すぎるw 上の説明だと、複数の正方形を入力している事が省かれている 普通の人間は、正方形が1つだと読めて各頂点からベクトル作れって回答を言われるぞw 更にゲームプログラミングの為の3Dグラフィックス数学は俺も持ってるが 主成分分析でベクトル作ったら内包形状は作れないのは明確だと思えないのか? 例えば一つだけ外れている頂点があっても内包しなきゃいけにないのに 他の大多数が分布をある方向を示していたら得られるベクトルは適合しないだろw
>>846 >複数の正方形を入力している事が省かれている
ボックスはひとつでいいです。
誰も複数なんて言っていません。
>主成分分析でベクトル作ったら内包形状は作れないのは明確だと思えないのか?
主成分分析はあくまで軸を得るだけですが?
内包形状云々はまた別の話でしょう。
それに、今回は正方形の8頂点という明確な条件をつけています。
それを使えば、何が得られるんですか?
また頓珍漢が始まったw 正方形が一つなら、主成分分析なんてする必要ないだろ 各頂点間を結ぶベクトル作って、自分の好きなベクトルを使えよ
>>848 正方形の8頂点を使って主成分分析を行うと
どの方向のベクトルが得られるのが正しいんですか?
850 :
849 :2009/10/05(月) 01:53:14
止めた。馬鹿馬鹿しい。 これ以上私とわかる発言はしません。 スレ汚し失礼しました。
ゲームプログラミングの為の3Dグラフィックス数学では、明らかに、明らかに XY平面上の2D処理をしていたと思うが? もしかして、それを正方形(3Dの8頂点)で同じ処理をしているのか? そもそも、あの処理を8頂点で行なおうとしている時点で頓珍漢w 得られるベクトルがどうなるか?なんて精度が出ると思ってるのか?
自分の頓珍漢に気が付いたか?w
頭悪すぎだろw 例えば、社員数が5000人の会社の社員給料の平均を取りたいのに、 サンプル社員が3人とかで平均を出したいとか、ある程度の予測をしたい って言ってるレベルだろ どうなるかなんて、そのサンプル社員の給料次第 つまり、正方形の8頂点の座標次第でどんなベクトルにもなるだろw (当然、各頂点を各2D平面に投影して処理してる前提で)
結局は、オレオレ方法を押し付けてるだろw 要はゲームプログラミングの為の3Dグラフィックス数学に載っている主成分分析で 正方形の頂点から得られるベクトルが、正方形に対してどうなっているか? って意味だろ 主成分分析はあくまで頂点の分布に対して行なう処理なので 正方形と括っているのは、オレオレ主観なので、正方形に対して何時も決ったルールでベクトルは算出出来ないのは ちょっと賢い(勉強とか以前ねw)高校生でもわかるんじゃね?…
自演乙
856 :
デフォルトの名無しさん :2009/10/05(月) 12:10:49
>>855 ↑コイツキモ杉
客観的な論拠も提示せずに妄想を書きこんでるゴミクズ
全世界から見えるところに妄想書き連ねて恥ずかしくないのかね
まぁリアルで頭おかしいから恥ずかしくないんだろうけど
857 :
デフォルトの名無しさん :2009/10/05(月) 12:16:26
俺にも自演してるようにみえるぞw
プログラムとは関係ないけど、昔ミニバンのセレナのスレで、 ステップワゴンユーザーにボコボコに叩かれてたとき、 セレナの味方をする発言をした奴は全部自作自演と認定されてた。 一週間に1度くらいしか書いてないのに俺も誰かと同一人物扱いされた。 オレオレ君を擁護するつもりはないけど、 自演認定厨は個人的に精神的に受け付けられない。
>>849 正方形だとわかっているなら、
>>757 で連呼した"六平面が分かってるなら"に合致するだろ。
861 :
デフォルトの名無しさん :2009/10/05(月) 16:57:07
>>858 に激しく同意。
自演認定厨自身が自演してるんだと思うよw
862 :
デフォルトの名無しさん :2009/10/05(月) 16:58:05
俺も
>>858 を支持するぜ。
自演認定厨はスレが荒れるもとだから消えればいいのにw
863 :
デフォルトの名無しさん :2009/10/05(月) 16:58:55
>>858 の言ってることか正しい。
自演認定厨の完全敗北w
864 :
デフォルトの名無しさん :2009/10/05(月) 17:02:07
あー
>>858 は自演認定厨にとどめ刺しちゃったね。
自演だろうが何だろうが、自分の理論が正しければ勝てるでしょ?
ってことで自演認定厨は論理的に説明できないゴミ確定w
ワロタ
おまえらよそに行ってくれないかな
何で認定厨は自演かどうかを気にするのだろう
そりゃ自演してる奴に言えよ。 貴殿の自演は見苦しいし、設定厨が出てウザいので お控えくださいってな。
return 0; } //このスレはここで終了
2Dシューティングを作りたいので該当スレがあったら教えて 全くの素人です
w
この4レスで殺伐とした空気が一瞬にして和んだ。
876 :
デフォルトの名無しさん :2009/10/07(水) 04:48:37
自演ウゼエ
他演もやめて
878 :
デフォルトの名無しさん :2009/10/07(水) 11:19:08
2DRPGを作っているのですが、 村人等を一人当たり1クラスで管理した場合、 100人程度を同じマップに配置しても一般的な環境で重くならないでしょうか? 具体的には 描画…DirectX バックバッファサイズ…320x240 色のフォーマット…A8R8G8B8 CPU…3.4GHzクアッド メモリ…16GB OS…64bit GPU…GeForce9500GT くらいを想定しています。
そのクラスのサイズを計算して100倍したものとメモリ容量の16GBとを比べてみれば?
対応OS Windows XP/Vista
CPU Intel Core2DUO 2.2GHz 又は AMD Athlon64X2 4400+以上
RAM 2.0GB 以上
HDD 12GB 以上の空き容量
サウンドカード DirectXR 9.0c対応のサウンドカード
ビデオカード NVIDIA GeForce 8800GTS/640MB もしくはそれと同等以上のビデオカード
DVD-ROM速度 2倍速以上のDVD-ROMドライブ
DirectX DirectXR 9.0c以上(VistaはDirectXR 10以上)
Crysisの公式推奨動作環境がこれなのに、
>>878 はどんなハイスペ2DRPG作ろうとしてるんだろう
カス
>>880 ハイスペ2DRPGというが、
バックバッファのサイズは 320x240 しかないぞ
世の中は3.4GHz x4が一般的なの? キングウラヤマシス
>>878 重くならない
試しに作って動かしてみな
>>878 クラス云々よりも描画するデータ量を気にするべき。
100x100のグラをもつキャラと1000x1000のグラをもつキャラでは処理の重さが違う。
より面白い物を作るなら切り捨てる勇気も必要じゃない?
シングルスレッドのゲームしか作れんのにクアッドコアも無いだろ
888 :
デフォルトの名無しさん :2009/10/07(水) 19:51:43
描画 CPU バックバッッファ 320x200 色のフォーマット 8-bit パレット CPU 100MHz 80486 メモリ 640KB OS MS-DOS, リアルモード GPU 無し 音声 ビープ音 プログラムのサイズ 64KB 合計ディスク容量(リムーバブル含む): 1.44MB こんな環境でも100人程度は表示できる
馬鹿じゃねw そのときの顔-> (・_・)
100MHzとか、贅沢なCPU使ってるじゃねーか。 プレステだって33MHzだぞ。
>>890 プレステはCPUだけで処理してるわけじゃないし。
また浅い知識の応酬か
893 :
デフォルトの名無しさん :2009/10/07(水) 23:07:12
>>888 のような環境でWolfenstein 3D的なゲームを作れる人間が
このスレにはどれだけ居るのであろうか。
>>893 そんな必要ないのになんでそんなニッチな技術で競おうとするの?
質問です ゲームではよく使用するファイルをアーカイブ化しますが、アーカイブ化したデータを使う際は、普通どうやっているのでしょうか? たいていのAPIやライブラリは、ファイル名をパスで指定すると思います。 例えばmp3データなどの音声データをアーカイブから使うとき、 ・アーカイブ中から読み込んで自分でデコード ・起動時にどこかに一括で展開して書き出してパスを渡す ・使用するときに必要なファイルだけをどこかに書き出してパスを渡す ・その他 などが考えられますが、どうやっているのでしょうか?
それぞれのメリットデメリット考えればわかりそうなものだが
視点を変えてみると、ファイルだって メディア全体から見たらアーカイブの一部と捉えることが出来るだろう。 さておき、fseek()とか使ったことないん? あとパスしか与えられないライブラリなんて糞すぎるから使うのを止めなさい。
>>896 >>897 回等ありがとうございます。
つまり、その他で「アーカイブ中から読み取れるライブラリを使う」ということですか?
そういうのも探したんですが、特に音声再生計などでは見つかりませんでした。
しかも、ファイルの種類ごとにそういうのを見つけないといけないとなると大変そうですね…。
もう少し探してみることにします。
アーカイブと圧縮は別ものだろ。
頼むから、fseekについてググるくらいしてくれ
>>900 知ってます。今回使ってるのはVB.NETですが。
というか,すでにBMPとWAVについては自分でヘッダやらもアーカイブ中から読み込むようにしてます。
mp3やmidiなど、全てのファイルでこの方法でやろうとしたら限界を感じたので質問しました。
BMPとかをアーカイブから読めてるんなら、mp3も処理は同じだろ。
いえ、BMPやWAVは生データに近いのでそのままDIBにしたり再生したりは楽なんですが、 MP3やらでそれをやろうとすると、仕様にそってデコードしつつOUT系のAPIに渡すという面倒なことになるので ファイルの種類ごとにこういう読み込み処理を作るのは限界があるな、と思いまして。
904 :
デフォルトの名無しさん :2009/10/08(木) 07:42:35
先頭から何バイト目はこのデータっていう 必要なものとそのアドレスの一覧をデータをまとめる際に作成する あとはfseekで飛ばして読むだけ だから一見まとまってるようにみえるアーカイブ?もただファイルをつないだだけが多いんじゃないかな?
つーか、
ならそれが君の限界だったんだろう。 >アーカイブ中から読み取れるライブラリを使う なんでそうなる。メモリアドレス(ポインタ)を与えられるライブラリを探せってことだ。
>>906 ありがとうございます。やはりそれが普通なんですね。
>>903 読み取ったデータを渡せばデコードして再生してくれるAPIくらいあるだろ。
909 :
デフォルトの名無しさん :2009/10/08(木) 21:26:39
今度はAPI厨か。 APIがないと何もできない(笑)
標準Cがあればどんなゲームでも作れる
漢ならデコーダくらい自分で書け、ってことですね
エンコーダー作るなら話は違ってくるが、 たかがゲームのBGM再生するのにそんな手間かけたくないなぁw
まぁ一度書けば満足して次からは普及してるものを使うようになるよ。
自分でやらなきゃ駄目な気がするから、あえて自分でやるものと 即既製品を使うものと分かれるよなぁ。 自分の場合、BGM系は鳴ればいいから何でもいいな。
915 :
デフォルトの名無しさん :2009/10/08(木) 23:20:53
mp3とか使うから訳の分からんことになるんだ mggvorbis使え
mとoをどうやったら打ち間違えるのか気になる
読みづらいだろうな
>>915 mggvorbisってなに?
訳分かんねえ
919 :
878 :2009/10/09(金) 02:12:11
920 :
デフォルトの名無しさん :2009/10/09(金) 07:43:35
>>918 oggのモグ化
綾波→モグ波(オレニヨシ)
あいつの絵は見ただけで吐きそうになる
922 :
デフォルトの名無しさん :2009/10/09(金) 21:52:12
ゲームクリエーターってキモい奴多い
クリエーター様はキモくない奴のが多いよ プログラマは言わずモグなだが
板違い
いいんだよ、 ここは隔離収容所だから バカが拡散されても困るだろ
926 :
デフォルトの名無しさん :2009/10/10(土) 18:02:29
なかいいなオマエラ ほっこり
928 :
デフォルトの名無しさん :2009/10/10(土) 18:25:56
>>878 100個はやめたほうが良い。マルチスレッド化してメリットがあるのはCPUの数までだよ。
4コア最適化なら4クラスまでにしたほうが良い。
マルチスレッドにするとスレッドごとの処理以外にもスレッドの管理やら排他処理やらも入ってくるからスレッドごとの合計に加えてその処理もしなきゃならなくなる。
例えば4コアのところに4クラスあったとして、そこにもう1つクラスを追加すると結局どこかのCPUがスレッドを2つ処理する必要が出てくる。
そうするとマルチスレッドにしたことにより本来の処理の合計より負荷が高くなるのでデメリットとなる。100コアとかはそのデメリットが顕著に現れるよ
コア数の倍までのクラスなら体感速度はデメリットを感じるほどまでにはならないんだけど、そこまで考えて組めるかどうかがプロとアマの違いかな。ある程度経験が必要になってくる。
最近の若い奴はとにかくマルチスレッド化すれば速くなると勘違いしてるのが多くて困る。
俺なんかは企業で製品を作るときのメインプログラマを何度もやってきたし、そこで基幹部分の設計なんかも手がけてきたからクラスはかなり自由に扱える。
まあお前も頑張って努力すれば俺くらいすぐに超えられるから頑張れ。
いやーでも擬似タスクのタスクをさも当たり前に書くやつが出ると 俺としては知ってるだけに正直恥かしいぜw
スレッドプールを使うという発想さえないのか
また始まったか
934 :
878 :2009/10/11(日) 11:28:34
お前らこんなぶっとい釣り針でも見境なく食いつくんだな マジ笑える
>>934 いや、お前の書き込みは頭は悪いけど変な部分は見当たらない
なんか最近ずっと変なやつが住み着いてるなぁ。 技術的な話をする気がないならゲーハーにでも行けばいいのに。
937 :
デフォルトの名無しさん :2009/10/11(日) 17:46:42
どうせ住み着くならhspにしろよ あそこなら底辺の人間しかいないから問題ない
938 :
デフォルトの名無しさん :2009/10/11(日) 19:37:27
HSPスレはみんな真面目にやってるから馬鹿が来ると迷惑。
真面目に馬鹿やってるヤツと 不真面目に馬鹿やってるヤツがいる。 真面目に馬鹿やってるやつは見ててほほえましい。 やさしく導いてやりたくなる(けどやんない)。
ほとんどC++なのにはじめからC++拒否ってるヤツのやる気って・・・
最終目標はMMO(とはいっても棒人間5人ほどがチャットして歩きまわって出てくる敵を殴る程度) ゲーム開発経験なし(エロゲのような選択肢つきパラパラ漫画なら作れるかもしれん) 数学の知識(ほとんど忘れてしまった&高校数学より先はさっぱり分からん) といった具合なのですが最終目標からしてどのようなゲームを順に作っていけばいいですか? 必要になる数学やアルゴリズムの知識はそのつど勉強するという方向で・・・
942 :
デフォルトの名無しさん :2009/10/12(月) 07:21:12
とりあえず適当に調べて流体シミュレーションを作れ それだけでゲーム開発者の素質が分かる
流体力学って(物理科だと)普通3年の単位だろ 高校数学もままならんやつには荷が重いと思うが
>>942 とりあえずお前がお勧めのアルゴリズムを教えてくれ
流体シミュレーションを使うケースなんて相当限定されるだろ。
どこで覚えたか知らんがいい加減な情報をひけらかすやつが多いなぁ。
うそをうそを・・・といえばそうだけど、全く意味のない情報でつまらんしね。
>>941 最近はゲームプログラミングの入門書がゴロゴロ転がってるから
その辺で適当に勉強を始める。ある程度形にあるものができてきたら
次はネットワークプログラミングに手を出す。
このくらいのレベルになれば必要な知識の見通しもつく。
言語についてだが、職業にしたいなら初めからC++辺りだが、
それなりの覚悟がないと挫折する可能性が高い。
次点としては、最近の流行だとC#なのかなぁ。
>>941 のようなものなら流体はおろか物理シミュもほとんど必要ない。
ネタとしたらつまらんなぁ。毒にも薬にもならないってやつ。 どうせならHSPで物理エンジン作れ、ってくらいぶっ飛んだこと言ってほしいよw
そんなにぶっとんでねぇだろ
949 :
デフォルトの名無しさん :2009/10/12(月) 10:33:09
流体シミュレーションなんて簡単に作れるだろ ナビエストークスでもオイラーでもネット上に式が転がってるし 描画もマーチングキューブ使うやり方がNVIDIAのサイトにあるし
別にあえて作る意味はないな
951 :
デフォルトの名無しさん :2009/10/12(月) 10:40:26
そんなの作ってもほとんど役に立たないだろ やるならせいぜい水面のシミュレーションで十分
高校数学も知らんやつにできると思えんし、 入門題材としてそれを挙げる意味がサパーリ分からん。
953 :
デフォルトの名無しさん :2009/10/12(月) 10:52:51
高校数学より先は知らないってことは高校数学は知ってるんじゃないの? 仮に知らなくても調べれば独学でも作れるだろ
なんでそんなに必死になって流体シミュレーションを推すのか。
955 :
デフォルトの名無しさん :2009/10/12(月) 11:19:02
MMOを作りたいならネットワーク関係のほうが重要だろ
956 :
デフォルトの名無しさん :2009/10/12(月) 11:27:23
なんか最近プログラミングしててもチンコが勃たないんだよな 昔はエディタ起動するだけで射精したのに
自称一般人はゲハの戦士とか知らないからかえって こういう「流体シミュ戦士」化するのかもな 俺等から見るとGKや妊娠と同じw
「高校で習ってないからできません」じゃ、衝突判定も難しいんじゃね?
適切な教材上げられない人間って実はなにもわかってないやつが多い 発言をひかえるべき
匿名で知ったかする奴って何なの? 相手にしてもらいたけりゃトリップでもつけろよカス
>>949 とりあえずFosterの論文の問題点である数値の発散はどう解決すればいいですか
ゲームの「シミュレーション」てのはアカデミックな奴とは違って なんちゃってなんでキニシナイ
ゲームでも物理シムやるならSIGGRAPH論文は範疇だろ
964 :
デフォルトの名無しさん :2009/10/12(月) 14:29:39
>>961 セミラグランジェ法だっけ?あれで発散はかなり抑えられるだろ
965 :
デフォルトの名無しさん :2009/10/12(月) 14:30:21
>>941 2Dであり、なおかつSDLを利用して作成するとすれば、
最終目標に到達するには最低でもSDLとSDL_netが必要。
効果音を出したければSDL_mixerが便利。
BMP形式以外から画像を読み込む場合SDL_imageが便利。
あと2Dである限り数学の知識はほとんど必要無し。
ただ、MMOである以上、ネットワークに関する知識が必要となる。
また、サーバー用のプログラムと、クライアント用のプログラムを別々に作る
必要がある。
そもそもゲームじゃメッシュ分割なんて使わない。
967 :
デフォルトの名無しさん :2009/10/12(月) 14:38:43
>>941 別々のプログラムを作るといっても、完全に別々となるとメンテナンスに苦労する。
そこで、プログラムの「一部」をサーバー用のプログラムと
クライアント用のものとで共有すればよい。
例えば、次のようなものである:
* マップの読み込み (ただし画像データはクライアントのみ)
* キャラクタのモーション (モーション時の画像はクライアントのみ)
* キャラクタの状態に関する構造体
* 通信プロトコル
Makefileやらを使用する場合、例えば次のようなディレクトル構造でファイルを分けていくと
よい:
src/
game/ サーバーのみで利用するソース・ヘッダ
cgame/ クライアントのみで利用するソース・ヘッダ
common/ 両方で利用するソース・ヘッダ
968 :
941 :2009/10/12(月) 15:28:42
皆さんどうもレスありがとうございます
色々参考になります
高校数学・物理は文系選択だったので使うこともないだろうと
適当に聞き流していました
大学では一般教養で算数じみたものしかやっていません
こんな感じなので3Dは現時点では不可能だと思います
ゲームといえばCかC++と考えていましたがC#でもいいんですね
Javaを少しいじったことがあるのでC,C++よりはとっつきやすそうです
3Dシミュレーション関連は想像もできなく興味はありますが
上記の理由で今は無理そうなので2Dからはじめたいと思います
>>965 さんの言うとおりSDLを使ってやってみることにします
>>967 さんどうもアドバイスありがとうございます
Webプログラムはよく作るのですが反対部分(画像がクライアント側にあるなど)も多く
イメージがつきにくいですが色々調べてやってみます
ていうか皆さん普通に論文読むんですね
理系はさすがに研究熱心な人多いなぁ
>>941 はプログラミングしたいの?
普通にMODとか作ればよくね?
MMORのようなゲームってサーバー運営するぐらいの知識が必要じゃないの? サーバ運営するには何冊もそれ関係のぶ厚い本読んで 攻撃に対処できるようにならないといけいんじゃないの? 例えば有料運営する自信を得るには5年間ぐらいかかんじゃね?
ライブラリ使えば問題ない。
>>971 そういう面白いことは
>>941 の要件を読んでから言えよw
>棒人間5人ほどがチャットして歩きまわって出てくる敵を殴る程度
そもそも個人で有料MMOなんていろんな面で不可能
まず有料の既存サービスに勝るものを個人で作ることが不可能
例えできてもアップデートは遅くバグ修正も遅いと顧客満足度が低い
サーバ代金や通信代金などインフラの初期投資が個人には無理
まぁその変はスポンサーがついてくれるような面白いものならなんとかなるが
運営失敗後に待ってるのは先の見えない借金生活
危なくなったときにスパっとユーザーを切り捨てて突然サービス終了でもいいが
スポンサーの信頼も失いかねないのでズルズル運営せざるをえない
まぁそのころにはスポンサーにも見限られて借金まみれだろうが
要するに個人でMMOなんてハイリスクノーリターン
ライブラリってw
>>973 >941と無関係に興味がある
サーバー立てないネットーワークだとまず
ユーザーとユーザーを引き合わせることが出来ないから
友達同士でしか遊べないんだろうな。
しかしファイル共有ソフトみたいなP2Pってどうやってんだ・・・
同じ原理でできんのかな?
フラッディングは情報処理技術者試験で出題される 一般的な技法です 専用サーバーレスのMMOは誰か実現して欲しいな、多人数リアルタイムでは無いだろうが
>>976 確かにP2Pじゃ基本1対1だわなw
フラッディングとか言って今調べたんだが
信じがたいな。例えば簡単に言うとブラジルと日本で各1名が通信しようとしたら
無差別に世界中のPCに情報流して、お互いが出会うまで
「このゲームをやろうとしている人いますか〜」って調べてくわけですか?
うめ
うめ
うめ
うめ
うめ
100億円売り上げが出せるくらいすごいゲームを3分で作る方法を教えてください。 プログラミングや絵描き等の特殊技能を必要とせず、できるだけしんどくない方法が良いです。
VIPで聞けば皆相手してくれるよ
鬼ごっこしようぜ。
うめ
>>983 もしそんな方法知ってたら、自分で実践して儲けを独り占めしたいので、あなたに教えるわけないです
ベガスのような賭場を用意できる予算があれば可能 コマンドラインのスロットなら3分でできる
頭の良い奴は居るもんだな
かゆ
>>975 サーバーやるやつがipを掲示板か何かで共有すれば十分。
抵抗あるヤツも多いだろうから暗号化でもして。
>>983 買ったら何度でも100億円プレゼントする1万円のジャンケンゲームでも作っとけ。
売り上げならすぐに100億いくだろ。
993 :
デフォルトの名無しさん :2009/10/12(月) 22:28:11
>>983 自らをランダムに突然変異させネットワーク経由でほかのPCに自らをコピーするだけの
プログラムを作成する。
数億年後か数兆年後ぐらいにはあなたの銀行口座を100億円にするコンピュータウイルスに変異しているだろう。
>>993 ヤツは「ゲーム」を「3分」で作ることをご所望しているようだぞ。
995 :
デフォルトの名無しさん :2009/10/12(月) 22:35:19
>>993 自らをランダムに突然変異させネットワーク経由でほかのPCに自らをコピーするだけの
プログラムを作成する。
数億年後か数兆年後ぐらいには敵を撃墜するたびにあなたの銀行口座を100億円増やすゲームに変異しているだろう。
ありったけのコンピュータを用意し 文字列を総当りで出力し、コンパイルするプログラムを並列で動作させる コンピュータの数と性能が十分であれば3分で任意のプログラムを作成できる
任意のプログラムを3分で作成できる方法で、作成するのに4分かかるプログラムは作成できるのかね?
ボゴソートみたいな奴だろ、 確率の話では、ランダムな文字列が意味が通じる言葉になる可能性もある
999
1000
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。