シューティングゲームの処理速度アップのための 計算の簡素化とかはここで聞いてOKですかね?
テーブル参照にしても変わらんぞ 精度が落ちるだけでほとんど意味無い 素直に三角関数使え
まあまず手を入れる前にプロファイルとるところからだな。
atan系関数を使わず、自機と敵の角度を求める方向はありますでしょうか?
202 :
201 :2009/05/22(金) 11:12:02
方向じゃなく方法でした。
あるよ、荒ければatanより早い場合があるけど、 細かく調べると断然遅い。 昔のアクションゲーム(10年以上前)はatanは使わずにやってたよ。
204 :
201 :2009/05/22(金) 11:52:37
>>203 そうなんですか。
軌道変更に関しては別方法があるのは知ってるんですが
問題は画像の回転処理のためにどうしても角度が必要でして・・・
なんでatanじゃ駄目なんだ?
206 :
201 :2009/05/22(金) 12:29:26
>>205 駄目というわけではないんですが、別の方法で軽くできるならと思いまして
低速移動の弾幕系のゲームなので結構切り詰めないと厳しいんですよね
なんですぐバレるような嘘つくかなぁ。 これでも使ってろよ。 int GetDir(int srcx, int srcy, int dstx, int dsty) { int absx = abs(dstx - srcx); int absy = abs(dsty - srcy); return (dstx == srcx) ? (dsty > srcy) ? 0 : 180 : (dsty == srcy) ? (dstx > srcx) ? 90 : 270 : (dstx > srcx) ? (dsty > srcy) ? 90 * absx / (absx + absy) : 180 - (90 * absx / (absx + absy)) : (dsty > srcy) ? 360 - (90 * absx / (absx + absy)) : k = (90 * absx / (absx + absy)) + 180; }
一箇所誤りがあったので訂正 int GetDir(int srcx, int srcy, int dstx, int dsty) { int absx = abs(dstx - srcx); int absy = abs(dsty - srcy); return (dstx == srcx) ? (dsty > srcy) ? 0 : 180 : (dsty == srcy) ? (dstx > srcx) ? 90 : 270 : (dstx > srcx) ? (dsty > srcy) ? 90 * absx / (absx + absy) : 180 - (90 * absx / (absx + absy)) : (dsty > srcy) ? 360 - (90 * absx / (absx + absy)) : (90 * absx / (absx + absy)) + 180; }
209 :
201 :2009/05/22(金) 12:44:23
>>207 嘘はついてないですってw
某ゲーム機の自作アプリなんでハードウェアの性能の上限が決まってるので
あれこれ工夫しないと厳しいんです。
コスト高そうだな
>>209 PSPはnewlibのatan2で問題ない
DSならテーブル参照版ATAN2を作れ
改善する意味があるほど atan が遅いということは、計測して確かめたの? 言語は何? 毎フレームじゃなく、生成時と、その後4フレームおきとかにすると計算量が 1/4 になるかもよ。 方角が右回りか左回りかで十分なら(九十度回転させて)内積が使えるかもね。 ゲーム機なら精度はx/1000程度で十分だから自前でテイラー展開するとよい。 回転機能にラジアンを渡すなら atan だが、行列を渡すなら正規化するだけで sin, cos が出るのでこちらを使う。 つーか情報小出しにしすぎだろ。
213 :
201 :2009/05/22(金) 12:52:12
>>211 なるほど
じゃあ後はホーミング弾の画像を回転処理しなくても辻褄があう
単なる○とかにするしかないんですねえ。
そうすれば画像を回転させるためのatanなくなりますんで
214 :
201 :2009/05/22(金) 12:54:41
>>212 >毎フレームじゃなく、生成時と、その後4フレームおきとかにすると計算量が 1/4 になるかもよ。
これはすでにやってます。
60fpsなんで演出上もなんとかごまかせる範囲でホーミングしてくれてます。
>回転機能にラジアンを渡すなら atan だが、
この辺は土台として某所で最近使われだしたDXライブラリのPSP版を使ってるので
どうしてもラジアンである必要があるんですよね。
ライブラリ上で動くのでチューニングしにくいのもあるんですけどね。
>>210 いまどき携帯ゲーム機ですらプリフェッチを備えているのに分岐しまくりだしねぇ
もしDSだったら、除算命令が無いので更にコスト増
>>213 atan2で問題ないっつってんのになんでそうなるんだよ
テーブルの作り方知らないの?
また東方厨かよ・・・
218 :
201 :2009/05/22(金) 13:05:38
>>216 atan2で問題ないということは現状以上の速度アップはできないということになるので
改善するには画像の回転という演出をやめるしかないという結論なんですが・・・
つまりどこにボトルネックがあるのか 本当のところはわかってないと
PSPのようなクロスで開発する場合プロファイリングできるんだっけ?
非公式環境でも普通にpsp-gprof提供されてるし。当然できる。
まあ、ソースをみる限り atan2はcosやその他超越関数より はるかに軽そうだがな。 これをボトルネックとみるのは どうかな。
ライブラリ側のソースも見てるが回転機能が付いてる描画関数は sinとcos使ってるからどうしても処理を軽くできないなら回転をやめるのは ある意味正解かもしれん。
まぁそれでも、あらかじめ回転した画像を用意するだけの話ではあるがな
今時それは非効率すぎないか?
効率的に目的を達成する方法があるなら提示してあげればいい
>>227 重たいロジックを入れない->回転やめる
まぁそれも、あらかじめ回転した画像を用意するだけの話ではあるがな
分岐のコストが低いプロセッサならCORDICどうかな? やってみたことないからうまくいくかわからんけど。
画像を用意する場合はどのくらいの分解能 引っ張ってくる画像を判断するための処理ロジックのコスト 無駄が多いな
| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| スンマセン、直ぐに連れて帰ります
|__ ________
__∨______.__.__
, '"――――‐, '"―‐ ヽ`l:1
./ ∧_∧ //'~ ̄ ̄|.||::| | ∧_∧ アヒャ
.i (´Д`;.) i ! _,._|.||::| | ( ゚∀。 ) ←
>>201 [;].!_っ⌒'と _0[;],l | f _..┘|| | :|__( つ つ___n____n
~l!=;:,...二二....,:;=iヨ.'ー''"~ . __ !|:| :|lー‐―i iー‐―i iー‐―i iー‐―l i|
li..,._.  ̄。 ̄. _.,..!.| ........~ノ,!;|__|l__!_!__!_!__!_!__l__!|
il_`}≡≡{´_E|..::' /⌒ヽ'ヽl|!=イ二ll二二ll二/_/ ⌒ヽヽ(ニ(]
. {=i:::::::[二]:::::::i=i::」 |i.(*).i;;;;|ii□□::(ニ三ニ)::::|;;;;;;|ii.(*) i;;;|
 ̄ ̄ゞ三ノ  ̄ ̄ ̄ゞ_ノ ̄ ゞゞ三ノ  ̄ゞゞ_ノ~ ≡3
駄々こねても困るのは東方厨だから別にかまわんけどね
一応プログラミングの話題で議論してるのに 関係ないスレにまで出張してくるアンチはしねばいいのに
>>234 で、流石にもうプロファイルはとったよな?
どこにボトルネックがあったんだ?
まだとってないならpspDebugProfilerEnableという手もあるぞ
236 :
デフォルトの名無しさん :2009/05/22(金) 16:38:32
タイヤが回ると車って前進するじゃないですか この仕組みがよくわかりません。 タイヤの回る力が並進する力に変わるプロセスってどうなりますか? タイヤと路面のすべりは0だとすると、 1、タイヤにトルクを加える。 2、タイヤに角加速度が発生。 3、タイヤと路面の接触点(面)に加速度が発生。 4、??? <-このプロセスがわからない 5、タイヤの重心に加速度が発生。 6、タイヤは回転しながら並進する。
>>236 接してる面だけしかない場合は軸を円周方向の角速度の逆に蹴ってる。
単なる棒で接してるなら軸は真っ直ぐ前ではなく倒れてしまうけど
タイヤという円形なので連続して蹴るために軸は同じ高さを保ったまま
ベクトルとしては水平方向に進む?
>>237 その棒の例えは、感覚的にはわかるのですが
原理的にあまりよくわかりません。
これがわかれば、球の前進も理解できそうな気が
するんですが。
すべり0の路面とは、接触した点はX-Yのどの方向にも
動かすことは出来ないということ。つまり速度=加速度=0の拘束を受ける。
タイヤが角加速度を発生すると、接触点に加速度が発生するはずであるが
さきの拘束がある為、加速度=0になる。その帳尻合わせる為?代わりに
接触点以外の質点の加速度をマイナスする。。のかな、ん〜よくわからない。
なんか中学生の疑問ぽいな 壁に向かって力を押せば、反対側に進む 作用・反作用の法則だ タイヤの場合もそんな感じ
240 :
212 :2009/05/22(金) 21:47:48
>>201 DXLibralyPortable 見てみた。
DrawRotaGraph() の類を使っているのだな?
リストの線形探索というとても効率の悪い GraphHandle2Ptr() を、
一枚描画するたびに何度も呼ぶことになっているが、同じ画像を
使う描画をまとめることで、実は一度だけでよいようにできる。
当然、SetTexture() も一度でよくなる。
また、sceGuGetMemory() を毎回呼び出しているが、事前に枚数が
分かっているのなら、これも一度でよい。
ついでにいうと、GuListSafety() はうんこだ。
sceGuGetMemory() の直前に必要量が足りるかを判定して、足り
ない場合に不ラッシュするようにすべきだ。
さらにいうと、この処理を見れば分かるように、パケットエリアが
足りなくなると sceGuSync() を呼ぶことになるが、これは処理速度
の観点から好ましくないので、sceGuGetMemory() 直前に、パケット
エリアが足りなければ assert() するようにした方が良いかも知れない。
メモリ効率が重要ならリングバッファに。
double は論外。
どうしても必要な場合だけにしなさい。
float <-> double の変換だけでかなりの時間を使う。
まず間違いなく、atan は無罪だ。
DrawRotaGraph() を引数を含めて最適化したほうがずっと効果が
高いだろうと思われる。
あとお前、212 のテイラー展開とか正規化で sin, cos とか無視しやがったな。
進行方向修正だけなら(九十度回転)内積だけで済むとかも。
DXlibってド素人向けゴミクズライブラリの分際でPSP用とかあるのか
243 :
デフォルトの名無しさん :2009/05/22(金) 22:19:22
開発者 「スレで開発すればプログラムの勉強になるし名声とかも得て一石二鳥♪」 実際 PSP独自の関数とか絶対他で使んねぇのに開発とか超受けるんですけどww 2ちゃんで開発とかwwずっと乞食共に食われてろよw 自身のブログで公開してアフェリエイトでも期待してた方がまだマシだなw 名声?まあ、そのくらい分かるよなw そもそも完成しないのに開発って矛盾しすぎww っていうかなんでパスつけてんの?優しい優しい開発者が乞食のために公開してんじゃなかったの? いいよ、俺が教えてやるよPASSは601だwww 一生このスレで乞食の相手やMの奴隷でもやって、くたばっちまいなぁwww 乞食 「やべwwPSPで東方ができるwwダウンロードっと」 実際 「はぁ?こんなの東方でもなんでもねぇよ、くそつまんねぇ〜 でも、そのうち本物と同じくらいの出来が来るかもしれないから毎日来るか」 こんなスレにずっといると精神腐っちゃうぞ☆ 将来のためにお勉強した方がよっぽどいいよ、マジで
>>240 わざわざ私のソースコード呼んでくれてありがとうございます。
次のバージョンあたりで線形探索とかsceGuGetMemoryとかの最適化も含めようと思います。
バッファ足りなくなった時点でassertですか・・・それもありですね。双方に利点欠点があるので適宜切り替えられるようにしようかなと思います。
リングバッファはPSPSDKの設計上難しそうです。
引数にdoubleが存在するのは本家ライブラリに合わせているのが原因です。これもプリプロセッサか何かで対応しようかと思います。
的確な指摘本当にありがたいです^^
>>240 追記
進行方向修正で左右を判別するなら90度回転して内積つかうよりも直接外積使った方がいいですよ。
正確には2Dでは外積そのものは定義できないので「外積の大きさ」を使うことになりますが。
atanは無罪ですね。でもatanよりatan2使った方が良くないですか?
atanだと第一象限と第四象限の角度しか返さないので補正に一手間必要ですが、atan2だと全象限カバーできますし。
そのあたり実際にベンチマークが必要ですね・・・
なんか伸びてると思ったら最近あちこちで利用されてる龍神録関係か 数学はあまり詳しくないんだが確か龍神録のホーミングは360度 軌道修正できる感じだったので内積とか外積は関係ないんじゃないか?
>>245 わかってるなら初心者に東方もどきを作らせずに自分で作れば良いと思うのだが
>>247 私は実際のプログラムよりライブラリを作る方が性に合ってるのでw
実のところ纏まった時間も無いですし、ゲームの開発はしばらく人任せにしようかと思ってます。
あばばばば
250 :
212 :2009/05/23(土) 14:23:21
>>244 assert の話は利用側への話。
psp sdk を軽く見てみたけど、リングバッファにもできそうだ。
デメリットもあるからメモリ効率を追求するのでなければ不要だが。
GPU の処理負荷はどうだ?
GPU が原因で処理落ちするようなら、パケットエリアのダブルバッファを検討
すべきだ。
今の構成では、多分 GPU が遊んでる時間が結構あるし、フレームの最後の方で
大きなプリミティブを描画すると処理落ちの危険が不必要に高まると思う。
double を使うと本当に重い。
-S オプションでアセンブリリストを出力させ、double 変換関数が呼ばれて
いないか調べなさい。
変換関数の名前は覚えてないから、テストプログラム作ってリスティングして
調べてくれ。
sprintf() などの可変引数に渡すときや、float から long への代入時に暗黙
の格上げがあったりするので注意。
>>245 カチンときて何か言わずに済まなくなったのか。
atan の話で、テイラー展開の話を理解していないことがわかる。
自前の atan を実装しろという話なのだから、標準ライブラリの atan() を使え
と言っているわけがない。
標準ライブラリの atan() は double なのだから、double を論外とする人がそれ
を使えというわけがない。
実際に標準ライブラリの atan()/atan2() を使っていたのなら、すぐに atanf()
か atan2f() に直すべし。
251 :
212 :2009/05/23(土) 14:24:17
>>245 > (略)直接外積使った方がいいですよ。
君は自分がなにをしなければならないかを知っているが、俺の言ったことは
理解していない。
ベクトル (x, y) を九十度回転させて (x', y') にする操作は、
(x', y') <- (-y, x) である。
一般の回転は (x*cos - y*sin, y*cos + x*sin) であるが、今回は九十度
なので cos(90) == 0, sin(90) == 1 であり、結果 (-y, x) となる。
ではこれを使って、九十度回転したベクトルとの内積をとってみよう。
ベクトル A と B の内積を Ax * Bx + Ay * By とすると、九十度回転した
A(-Ay, Ax) との内積は Ax * By - Ay * Bx となる。
おや、何か外積と似てるね。
さて君は外積の大きさを使うと言ったが、具体的にはどのようなことだろうか。
(Ax, Ay, 0) と (Bx, By, 0) のベクトルの外積をとって、出てきたベクトル
の各成分の二乗和の平方根と解釈して良いだろうか。
このとき、当たり前だが、外積の結果は、x 成分と y 成分がゼロである。
元の二つのベクトルの z 成分がゼロであるから、これは当然である。
であれば、最初から z 成分だけ計算すればよいのであり、だとしたら、その
計算を外積だと主張するのは、間違いではないがピントが外れていると言えない
だろうか。
それに、ベクトルの大きさならば負の値をとらないから、その点でも説明不足
な表現といえるだろう。
245 は分かっているだろうが、ライブラリを使う側の話なので、折角だから進行 方向の更新処理についても説明する。 弾の位置から自機の位置を引いたベクトルを A、ホーミング弾のフレームあたり の移動量(進行方向)のベクトルを B としたとき、B と九十度回転した A との 内積の値は |A||B|sin となる。 ここで角度を得るためには |A||B| で割ればよいのだが、平方根と除算が必要に なる。 平方根自体は psp ならば浮動小数点ユニットに実装されているはずだから、 目くじら立てるほど遅いということは無い。 しかし平方根や除算を消せるならそれに越したことはない。 ホーミングの進行方向修正を考えた場合、必要なのは、右に回転すべきか 左に回転すべきか、それとも正対すべきか(向きの差が回転性能未満の場合) ということを判断するのに十分な情報だけである。 右か左かというのは、sin の符号でわかるので、回転性能未満かどうかの判定 について説明する。 ベクトル A 同士の内積、つまり Ax * Ax + Ay * Ay の結果は、|A| * |A| である。二乗和であるから当たり前だが。 件の内積の結果であるところの |A||B|sin を二乗すると、 |A| * |A| * |B| * |B| * sin * sin となる。 これを A の二乗和と B の二乗和で割ると sin * sin が出るのだが、今回は 比較に使うだけなので割る必要はない。 a > 0 かつ x > y のとき、 ax > ay という法則があるので、これを利用する。 a を |A| * |A| * |B| * |B| とするわけだ。 また |x| > |y| の時、x * x > y * y を利用して、回転限界の sin の二乗 と、A と B のなす角の sin の二乗との比較を行う。
253 :
212 :2009/05/23(土) 14:27:27
回転限界を r 、その sin を sr、さらにその二乗を sr2 とすると、 outerp = Ax * By - Ay * Bx; // |A| * |B| * sin outerp2 = outerp * outerp; // |A| * |A| * |B| * |B| * sin * sin alen2 = Ax * Ax + Ay * Ay; // |A| * |A| blen2 = Bx * Bx + By * By; // |B| * |B| limit2 = alen2 * blen2 * sr2; // |A| * |A| * |B| * |B| * sin(r) * sin(r) if ( fabsf(outerp2) < limit2 ) /* 回転限界未満 */; else if ( outerp < 0 ) /*右回転*/; else /*左回転*/ というようにして、除算も平方根も無いばかりかコンパイラがスケジュール しやすそうなコードが出来上がる。 前述の法則から、fabsf(outerp2) < limit2 は結局 sin*sin < sin(r)*sin(r) と同じ結果になることが理解できるだろう。 回転限界未満では atan などを使うことになるが、テイラー展開で自前で実装 したバージョンを利用するなら、asin の方が収束しやすいので、平方根で割って でも asin を使った方がいいかもしれない。 これは実測しないとどちらが有利かはわからない。
254 :
212 :2009/05/23(土) 14:28:30
余談だが、最適化のヒントになるので追記する。 ベクトル B は、ホーミング弾の進行方向のラジアンから sin cos で算出する。 角度から sin cos に直すのは DrawRotaGraph() でも行う必要がある。 そこで元々ホーミング弾の進行方向を sin cos で保持しておけば、その処理が 不要になる。 上記 aim 処理(aim は照準することで、日本のゲーム文化の中ではホーミング のことと思ってよい)も、回転限界未満の時は A * (1/|A|) を採用することで、 限界外の時は(事前に計算しておける)sin(r) cos(r) を用いて進行方向 ベクトルを回転させることで、進行方向の角度(ラジアンなどの表現)無しで 実現できる。 さらに DrawRotaGraph() のバリエーションに sin cos を渡すバージョンを追加 したら、移動方向は sin cos の表現だけで全く十分となる。 もうひとつ、移動方向の sin cos を持っていれば、それは長さ 1 なので、 outerp は |A| * sin、outerp2 は |A|*|A| * sin*sin となり、limit2 は alen2 * sr2 となる。blen2 は 1 のハズだから計算不要なのだ。よって、aim 処理自体の(微々たる)高速化も果たせる。 このように、三角関数なしでベクトルのまま処理することができる。 平方根での除算が必要だが、r4000 なら rsqrt という命令があって 1 / |A| を 一命令で行うことができる。
psp-gprofのことを書いたのは失敗だったかな。 あの流れで書くのは自然なことのように思えたが 結果として木を見て森を見ずになっちまった。
>>250 GPU の処理負荷はどうだ?
GPU が原因で処理落ちするようなら、パケットエリアのダブルバッファを検討
すべきだ。
今の構成では、多分 GPU が遊んでる時間が結構あるし、フレームの最後の方で
大きなプリミティブを描画すると処理落ちの危険が不必要に高まると思う。
この辺のコツとか関連関数を教えていただけませんか?
前からCPUで仕事しきった後Guに仕事を渡すというのでは効率悪いんだろうなあと
思ってたんですがGuの非同期制御のコツがいまいちわからなかったので
実現できていないんですよね。
>>255 いえあれはあれで有効ですよ。
今まではライブラリの上で動くプログラムの効率が悪いのではないかという
盲目的な考えでチューニングしてましたが、ライブラリ側の問題も見えてきたので
今後は本家の関数に忠実にというだけでなくPSP独自の関数の実装を
検討しやすくなりましたし。
258 :
245 :2009/05/23(土) 15:46:05
>>250 >カチンときて何か言わずに済まなくなったのか。
なぜそう喧嘩腰なのか理解に苦しみますが・・・
>自前の atan を実装しろという話
sinf、cosfは既にハードウェアで実装されている関数の方が自前で組んだ物より高速だったので、私はそっち使ってます。
atan系はライブラリ側では使ってないですね。
>>251 3次元ベクトルの外積の大きさの計算を2次元ベクトル向けに妥当な変形しています。
そちらのアプローチとは若干異なりますが、結果としては同じ式になりますね。
なんだか真面目に回答してるスレ民がかわいそうになってきた… 憂煉って奴は工房でこんなの作れる俺SUGEEEとか思ってるのかしらんが前から 偉そうというか他人を見下した書き方をするのでカチンときたと思われても仕方が無い シューティング大好きという奴は自分が気に入らなければ他人の意見を取り入れない節がある
260 :
245 :2009/05/23(土) 17:49:10
>>259 む、そういえばそうかも知れません。
以後悪癖直せるように努力します・・・
まあ何にでもアンチはわくものだ
工房なのか ならテイラー展開を知らなくても無理は無い 大学の一般教養二日目あたりでやる範囲だしな
>>261 シューティング大好きっていう糞コテのことだろ
やっぱりプロの人はC++でベクトルクラスをET使って実装しちゃったり するんですか
プロとか関係ないしょ
趣味なので一時オブジェクト生成のコストとか気にしません
>>259 は向こうのスレの人間か?さりげなく住人批判してるしw
情報の取捨選択は個人の自由だろ。
特に2chソースなんだし。
アンチってよく飽きないよなー
270 :
212 :2009/05/24(日) 00:29:17
>>256 掲示板では無理。
OpenGL のディスプレイリストについて調べて、pspgu.h の sceGuStart() の
コメント読んで、sceGeListEnQueue() の動作調べて、
sceGeListUpdateStallAddr() の動作を考察してから調べてみなさい。
開発者向けには、
背景などはゲームとの同期が一フレームずれてても問題ないことが多いだろう
から、フレームの先頭で、ゲーム更新処理前に背景だけ書くようにすると
フレーム先頭のアイドルタイムが減る。
なるべく大きいもの(背景やボス)から描画して、小さいもの(玉や破片)
を後回しにするとアイドルタイムが減りがちになる。
というようなことをアナウンスしたらよいだろう。
ていうか実測が先。
sceGuSync() に時間がかかりすぎているならば、GPU 処理時間に改善の余地が
ある可能性がある。
元々フルパワーで動作しているのにフィルレートが足りないというようなこと
だと、そういったコトを工夫しても無意味だ。
>>258 > なぜそう喧嘩腰なのか理解に苦しみますが・・・
読解力が無さ杉だろう。
"カチンときて何か言わずに済まなくなったのか"
が言外に意味するのは、"それは言う必要の無いことだ" ということだ。
俺は標準ライブラリの atan を使えといっていないし、君も使っていない。
言及する必要が全く無いのではないか。
そもそも 201 あての文章を勝手に引き取って
"使った方が良くないですか?"
ときて、"そんな話はしていない" というような意味の返答に対して
"atan系はライブラリ側では使ってないですね"
だからね。
また、"直接外積使った方がいいですよ" についても、結果同じことになるのが
分かっているなら書く必要がない。
その上 "いいですよ" と上から目線で書くというのは、何か意趣があると思った
としても自然だろう。
そういうわけで俺は、"君は何か言い返さないと済まない" から書いたのでは
ないかと想像したわけだ。君は
>>245 を書く必要が無かったし、書く必要が
無いことを知るのに十分な情報はあったのだからね。
というような、書き込む前に何分か寝かせておけば気づくようなコトなのに、
それに対して君は
> なぜそう喧嘩腰なのか理解に苦しみますが・・・
とくるわけだ。
「ああそうですね」とでも言っておけばいいのに。
喧嘩腰の人間が
>>251-254 のような丁寧な説明をすると思うのか。
分かってて書いたのなら、かなり性格が悪いね。
これは気分を害するのに充分だ。
気分を損ねたので、ちょっと意地悪をしよう。
俺は
>>251 の最後の段落で二次元のベクトルを (x, y, 0) というように三次元
に拡張した上で外積の計算をして見せた。
その文章では不要なので触れなかったが、画面手前から奥に向かうベクトルを
(0, 0, 1) として外積の結果のベクトルと内積を取ると、その符号から、外積
の結果のベクトルが xy 平面に対して手前向きか奥向きかが分かる。
全く三次元のまま解決できるわけだ。少しも変形していない。
>>245 > 正確には2Dでは外積そのものは定義できないので「外積の大きさ」を使うことになりますが。
外積の大きさとは何かを説明してもらいたい。
三次元ベクトルの二乗和の平方根でよいのか。
さもなくば、文面からは、"二次元ベクトル同士の「外積の大きさ」"ならば正確
に定義できるというようにも思えるし、そういうことであるのか。
説明してもらいたい。
さらに、なぜ外積の大きさが必要なのかについても説明してもらいたい。
>>258 > 3次元ベクトルの外積の大きさの計算を2次元ベクトル向けに妥当な変形しています。
三次元のまま計算して全く問題ないのに、2次元ベクトル向けの妥当な変形とは
一体どのようなものなのか説明してもらいたい。
ていうかホントに理解しているのか?
>>245 で、助言者(しかも他人への)に対して "直接外積使った方がいいですよ"
ってんだから。追記してまでね。充分に自信があるのだろうね。楽しみだ。
憂煉とシューティング大好きは向こうでも叩かれてるみたいだなw 性格ねじれてる上に荒らしに構うほど馴れ合いならどこ言っても叩かれる罠
274 :
245 :2009/05/24(日) 01:37:11
>>271 納得のいく説明感謝です。もっと読解力付けないとです。
ただスレを見たら命令口調の物言いやうんこなどと書かれていた事から、喧嘩腰なのかなと感じただけです。
こちらの勘違いだったようで、申し訳ない。
>>272 おっしゃる通り、私が言いたいのは二次元ベクトル同士の外積の大きさです。
ただ、本当に理解しているかと言われると怪しい部分がありますね
楽しみの所失礼ですが、これ以上の返答は控えてせっせと復習することにします。
275 :
256 :2009/05/24(日) 02:00:03
>>270 >掲示板では無理。
確かに・・・
>OpenGL のディスプレイリストについて調べて、pspgu.h の sceGuStart() の
>コメント読んで、sceGeListEnQueue() の動作調べて、
>sceGeListUpdateStallAddr() の動作を考察してから調べてみなさい。
ヒントだけでももらえると助かります。
APIリファレンスも一応は目を通しているんですが、どういう風に組み合わせて使えばいいかが
さっぱりだたので・・・
>背景などはゲームとの同期が一フレームずれてても問題ないことが多いだろう
>から、フレームの先頭で、ゲーム更新処理前に背景だけ書くようにすると
>フレーム先頭のアイドルタイムが減る。
確かにこの辺は有効そうですね。
上でもでてましたコマンドのダブルバッファを行って無い場合にフレーム開始時に描画しておく分
と一連の処理をしたあとに描画する分が重なるケースも想定しておく必要があるんですが
前の描画が終わってるかどうかの検知はどの辺の関数で行えばいいんですかね?
>>272 いいかげんスレ荒らすのやめろよ既知外。
質問なんだけどゲームのBGMとかって何使ってるのが普通? Wavだと読み込み楽なんだけど配布用のサイズがでかくなるんだけどこんなもん? Mp3とかだとサイズが小さそうなんだけど読み込みの際に圧縮解凍ルーチンまわさなきゃいけないから遅いよね? おすすめの形式おしえてくだしあ
>>277 環境による。
PC環境ならどうでもいい話
商用の場合は出荷数によってはmp3はライセンス料の問題がでてくる。
正直、そんなところで悩むような人がゲームとか作れんの?という疑問も。
作れるだろ
>>281 はにわかだからつくれねーのか
誰かが手取り足取り教えてあげれば作れるよ
同人ソフトならまあ無圧縮wavもアリかもしれんが webで配布するならvorbisにしてくれ頼むから
285 :
277 :2009/05/24(日) 19:38:44
Web配布は考えてないのでとりあえず無圧縮Wavにします Mp3はライセンス云々があるんですね ありがとうございます
286 :
212 :2009/05/25(月) 00:33:58
>>274 まるで子供のいいわけだ。
> ただスレを見たら命令口調の物言いやうんこなどと書かれていた事から、喧嘩腰なのかなと感じただけです。
これは、書く必要が無かったのではないか?
君が喧嘩腰だと感じたことに、正当な理由があると表明したかったのだね?
なら、命令口調とは、どこで感じたのだ?
また、何故うんこであるかのというの理由は説明したし、ライブラリ全体を指した
のでも、君自身を指して言ったのでもないし、さらに言えば別人に対して言ったの
だから、君が喧嘩腰だと感じる理由は無いと思うが、その点はどうだ。
再び、ちっぽけなプライドを守るために何かひとこと言いたくなって、書いて
しまっただけなのではないか。
説教だが聞きなさい。
返答は不要だ。
君には知的誠実さというものが足りない。
知的誠実さとは、知らないことを知らないと言うとか、不確実なことを確実だと
言わないとか、そういう態度だ。
君は
>>245 において
> 進行方向修正で左右を判別するなら90度回転して内積つかうよりも直接外積使った方がいいですよ。
という発言をした。
君は、九十度回転内積が何かを知らなかったのだろう?
そして外積を使うことにも
>>274 にあるように、
> ただ、本当に理解しているかと言われると怪しい部分がありますね
自信満々に説明できない程度にしか知らなかったわけだ。
つまり君は、"自分の知らない手法" よりも "自信を持って説明はできない手法"
を使うべきだ、と提案したわけだ。助言を求められたわけでもないのに。
これはとても恥ずかしいことだと思うがどうだろう。知ったかぶりじゃん。
>>275 > ヒントだけでももらえると助かります。
無理だといったのは、守秘義務的なものではなく、主に分量の問題だ。
具体的な質問なら答えられるかもしれない。
> 前の描画が終わってるかどうかの検知はどの辺の関数で行えばいいんですかね?
sceGuSync()
ていうか、この質問は、GuListSafety() が何故安全に動作するのか分かって
いないことを意味しているようにも思える。
他にコールバックを使う手段もあるけど、今説明しても理解できないだろう。
>>287 むしろコールバックで要求される方がわかりやすいです。
audiolibなどでコールバックを受けて音データを渡すロジックでなじみがありますので。
この工房うぜえw
290 :
デフォルトの名無しさん :2009/05/25(月) 12:56:41
わかる箇所にだけ元気よくレスしてみました的な対応だったな(笑)
すげえよなぁ うぜぇと指摘されたポイントをそのままに しかも指摘された直後に持ってくるとか これが若さゆえの過ちというやつか
fffffffffff
>289-291 煽るだけの君らも似たようなもんだ。 こんなレスしてる俺もだけどw
こんなのが煽りに見えるなんて病的すぎやしないか
これが煽りじゃなかったら何が煽りなんだろう
>>288 コールバックを使う手段があると指摘されたのだから、分かるというのなら調べればよい。
教えてくれとは書いてないから、自分で調べるつもりなのだろうね。
余計なことを書くまいと注意した結果、推敲中にそちらを消したということかな。
sceGuSetCallback() の使い方一般という話だと分量的に説明してられないけど、
具体的に、何を何したらこうなった、という話があれば質問にも答えられるかもしれない。
色々調べて頑張れ。
まずは OpenGL のディスプレイリストだ。
"そっちの話じゃなくコールバックだ"、と思うかもしれないが、何を計測することに
なるのかを理解するにはやはり必要になる知識だ。
こんなゆとり相手にちゃんと重要な点も教えるなんて良い奴すぐるw 相手は皮肉としか受け取らないんだろうがな…
>>295 随分レスが早いのね
レス付くか気になって何度も何度も確認してたんだろうなぁ
そんな細かいところに気づくなんて流石だなw
>>212 たかが工房への過剰反応乙。ベクトルの勉強一からやりなおしてこいの一言で済んだんじゃねーの?
>>245 ベクトルの勉強一からやりなおしてこい。
>>300 同意。嵐と同じ。スルーしたもん勝ち。一緒になってスレ汚してどうすんだヴォケ
静かになったなw
終劇
以下、NG集でお楽しみ下さい
ゲームで使うUIってどうやって作ってるの? フリーのなんかいいUIツールってあるの?
ググレカス
UIはそのゲームごとに固有だし 環境によって近いものを参考にする、とかがいいかもね
横から失礼するけど 質問者はwidgetツールみたいな物を求めているんじゃまいか 実装が楽とかdirectXと相性が良いとか
RADのこと? なんにせよ自作が基本 定額給付金で「GUIライブラリの仕組み」って本でも買えばいいよ
給付金のお知らせまだこないんだけど
給付金の振込先出すの遅れた〜 明日の1000円にも困ってるのに・・・ 今なら大金だが、給付金出る頃にはボーナス出てるので雀の涙になってしまう。
アクションゲームのステージのデータ構造ってどうやって作ってますか 敵を出現させるときのヒントなどを教えていただけるとありがたいです
アクションゲームと言ってもピンからキリまであるだろ つーか敵は最初から配置しておけばいいだろ
>>313 そういうの考えるの嫌いならやめたらいいのに
敵の出現とか調整が頻繁にあるようなものは 敵だけの別のデータ構造にしてスクリプトとかで任意に配置とかする ステージのデータ構造に敵の出現位置なんて入れないだろw 敵のデータ構造に、ステージの何処で出現するか入れる 当然、ステージと敵の関連処理は作ってある前提ね (配置できない場所を指定したらエラー表示とか、配置場所に応じての敵の処理等)
>>317 気にしないでいいよw
どこでなにをやろうが君は自由だw
>>315 のも立派なアドバイスなのに、お礼を言うどころか文句言うなんて。
320 :
デフォルトの名無しさん :2009/05/30(土) 23:42:49
そもそもステージのデータ構造って何だよ。 俺っちの場合、ステージのマップとオブジェクトと敵とアイテムとイベントのクラスを別々に用意して、 それを統合管理するクラスを作ってやってる。 その情報を入れとくファイルも上記のクラスごとだから、各ステージ5ファイルずつになる。 煩雑な気もするがステージを実際に作るのは専用のグイツール使ってやってるから、実際の作業は面倒ではない。 補足するとオブジェクトってのは動きのあるもので、動く床とか破壊できる樽とかだ。 ちなみに上で盛んに議論されている敵の配置情報だが、俺は敵データに含めてる。 多分Windowsアプリのせいだと思う。 敵キャラって言ったら最低でも位置と大きさは持ってるはずなんだが、大きさは確実に敵データに書くだろ。 んでWinアプリは位置と大きさを同時に扱うことが多いんよ。 どっちかだけ変えたくてもAPIの引数とか両方指定するしな。 当然フラグでどっちかだけを変えられるんだけども、それでもNULLなり0なり渡さなアカンねん。 そうすると敵情報も位置と大きさはセットで扱おうってことになるんだが、 敵の大きさをステージ情報に含めるのはおかしい。 すると必然的に敵データになるとい
珍妙な長文書いてるとコピペと思われるぞ
323 :
デフォルトの名無しさん :2009/05/31(日) 03:37:32
ゴッド・オブ・ウォーのカメラワークってどういう仕組みで動いてるんですか?
手作業。
マジレスすると全ユーザー分のカメラワークを開発者が張ってて手動で頑張ってあわせてる
326 :
デフォルトの名無しさん :2009/06/02(火) 10:28:54
ハリウッド映画のカメラワークって3Dゲームの演出にかなり役立つよな。
今日もプレイヤーのカメラを動かす仕事が始まるお
w
たまにカメラがついてこない時があるが、お前のせいか!
ジュゲム乙
たまにキャラのパンツばかり映される時があるけど そういうことだったのか
すまん
北朝鮮のマスゲームを超えるものを作りたいです。 アドバイスをお願いします。
なんとか学会のマスゲームもなかなか というよりこっちが元祖か
北朝鮮とかなんとか学会の シミュレーションとかできないかな
理論を越えた存在をシミュレートするのは難しい。
337 :
デフォルトの名無しさん :2009/06/06(土) 23:32:46
3Dで、三角形の辺に線が接触したとします。 接触点の法線ってどうなりますか?
点の法線ってなんぞ?
法線ってそんな使い方するんだっけ?
法線って意味なら、向きだけしか意味をなさない つまり三角形のどこの点だろうが、法線は一緒 三頂点つかって2ベクトルを作り、外積で求めればいい
よくよく考えてみたら
三角形には厚さは無いのですから
面の法線でよさそうですね。
それにします。
>>338-339 はね返る方向を決めるのに
使います。
例えば、物理エンジンなど。
>>341 いやそれは知ってる。
>>337 の言ってる意味が分からなかったので何をしたいのかがわからなかった
意味を理解して回答した俺は変なのか?w
>>343 三角形の方には法線はありそうだけど線にはあるかどうかが質問からはわからないのに
接触した際の法線は決められないんじゃないの?
逆に、337を読んで”接触点の法線”が三角形の辺のどこかの点じゃ無い と読解出来るのが凄いw
線に法線があるかどうか、迷う時点で 3D(ゲーム)プログラムの質問にちゃちゃを入れるべきじゃない 何かの目的で、法線を設定する事はあっても あるかどうか分らない事は無い、あるわけ無い
なんか質問だと合成が欲しいようにも見えるが 単純に接触点の法線なら面の法線とおなじだろ
各頂点の法線がそれぞれ異なっていてどう補完するかというふうにも読める
349 :
デフォルトの名無しさん :2009/06/07(日) 01:17:08
むしろあっぱれだなw 337の質問から合成した法線が欲しいと見えるのかww …だから、ただ単に線と言っただけで法線があると思い込む時点で… と二度言わすなwww
>>349 いや線があるんじゃなくて接触したとしますとなってるじゃん
自分の読解力、数的な知識が低いのを 自分勝手な解釈に転換している良い事例 しかも後出し
>>350 >三角形の方には法線はありそうだけど線にはあるかどうかが質問からはわからない
真性の数学分ってない君?
自分で線の法線とか言っちゃるじゃん
それとも線が接触すると三角形の法線が変わるとでも?
>>347 完全な後だし&主旨変えwww
意味が分らなかったんじゃねーの?
法線って言葉が誤解を生んだんですかね 垂線とでも言えばよかったか
>3Dで、三角形の辺に線が接触したとします。 >接触点の法線ってどうなりますか? >各頂点の法線がそれぞれ異なっていてどう補完するかというふうにも読める 線が辺に接触する必要がないw 各頂点で法線が違うなら、三角形内の任意の点で十分だろww
356 :
デフォルトの名無しさん :2009/06/07(日) 01:30:31
>>354 いや、根本的にキミの全ての頓珍漢な発言が誤解を生んでます
結局のところどういう判定処理をしたかったの?
三角形の辺上の任意点の法線はどうなりますか? くらいの書き方だったら一発で通じたかもな
ただ単に、 三角形上の法線はどの三角形内の点でも一緒だって忘れてただけだろ 質問、回答、お礼のレスで分るじゃん 一匹だけ、自分の恥を必死に誤魔化そうとしてるのが居るだけw
>3Dで、三角形の辺に線が接触したとします。 >接触点の法線ってどうなりますか? >三角形の辺上の任意点の法線はどうなりますか? 任意点 == 三角形の辺上の線が接触した点 こんくらい読解できないならレスすんなやw
質問者がわかってないのか迷ってるのか度忘れなのか知らないけど変な質問したのと その文章から深読みしすぎて変な回答したと見えるが違うのか?
だからさ、現に一発で質問を理解して回答して、それで合ってた というレスがあるのに >変な質問 って、キミが言い張ってるだけ ものすご〜〜く恥ずかしいよ、当分はレス残るんだよ?
>3Dで、三角形の辺に線が接触したとします。 >接触点の法線ってどうなりますか? >法線って意味なら、向きだけしか意味をなさない >つまり三角形のどこの点だろうが、法線は一緒 >三頂点つかって2ベクトルを作り、外積で求めればいい >よくよく考えてみたら >三角形には厚さは無いのですから >面の法線でよさそうですね。 >それにします。 この流れが理解出来ない時点で、質問じゃが云々じゃない お前が、 がわかってないのか迷ってるのか度忘れなのか だw
こんだけ混乱してる時点で変な質問じゃなかったというほうが無理がある
だから! 何度も言うが、混乱してるのは1匹だけ 同じ論調だから、ID無くとも分るw
>>364 お前バカだろw
質問が変かどうかを、質問内容でなく
特定の人物が混乱してるどうかで計るのか?
ちゃんと質問の全文のレスは、まだまだ残るぞw
>>365 残念ながら、俺も最初の質問では意図がわからなかった
普段めったに進まないこのスレも、煽り合いとなるとものすごい伸びを見せるもんだなぁw
残念ながら、質問から回答まで40分、そのお礼が3分後 たしかに2ちゃんだから、レベルが低い奴が複数居たとしても こんな短時間の内で線の法線、合成、とか言っちゃう奴は一匹しかいないw
煽り合いもなにも、質問、回答、回答合ってる ってなってるしw 自分がいかに頓珍漢かを必死にアピールされても… 一応、確認だけどゲームプログラムなら俺に聞けスレだぞ? 散々後だしで、言い訳するなら 質問者に、追加情報を求めれば言いだけだろw それすらしないで、訳かわらん、とか言っていただけだろーが それで、質問が変? いっちょ前に質問スレに書き込むなら、 もう少し読解力、数学力、ゲームプログラム力を付けろ
むしろ質問があまりにも当たり前のことだったのが意外だ、プログラム以前の話だな 深読みすると348に行き着くかもしれんw 340は冷静だなw
はぁ〜 質問スレなんだから、質問者の文章読んで理解する事や 確認したり、そもそも間違ってても回答しろよ 訳分らん的なレスしかしないで、短時間で質問がクローズしてから 頓珍漢な深読みを言い張って、質問にケチつけるなやw 勘違いか忘れてる奴が、三角形の法線の問題に 一見関係しそうだが、関係ない前提を付けて質問しただけ、これ以外の無い物でもない いい加減、読解力が低いのを晒すを辞めたらw
ゲームプログラマーってろくなのいないよな・・・
おそらく一人だけど、必死な奴がいるね
まるで数学の引っ掛け問題にまんまとはまったクラスの秀才くんが 周りを見渡すと、自分以外は回答出来ていたので 必死にレベルの高い深読みしたんだ、言い訳してるみたいだwww 単に読解力、注意力の問題だ
ゲームプログラマーってろくなのいないよな・・・
分りますw 論破されると、人格攻撃に切り替えるですね?w
ゲームプログラマーってろくなのいないよな・・・
なんか伸びてると思って期待しないでスレ開いたら 予想のさらに斜め下だった
とりあえずさ、このスレもうだめだよ。 回答者同士で煽りあってる時点で質問者は二度と帰ってこないだろう。 それから、372とか212とかは(同一人物っぽい気がするんだが念のため)プログラム組む前に小学校の国語の勉強やり直した方が良いと思うんだ。 友人に対してあの物言いなら解るが、2chとはいえ赤の他人にあれは無い。 まぁ友人に対して使い続けた時点でそのうち一匹狼になるのは目に見えてるがな。 このレスになんで?と聞き返さないでくださいよ? それこそ小学校の国語の教科書を読解して答えを見つけてください。物語系の文章が良いでしょうね。 このスレに質問に来た方へ。 回れ右してプログラミングを扱うサイトの掲示板に行くのがベストです。 「DXライブラリ」や「ゲームプログラミングの館」等、良いサイトはいくらでもありますよ。
382 :
デフォルトの名無しさん :2009/06/07(日) 08:24:26
>>6 の先見の明に感服したwwwwwwwwww
このスレはチンパンジーの餌食になってるなwwwwwwwwwwwwwwwwww
383 :
デフォルトの名無しさん :2009/06/07(日) 13:26:36
2次元ベクトルに法線って数学的には存在しないけど、 便宜的に使うときは、ベクトルの終点を正方向のX軸と考えて、 直行する2次元ベクトルをy軸としてそのベクトルの正方向を 法線と考えるとかあったけ?
勝手に技術系コミュニティにして、自分の数学知識の頓珍漢を隠そうとしてる奴が一匹いるw どう見ても質問スレだろ そこで、質問に対して超簡単に答えが出たのに 延々、延々、自分の頓珍漢なレスを回避するレスを続ける奴の方が、害悪以外の何物でも無い 挙句、質問が変とか言い出すw
385 :
デフォルトの名無しさん :2009/06/07(日) 13:47:31
>>385 どうしてもやり込めたいやつがいるみたいだし無視した方がいいよ。
文章読み違えたやつもあれだが、そいつをやり込めてる方もストレスたまってるのか
捌け口にしてるとしか思えん。
スレが過疎になるわけだ
>>383 少し考察すればよい、その考え方は存在する。
三次元ベクトルにも法線は存在しないぞ、法線が存在するのは三次元空間の平面に限るぞ、二次元だと法点、四次元だと法面。
ある線(ベクトル)・面(二つのベクトルで張られる)等に直角になるペクトルの集合は接空間と呼ばれて、それは点であったり面であったり。
そしてそれには方向が考えられるので、ベクトル(有向長さ?)、有向面積、有向体積、等呼ばれる。
>文章読み違えたやつもあれだが でスラッと流しているが、その読み間違えを 延々、延々、誤魔化し、正当化しようと頓珍漢なレスを続ける奴が 一番の害悪に決ってるだろ コイツが止まれば、全て止まっただろw
やり込めるとか、もうねw 難解な問題で、直ぐに回答が出ないような物 考え方で回答が変わるような物、ならまだしも 超簡単な数学、3Dプログラムの質問じゃんw 質問に対する読解力、数学的な知識をとっても やり込めるんじゃなくて、間違っていて、間違いを認めない基地外が延々反論してるだけじゃん
どっちもやめるか別のところ行け 邪魔
ここは質問スレ で、今回の質問に対して素早く的確に回答が出ているだろ 問題は、質問を自分勝手な頓珍漢な解釈に変えて、それで延々と言い訳レスする奴がいる事だろ 勝手にスレを駄目とか決め付けるなよ お前さ、よっぽど悔しかったの?w
ゲームプログラマーってろくなのいないよな・・・
分りますw 論破されると、人格攻撃に切り替えるですね?w
ゲームプログラムの質問回答の場であって数学の議論の場ではないのでは?スレチにも程があるよ?
>>932 そういう態度が無限ループを生んでるんだよ。負の連鎖。誰かが許さないと何も生まれないよ?
ついでに、蒸し返すようで悪いが憂煉氏がフルミックにされた件。彼の方が一枚上手なのにそろそろ気がつこうか?
今回の質問は、改善の余地はあるが、回答するのに推論可能な範囲だった。
それと 372 は話が違う。
質問者は事前に調査し、論点を整理すべきだ。
>>381 素晴らしいアイディアだから、どんどん誘導してくれ。
どんだけ、ゆとりなんだよw 間違いを認めろ 数学の議論? 質問スレなんだから、間違った数学的解釈がまかり通って言い訳ねーだろw 誰かが許す? 間違いを認めず、延々とレス繰り返す奴が止めるべきだろwww
いい加減さ、善人的な発言で、 無能を横行、容認させるような自治房な発言を止めろやw >訳分らん的なレスしかしないで、短時間で質問がクローズしてから >頓珍漢な深読みを言い張って、質問にケチつけるなやw 質問がクローズしているって意味わかるか? 質問の意味が通じて、質問の回答が付いて、それでクローズしてるんだぞ? それに対して、延々と自分の間違った質問の解釈を正当化する 意味のないくだらねーレスを容認するどころか許せ? なんども言ってやる、ばっかじゃねーの
それってさ、スルーすればいいんじゃないの? 質問者が勘違いしてる様なら正せばいいだけじゃないの? 解釈の方法が複数ある場合でも一つに決め付けちゃってるお前、何様? 数学史なめたらあかんよ? あとさ、善人で何が悪いの?
>>400 お前さ、どんだけ読解力がないの
質問者も、回答者(俺)も、誰も詰まってなんかいねーんだよ
今問題にしてるのは、質問に対してわかんねー的な発言しかしねーで
質問がクローズしても、そのわけわかんねー理由を延々とレスして
自分の間違いを認めない、回答も、質問者に質問もしてねー奴の話
何度でも言うが、質問者はお礼言って、解釈は決定してるし、それがクローズしてるって事だ
事実を捻じ曲げるなやw
善人大いに結構 善人の理屈の押し付けは辞めろや、って言ってるのが通じないの? …やっぱ読解力を磨きなや
なんか2chをアホー掲示板か何かと勘違いしてるアホが紛れ込んでないか?
>>381 あたりとかそれに乗っかってるあたりとか
適当に空気読んでスルーしてりゃいいのに正論風かまして自分だけを
正当化しようとしてるあたりネット初心者丸出しな感じで見てて痛々しい
ばっかじゃねーの 質問に対して、回答もしない、質問内容に質問などもしない、ケチ付けるだけ で、回答出て納まってるのに それに対して、自分の頓珍漢な解釈を延々と正当化するレスをスルーしろと? その発言する奴は 頓珍漢な解釈をした本人だと言われてもおかしくないだろw
そんな奴はスルーしとけば良いって話じゃないの? 読解力読解力言ってる奴が一番読解力持ってない法則ってほんとなんですね。
とりあえずさ、何人か頭に血が上っている方がいらっしゃる様だし休戦したら?
このスレアホだらけだな。
>>405 おまえのことだよ?わかる?
>>405 スルー出来てない、お前がしたり顔で何を言っても
説 得 力 が な い w
383が火種飛ばして384が起爆したのか・・・ スレの爆弾になんてことを
410 :
デフォルトの名無しさん :2009/06/07(日) 20:39:13
両陣営共にかまってほしいだけだろ。ん?
急に静かになったな。>410の通りだったのかwwww おっと、俺に反応して勃発とかやめてくれよ?そのオチはみえてる。
ゲームプログラマーってろくなのいないよな・・・
分りますw 論破されると、人格攻撃に切り替えるですね?w
ゲームプログラマーってろくなのいないよな・・・
分りますw 論破されると、人格攻撃に切り替えるですね?w
分りますw 論破されると、人格攻撃に切り替えるですね?w
ゲームプログラマーってろくなのいないよな・・・
分りますw 論破されると、人格攻撃に切り替えるですね?w
ぬるぽ
ガッ ツ石松
終わっとる猫のスレ
もう駄目だ猫のスレ
ゲームの部品を暗号化して見えなくする場合は皆さんどういう方法を取ってますか?
自前のfopen、fread、fwrite、fseek、ftell、fcloseを用意して、その内部に圧縮や暗号化の機能を隠蔽する。
426 :
デフォルトの名無しさん :2009/06/09(火) 13:25:57
全部バイナリにぶちこむ。 携帯ゲーム機なんかには使えない手法なので注意。
コンポーネントの話をしてるのか リソースの話をしてるんだかよくわからん流れだな
>>425 なるほど
そうなりますか
>>426 アーカイブとかいう手法ですかね?
>>427 まあトータルで
暗号化を学びたいのもあるんですが、どういう仕様にするかも自分である程度決めますので
トータルの話です。
429 :
426 :2009/06/09(火) 16:30:11
>>428 実行ファイルに組み込んでしまえということ。
もしかしてシューティング大好き氏ですか?違っていたら申し訳ない。
ま た 東 方 厨 か
ぶっちゃけ拡張子変えるだけで雑魚には読めなくなる
俺以外は全部雑魚(笑)
433 :
デフォルトの名無しさん :2009/06/09(火) 20:05:08
最終鬼畜拡張子全部dat
434 :
デフォルトの名無しさん :2009/06/09(火) 20:06:32
XOR
東方厨は巣に帰れよ
4,000円くらいで売ってる ゲームの本すごいよね。 バーチャファイターの布がひらひら する部分のエンジン書いた人の本。
437 :
デフォルトの名無しさん :2009/06/09(火) 21:07:56
どう凄い?
>>437 セガの教育係の人が書いたとか言われる本だね
あと一人の発言で東方認定の流れで進んでてワロタ
無修正
440 :
デフォルトの名無しさん :2009/06/09(火) 21:18:24
どういう意味? 内容が凄いんじゃなくて、教育係の人が書いたのが凄いって意味?
東方厨は以前の流れで害悪だとわかったから仕方が無い 向こうで暗号化の話出てるし偉そうな口調からみるに本人だろう
aa
「数学って、こんな風に使うんだ」 って思わせてくれるところ。
偉そうとは思わんが、まぁ若さは感じるな 雑魚対策としてはデータ形式を独自のものに変える手もある まぁどういう手段をとろうが、それなりに知識がある奴が見たら 解析はされてしまうものなので、気休めでしかないがね そんなところを考えるよりは内容を作りこむことに時間を使ったほうがいい
445 :
デフォルトの名無しさん :2009/06/09(火) 21:46:01
悪いのは東方厨ではなく憂煉以下数名じゃネーノ? まともに(?w)応対した挙句スレ汚したドジッ娘も含めてw
頼むから上の発言で戦争勃発するんじゃねーぞ あと、ごめん。sage忘れてた
データを解析されたら 糸冬 了
初心者君達にのみ対抗するのが一番さ
但しネトゲ等不特定多数が対戦する場合、升の温床となるので注意
>>441 >>444 偉そうだ若さだとか言うくらいなら回答しなければいいだろ
ムカついたら無言で質問流せばいいし、最悪二度とスレを見なければいい
別に君らを貶してるんじゃなくて、これ以上ここが堕スレになってほしくないだけだ
その為に常駐回答者が全員いなくなったとしてもその方が良いと考える次第だ
ええと、要するに現実世界ならともかく不特定社会では自分の代わりなんていくらでもいるって考えが大切って事
無理して答えてストレス溜めないでおくれよ
長いレスすまんかった
>最悪二度とスレを見なければいい なんで他所から馬鹿が来たら住人が出て行かなければならないの?w 東方厨は今までそうやってスレを乗っ取ってきたんですね、わかります
447はそういったことも含めて自由なのが2chだって言いたいんじゃないのか? 深読みしすぎかw
どこらへんから
>>444 =俺がムカついてるように読み取ったのかなぁ
俺はただ単に若いねって書いただけだけど
なんか不思議な感覚の持ち主だね
>>447 がシューティング大好き君で、若者扱いされたことに対してムカついたって話なら分かるんだけど
452 :
デフォルトの名無しさん :2009/06/09(火) 23:31:23
そんなに数学的な内容だったっけ?
227 :シューティング大好き ◆hvhkrhIMnI :sage :2009/06/07(日) 16:52:58 ID:MZip9U6p
>>214 速度面は現在の私のスキルでは時間だけ消費しそうなんで
DXLP側に暗号化機能を実装しようかと思ってます。
424 :デフォルトの名無しさん :sage :2009/06/09(火) 04:33:43
ゲームの部品を暗号化して見えなくする場合は皆さんどういう方法を取ってますか?
二日も空いてるから別人だな。
まさか二日間考えて何も思いつかなかったってことは無いだろうし。
Windowsプログラムの場合、いくら自前の演算で簡易暗号化してたとしても ファイル操作にWindowsAPIとか標準関数使ってたら意味ないよな。
>>451 447のレスは見た感じだと、確かに印象は悪いが「無駄な事に自分を無駄遣いしちゃいかんよ」という暗喩を含んだ良心的なレスだと思われ
それに君の価値観を否定するようで悪いのだが、444のレスからは若干のイラつき、怒りが読み取れるよ。人の感覚を疑う前に自分自身が「不思議な感覚」の持ち主なんじゃないかと疑ってみたらどうかな
話が若干変わるが、最終行の可能性は確かにありえる。だが人のレスにいちゃもん付けるのは戦乱に陥って堕スレに繋がるだけだから止めておけ
とりあえず憂氏(これ頭文字がYだかUだかわからん)の二の舞にならんように
でもついやっちまうのも解る。このレスが良い証拠だな。私もまだまだな未熟ようだ
457 :
デフォルトの名無しさん :2009/06/10(水) 00:29:28
良心的なレスってw ダメだこりゃ
459 :
デフォルトの名無しさん :2009/06/10(水) 01:24:17
スレに屯してる人の中に自分の事を悪く言われたら言い返さないと気がすまないのがいる。 しかも複数人存在して、一旦言い合いを始めると誰かが止めるまで終わらない。 複数回紛争が勃発している上に、それを行っている連中は固定メンバーな気がする。 もし本当に固定メンバーが行っているとしたら、そいつら本当に学習能力無いのな。
ほんと東方厨は学習しねえな。
461 :
デフォルトの名無しさん :2009/06/10(水) 02:35:07
ゲームプログラマーってろくなのいないよな・・・
無理して大人ぶるな
また憂煉はカチンときて何か言わずに済まなくなったのか。
東方だとレミリアさんが好きです でもフランちゃんも捨てがたいです
あんまり若い子をいじめると健全な大人に育たなくなるぞ。 自分で自分を優良とか言っちゃう子が健全かどうかは知らん。
まぁこれで採用された「暗号化」がXORだったら笑えるんだが。
Hばっかだな。
とりあえず
>>430 は東方大好きだってことは分かった。
どうせ糞スレだしもう東方スレにしようぜ
472 :
デフォルトの名無しさん :2009/06/10(水) 17:18:14
3Dゲームを本で勉強して作ってる人に教えてください。 今までに買った本を全種類教えてください。 アマゾンのリンクもお願いします。 同じ本を買いたいのです。
OpenGLプログラミングガイド 原著第5版
ありがとうございます。 もっと次から次へとお願いします。 絶対買います。
本気で書くと20〜30万円分くらいになるが、いいのかい?
よくないので、役に立った奴だけでお願いします。
つか、気づいたら30万位いっているものだから、見た端から使えそうだったら買いやがれって気がするのは俺だけか?
478 :
最低王子 :2009/06/10(水) 22:00:18
俺の許可はいらないから、とにかく、 最低王子(俺)ってキャラを各ゲームに出して欲しいんだけど ただし、イケメンキャラで、 目の下にクマがあるデザイン
キャrデザインうp
おれPlayStationのリファレンスで勉強した。これ本当。
>>480 あれは最高の教科書だったね、あれで終わったけど。
482 :
デフォルトの名無しさん :2009/06/11(木) 15:28:16
2Dゲーム(ロックマンとかマリオみたいなやつ)をDirectXで作ろうとしているのですが、 今の時代頑張ってクリッピングしなくても良いですよね? 遊んで欲しいターゲットはVista以上のPCを持ったPCユーザーの9割程度です。 但し、メーカー製のグラボはオンボード!というPCも含みます。 ネトブは斬り捨てます。 VistaクラスのOSを積んでいるのであれば性能的に大丈夫だと思うのてすが。 3Dを使うつもりはないのですが、Vista以上=DirectX10のシェーダが使えるとのことですので、 私の技術的に可能であれば積極的に取り入れていこうと考えてるぜベイベーーーー☆★☆★ という感じです。 よろしくお願い致します。
そんな事は実際に遊んでみて問題なければそれでいいという物だよ グラディウスの超重力地帯は明らかに処理落ちだが、逆に味になっているだろ?
Vista=DirectX10ってのは間違ってるぞ DirectX10に対応したビデオカードを積んだPCじゃないと たとえVistaでも9までしか使えない だからユーザー層にオンボードのPCを含むなら、DirectX9で組むべき
>>484 いや合ってるし
Vistaは、MSがビデオカードの性能を保証させてちゃってるんだな
だからcapsが無いわけだし
487 :
デフォルトの名無しさん :2009/06/11(木) 21:31:52
ソフトウェアでやれば互換性最強
>>486 10対応グラボの場合は、だよね
9までかどうかは初期化時に検出できるし
>>488 だから、DX10対応グラボじゃないとVistaに不適応だから駄目
とMS様がお決めになったのが、Vista OS なんだよ
調べて、間違いを認めろw
調べて間違いを認めるのはどっちやら。
ま、DX10もDX9EXも 誰も使ってねーし 知る必要はねーな
>>489 新規デバイスの話であって、
Vista動作環境の用件には含まれてないだろ
>>482 カスみたいなゲームがハイスペック要求してると「この作者頭悪いんだろうなあ」って思われるぞ
まあ心配せずともPCユーザーの9割9分9厘はお前のゲームなんか遊ばないから
>>482 実行速度を気にしているなら、必要になってからでいい。
ただ、画面外かどうかの判定は、ゲーム的に必要にならないとも限らない。
例えばスクロールアウトした敵に撃たれないようにするとか。
495 :
デフォルトの名無しさん :2009/06/12(金) 18:53:28
3次元空間で、3つの頂点P0,P1,P2があったとき P0-P1-P2の角度はどうやって求めればいい?
496 :
495 :2009/06/12(金) 19:54:43
わかりました。 A = normalize(P0 - P1) B = normalize(P2 - P1) cosAngle = A . B
497 :
デフォルトの名無しさん :2009/06/13(土) 21:44:26
こさんぐる
古参グル
ビデオメモリに直接書き込むにはどうすればいいんですか?
環境依存。
>>500 Win32APIでのやり方を教えてください
ところで直接書き込んで何に使うのだろうか。それによって良い方法が変わるんだが 3Dやりたいなら素直にDirect3Dのテクスチャを使えばいいよ。テクスチャのインスタンス作ってから適当に。バージョン毎に微妙に違うから自力で調べてちょ 汎用的に使いたいならCUDA(笑)とかか?
フレームバッファに描きたいとかじゃねえの Windowsじゃ無理無理ムーチョ
504 :
482 :2009/06/15(月) 15:28:58
クリッピングの話よりVista=DirectX10かどうかの議論になってるみたいですが、 ありがとうございます。 DirectXは9か10かの判定をしてそれにもとづいて処理をきちんと振り分けます。 自作PCの人のグラボは9までしか対応してないかもしれませんし、 メーカー製であってもXPからのアップグレードなら9までしか対応していないかもしれませんので。
頑張れ。
506 :
デフォルトの名無しさん :2009/06/16(火) 14:19:33
おいおまいえら! DirectX11が出ますよぞ!
507 :
デフォルトの名無しさん :2009/06/16(火) 14:31:38
MMOアクションRPG用の鯖ってどの程度のスペック必要? 100人規模ならこれでいける? PhenomII X4 3.1GHz DDR3-PC10800 8GB×4枚 CentOS5 64bit
内容とか回線とかトータルで考えないと何ともいえん。 とりあえず100クライアント程度なら大丈夫だとは思うけど。
同時接続クライアント数が3桁いくなら冗長性持たせた方がよくね?
510 :
489 :2009/06/16(火) 20:23:43
調べて、間違いを認めろw
511 :
デフォルトの名無しさん :2009/06/16(火) 22:24:39
認めろ厨乙w Aeroの動作用件調べて出直して来い
512 :
デフォルトの名無しさん :2009/06/16(火) 22:38:31
>510 その話題504で終わったんじゃないのか? とりあえずcapsとか言ってるあたりプログラマなんだろうが、恥じかく前によくよく調べたほうがいいぞ >507 回線と電気代さえクリアできればいけるんじゃないか?
あの流れで本人だと思えるお花畑共www
最近のGPUはDXT(DDS)をハードウェアレベルで展開する機能を持っているそうですが メジャーライブラリであるDirectXやOpenGLなどでも簡単に使えるんでしょうか?
釣られたって思いたくない
518 :
デフォルトの名無しさん :2009/06/17(水) 11:24:27
そんなことよりDirectX11が出るよ!
Direct3D11かー・・・ 正直、7以降でしか使えないのが嫌。 10も11もXPで使えればいいのに まあ、それがMS社の販売戦略だってことは解ってるんですが
>>519 11はVistaからだし、全機能使えるわけではないが、NVIDIAがβ版のドライバ出してて動いてるよ
>>515 簡単のレベルによるが、サポートしているハードウェアがあるなら簡単。
DX11のVGA仮想化って DX9世代のVGAでも受けられるの?
AMD頑張れよ(;_;)
SETI@HOMEにGPU使ってる俺にはDirectXなんて関係無い話なのであった
>>524 素人にも分かりやすく説明して。
全く意味が分かんない。
526 :
デフォルトの名無しさん :2009/06/19(金) 19:29:22
そろそろXPからVistaにグレードアップするかな。
>>526 レジストリへのアクセス方法が違うっぽくて使ってあるアプリのほとんどが爆死してるな
>>527 違わない
UACでブロックされるような所にアクセスしてるだけだろ
MSのお作法にのっとって作ってあれば何も問題はなかったが、 誰もそれを守ってなかっただけ
だけとつければ何でも解決した気になるバカ
3DMAPエディタの作り方を教えてください
>>530 >MSのお作法
そんなのあったんだ!?w
>>533 お作法の存在も知らないやつ多いね。
「Vistaに対応してない」って言うけど、管理者権限でないと
動かないとか、実際はXPでもまともに動いてない。
でもVistaってレジストリアクセス関連のコード書くと 全然違う感じになるけどこれが原因じゃね?
536 :
デフォルトの名無しさん :2009/06/21(日) 12:05:24
>>535 ???
変わらなくない?
Vistaになってからレジストリにアクセスするプログラム書くようになったけど
そのアプリはXPでも普通に動いてる。
一旦権限を上げないとダメだから変わらないほうがおかしいだろ アプリでやらないでインストーラでやったほうがいい
おまえらがちゃんと作らなかったから 64Bitウィンドウズはファイルやレジストリのリダイレクトなんておかしな事をしちゃうのさ
>>532 どこがわからないんだ?
3D マップエディタなんて作るよりも、オーサリングツール上で必要な属性を付けた方が楽でいいよ。
頻繁に会話が必要なシチュでも いちいちヘッドホンつけて音楽聴いてるバカが激しくうざいんだけど スリッパで頭はたいてもいいですか?
スパコーン
円周率を無限に計算でもしておけ スパコン とか言って
545 :
デフォルトの名無しさん :2009/06/21(日) 20:15:09
ソースはとうもろこしだけにしておけ コーンスパ とか言って
546 :
あいこ :2009/06/21(日) 21:12:12
こーの間はスレチがあったんだー♪ だーけど声はかけられなかったー♪
>>537 それはXPでちゃんとやってなかったということですよね
ちゃんとやってなかったw
549 :
デフォルトの名無しさん :2009/06/22(月) 07:38:34
おまえらレジストリ弄るときはちゃんとしろよ!
ちゃんと正座して手を洗ってから組んでます。
爪切り消毒もしなきゃダメじゃないか
552 :
デフォルトの名無しさん :2009/06/23(火) 22:28:26
ム板で一番駄目なすれ
つうか専用板あるんだからそっちでやれよ。 板の切り分けすらできない低能がスレ立てんな。
↑今まで言い出せなかったチキン
↓童貞
こう見えても俺、魔法が使えるんだぜ トヘロスだけどな
えっピオリムでしょ?
バシルーラにかかるのが得意
最近のPCスペックなら5000万〜6000万ポリゴンで60FPSくらい出せるんかな?
最近のPCじゃなくて、最近のミドルレンジ以上のグラボの話なら状況によるだろ ちゃんとストリップ化されたモデル、描画ステートの変更も少ない とかなら有り得るかもな 自前の4頂点板ポリを毎回Drawとかなら、まず出ない Drawのオーバーヘッド次第じゃね
561 :
デフォルトの名無しさん :2009/06/27(土) 12:51:02
ミドルレンジってゲForce8500GTくらいか
PS2.0がやたらとどこでも動くからもう下限はあんまり気にしてねぇな
低スペのグラボ使ってる奴なんて斬り捨てて良いと思う。 俺は発売から3ヶ月以上経ったグラボなんて動作保証外。 しかも今の時代なら最新チップ積んだデュアルGPUのグラボ2枚差しを想定すればOK。 そんな低スペのグラボのこと考えてたらグラフィックの質を落としまくらなきゃならん。 数万ポリゴンで30FPSシェーダなしとかいうゲームになる。
商売考えなくて言い奴はラクでいいなw
>>564 だよなw
PCでゲームするやつなんてそんなGPU性能すらわかってないようなのが
うごかねーぞゴラするんだし
その点コンシューマーは楽だわ
同じプラットフォームなら性能一律だし
創意工夫して低スペでも動作する高効率なロジックを組む、
って言う脳内活動を捨てて、自己満足を満たす為だけに面倒だと思った事はやらないっていう
ニート同人の中でももっとも汚物に近い糞の発想が
>>563
でも極論なしなら VSとPSそれぞれ2.0ならOKでしょ?
いまだにWindows95で動きませんとか言われるから困る。
>>568 それDirectX9動かないんですけど?w
Readmeに書いて、サポート対象外です。 でいけないの?
そういう人はそんなもの見ません
ていうか商売にならないほど圧倒的少数派をなぜサポートするのか? そういうのを自分が3Dに手を出さないいいわけに使ってるあたり技術者としては最低だよねw
573 :
デフォルトの名無しさん :2009/06/27(土) 20:51:04
最新3Dゲームを高スペックPCで楽しむ層なんて圧倒的どころじゃない極々少数派だろがw
>>573 どっから「最新」なんて出てきたの?
ほら、頭おかしい証拠だよw
まあ、PC上で動くゲームの場合はぱっと思いつくだけでも OS,DirectX関連はあるしCPUやGPUの能力やメモリサイズと あれこれあって大変なのは確かだね。 しかも、そういう環境だとかを自分で確認できない人は 「うごかねーよ」しか言わないしね
だから何?w
エロゲー如きでハイスペック要求してんじゃねぇよという事です
糞ゲー如きでハイスペック要求してんじゃねぇよという事です いやマジで
やっぱりム板で一番駄目なすれ
というよりム板に存在してはいけないスレ
====‐|| || ニニニニニニ____________ ' ̄ ̄ ̄||| | ┏━┯┯━┓||。 ̄ ̄ ̄ ̄ |┏━┯┯━┓| || | ┠─┼┼─┨|| 。 .|┠─┼┼─┨| || | ┠─┼┼─┨|| ゚ . 。|┠─┼┼─┨| || | ┠─┼┼─┨||゚ 。 .|┠─┼┼─┨| 、 _,,|| | ┠─┼┼─┨||. ゚ 。 |┠─┼┼─┨| 'ヽ,/ || | ┣━┷┷━┫|| 。 ゚.|┣━┷┷━┫| ./″' ..|| | ┃| ┃||―――――|┃ |┃| || | ┃| ┃||三三三三三|┃ |┃| / ̄ ̄jl━━━━┴'=====''┸━━━━┛ / /i___,,;;;;;:| ;;; ;;;;;;\;;;;;;;;;;;;::: . ,.∠___/ ´x /,,,,;||__________\;;;;;;;;;;;;;; ´ || ̄ ̄ ̄||ー―‐',, ,,,,:.|| ̄  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ \::::::::::: _,,...,,,,_ ___ .▼ , / ヽ-、__ 明日起きたら /▲..,3__/ / /_,,./,'3 / / みんなVIPに戻ってるよ / ,' 3`ー/ / ./l ⊃ / / `ー--|_______/
>>577 ハイスペック?
何いってるの?
それを理由にしていまどき95なんてサポートしてるわけ?
自分が生存するためにわざわざ95サポートしないメーカーに
嫌がらせで電話してるのお前だろ?気持ち悪い
583 :
デフォルトの名無しさん :2009/06/28(日) 00:48:59
だいたいハイスペックってどの程度の性能だよ。 Phenom II X4 3GHz DDR3-PC12800 4GB×4枚 HDD 1TB 10000rpm GeForce GTX 295 とかならまだまだ普通だよな?
>>583 AMD使うならラデオンだろ
頭おかしい人?
俺のセロリン1.4Gは、 コンパイル中はニコ動見れない でも普通だと思う
588 :
デフォルトの名無しさん :2009/06/28(日) 00:53:48
>>585 知らん。
もうすぐ組む予定のPC。
たぶん乗るだろ。
64bitOSはメモリも16EBまで対応できるらしいし。
3Dをやらない理由にはならないな 俺の机の引き出しにゴミのように突っ込んであるRIVA 128で動いちまうしなw
プレステからもう15年近く経つのにいまだに3Dが特別なもの扱いって・・・
3D品質は今くらいで良いから、ネットの品質上げて欲しいな。 地球の反対側の人との対戦でも安定通信で、遅延があったとしても4フレーム以下とか。 これからはオンラインゲームの時代だぜ!
>>590 いまやっとriva128の採用に踏み切ったんだろw
593 :
デフォルトの名無しさん :2009/06/28(日) 01:06:36
ゲームするためにグラボを買うような人種なんてPCユーザの何割いるんだよw
ですよねー 普通はDirect3Dプログラミング用ですよねー
>>593 ではriva128より下(3D最低ライン)の性能のものをわざわざ探してきてとりつけるユーザーが何人いるのか?
結局どーゆースペックのユーザーを対象にして作ればクソゲー扱いされなくて済むわけ?
>>563 みたいな超スーパーウルトラハイスペックPCか?
>>596 riva128の機能をフルに使えばいいよ
面白ければ絵がファミコンレベルだろうがクソゲ扱いはされない
対象PCをVistaプリインストール機とかにすれば万事解決じゃね? 無駄に要求スペック高いのがプログラマにとっては逆に嬉しいんだが
>>599 それは自動的になる流れなのでどうでもいいな
結局、一生懸命馬鹿みたいに低スペックPCサポートしてた 昔のエロゲって動かなくなっちゃってるのが多いよね Flashで作ったのがいまでも動くミステリー 全部Flashで作ればよかったのにねってぐらい無駄だな
つーか 低スペックPCで作れば大抵のPCで動くだろうけど 開発作業でストレス溜まるんだよ 重いし 今の俺の開発環境はこれらのソフト常駐でトリプルワイドディスプレイ これでサクサク動く環境じゃないとストレスでハゲる UnEditor MS-DOS Pixia Inkscape メタセコイア IE Opera Sound Engine 自作のモデリングソフト 自作のマップエディタ PhotoShop Illustrator DXSDK付属のDDS変換ソフト DXSDK付属のXファイルビューア WindowsMediaPlayer WinAMP GOM Player エクスプローラ Poderosa 自作のプロジェクト管理ツール Yahoo!メッセンジャー Windowsメール FFFTP
605 :
デフォルトの名無しさん :2009/06/28(日) 01:56:28
flashゲームって操作性悪くない?
アマチュアかよ
>>605 そういうの気になるゲームは流行ってないし売れてないしいいだろ
いいんだよ細けぇことは
ってのがFlashゲーだと思う
実際、Vistaで動かなくなっちゃうよりはいいし
608 :
デフォルトの名無しさん :2009/06/28(日) 02:01:02
>>604 なんか、、、無駄にダブってたり関係ないもの立ち上がってるよね。
フラッシュとショックウェーブって何が違うの?
リストからWinnyとShareとPD外したのはどういう意図なんだろう。
>ToHeartデスクトップマスコット こんなのいらないだろ
612 :
604 :2009/06/28(日) 02:15:38
>>608 似たような機能でも得意な分野とか目的が違うから複数立ち上げてる
WinAMPはコーディング中に聞くネットラジオ用、WMPは効果音の試聴用
Operaは速いからメインだが、不具合が起きることがあるからそのときはIE
Inkscapeのほうがしっくりくるが、たまに使い方が分からないことがあるからIllustrator
>>年賀状作成ソフト筆王ZERO 常駐で使う必要ないと思うが・・・
きっとプリインストールされていたのをアンインストールするのが面倒くさいんだろう
>超昂天使エスカレイヤー 常駐はないだろー
>>609 内容と生まれ方が違う。今では外見上ほとんど違いは感じられないだろうけど。
Flash は元々Webコンテンツ上でベクタアニメーションを行える、ってのがメインでプログラマよりもデザイナ向けの商品だった。
ActionScriptでインタラクティブな内容も書けるけど、あくまで 「イラストレータライクな操作感でベクタアニメーションを製作できる」
ってのが本懐だった。 書いてもボタンのハンドラなんかは on(press) { ほげほげ } で済むほど簡素化されてた。
対して ShockWave は Lingo っていう AppleScript 風の外見の専用言語が付いていて、もうちょっと開発者向けの商品で、
こっちはWebに特化していなかった。 っていうのは、例えば最近あるかどうか知らないが、雑誌付属のCDとかで、
AutoRun するコンテンツセレクタとか、あるいは単体のちょっとしたゲームとか、そういうローカルドメインで動作する
内容を記述出来るって言う商品だった。
方向性がはっきり分かれてたんだけど、FlashのVerが4から5、またその先に向かうに従って言語の形もECMAになって
機能拡充がどんどん図られていく歴史の中で、両者の違いがなくなっていった。 簡単に言うとこんな感じ。
ShockWave はもう思い出のひと。 Lingoプログラマがそれだけでちやほやされたのは、もう10年近く前のこと
617 :
616 :2009/06/28(日) 08:46:49
×ECMA になって ○ECMAScript になって
ここまでのプログラミングの話題…0
>>604 俺、そこまで色々立ち上げて 「ながら作業」 しないとストレスたまるってんなら、
むしろ横にノートPCでも立ち上げて、そっちでマルチメディア再生しとく。 複数モニタ立ててるんなら、それでも同じこと。
もしそれでキーボードが二箇所になるのが億劫だ!なんて話になるとしたらちょっと集中力足りないんじゃね?って思ってしまう。
開発に意識集中したら、俺なんて同じ曲が延々ループしてても気づかない
= メディアプレイヤなんて一回再生かけたら頻繁に触ることは無い
= キーボードが別でも支障は無い
むしろコンポやiPodでいい。
>>618 な。 ほんとだよな。 俺ここVIPだと思ってたわ。
俺はこんなに凄いだZEー的な奴に限って、しょぼくみえる。 中二だからか。
その文そのものが中二病。 自覚症状無しってやつ
梅
624 :
デフォルトの名無しさん :2009/06/28(日) 10:51:44
625 :
デフォルトの名無しさん :2009/06/28(日) 12:30:45
プログラムの話しようぜ! おまえらゲープロでもマルチスレッド使ってる?
可能な限り使わない。
>>616 なるほど。
積年の謎が解けた。
ってことは今から始めるならショックウェーブじゃなくてフラッシュってことだな。
そこまで知らないってすがすがしいなw
なるべくロード時間を減らすために先読みするのに使ってる。 例えばダンジョンとかでも隣接するマップのデータを裏で読み込んでおいて、 移動時のロード時間を短縮する。
630 :
627 :2009/06/28(日) 12:46:50
>>628 うるせーw
真面目にショックウェーブも検討してたわ。
それポーリングで十分じゃん。ライブラリはスレッド化されてるかも知らんが。
オンゲでもマルチスレッド使うだろ。 特に、ホスト役の香具師に複数接続するゲームを作るときは ホストに接続の数だけスレッド立ち上げる。
ロード時間って配置とか工夫すればスレッドにする必要もないと思うんだがなあ そんなにへぼい管理しかしてないの?
配置だけじゃ解決にならないだろ。スレッドは必要ないけど。
配置ってのはディスク上じゃなくてメモリとかいろいろね 後はデータの作りとか
おまえらカプコンのゲームエンジンを見習えよ マルチスッドレらしいぞ
いろいろねってw シーケンスや先読みもいろいろならもうどうでもいいが。
スレッド化しない限りマルチコアの恩恵が受けられないけど、 大抵スレッド化のデメリットを理解してない奴ほど何でもスレッド化したがる。 C/C++の多人数開発でスレッド化を進めるなら相当な準備がないとリスク高い。
最近ゲーム作りの勉強はじめた素人の俺からすると マルチスレッド使わないでゲームロジックと描画分離する方法がわからん
初心者過ぎるw。もっといろいろゲームプログラム読んでみろ。
普通初心者ってマルチスレッド使わないところから入らないか?
プログラミングが初心者ならまずマルチスレッドは無いけど。 経験豊富ならいいんじゃないか。 俺も最初は使ってなかったが、使い始めると当たり前になったり。
タスクシステムでググった。なるほど while(true){ 描画; 入力チェキ; 1フレーム進める; }; 的な流れでやるのか 入門書だとメッセージループ使ってロジックも描画もやってたから 分離するには別のスレッドでも作ってあれこれメッセージ送るのかなーとか思ってたよ
1フレームごとに ゲームロジック→画面バッファ的なものに描画→時間があまってれば待ち→表示 のループでええやん
リロードしてなかった・・・ タスクシステムっていうのか
>>644 まあ順番にすればいいだけなんだけどね
1)入力チェック
2)自キャラ及び敵などの移動
3)衝突判定
4)描画
スレッドのデメリットも語れないようじゃ使う資格なし
>>648 に、デメリットを語ってもらおうじゃないか
>>650 それほど同期が求められない処理はマルチスレッドしてもいいけど
同期の問題があるしなあ
あとマルチを意識して作業できない人がいた場合は大変なことになる
652 :
デフォルトの名無しさん :2009/06/28(日) 14:32:47
◆デメリット よくわからずにゲームランのwhile内で描画スレッド立ち上げまくると、 実は描画スレ内でゲームが終わるまで動くwhileがあったりして、 描画スレッドが何百個も動くという地獄絵図を見ることになる。
というかタスクシステムの話題はこのスレでやらんでくれ。
タスクシステムって結局のところキューみたいなものだしなあ
関数型プログラミングは有効かとか
タスクシステムでもあるけどシステムを一段抽象化すると デバッグが一段以上大変になる。
657 :
デフォルトの名無しさん :2009/06/28(日) 14:38:15
<デメリット> スレッドとプロセスの区別がついてないと、 スレッド作ったらプロセスに表示されると思ってタスクマネージャー立ち上げてもスレッドが確認できず、 おかしいと思って描画スレッドを何個も立ち上げてまくって、 描画スレッドが何百個も動くという地獄絵図を見ることになる。
>>657 ワロタwww
タスクマネージャってスレッド数表示がデフォルトでoffなんだっけ?
タスクマネージャでスレッド数を表示できることを今初めて知った
660 :
デフォルトの名無しさん :2009/06/28(日) 15:10:41
コンピュータ総合学園HALの生徒さんはどうしてあんな馬鹿みたいに高い金を払って 底辺の授業を受けているんですか?
OSのスレッドって糞遅くね?
オクタコアCPUとかが出回るまで我慢しろ
スレッド分けること自体遅くね? 1フレって単位での並列化って狙うだけ無駄のような気がするんだけど? そもそもOSって1フレ単位の時間の概念なんかもってるのかよ
OSが管理するスレッドが重いのは、コア数増えてもどうにもならんだろ。 てか、グリーンスレッド使うか、ファイバーが使える言語がメジャーになるのを待て。
それって並列化云々とは違う話で 言語のあくまでみかけ上の話でしかないよね? CPUがどんなにたくさんあっても関係ないんだよね?
>>661 >>663 それは最初のスレッド起動が遅いって言う意味か?
起動後の操作で遅いとは思ったこと無いぞ。
>>666 嘘、じゃやってみろや
ゲームオブジェクト全部スレッドにしてみろ
マジ重い動かない
これで無駄にぷよぷよ作ったことあるからわかるw
ちゃんとブロックにお目目がついててみんな適当にプルプルするんだぞ(スレッドで)
なんで、オブジェクト全部スレッドにするんだよ。それ単に設計が悪いだけ
そのスレッドの使い方はアホすぐるw
いんだよ どれだけ遅いかやってみせただけだから 結局、そんときは普通にやるより遅くなる場合があるってわかればそれでよかった じゃ、速いときってどうまとめたときに早くなるの? って議論ができるじゃない?
非難してるわけじゃねーぞ ほんとにやったんかい、なんてアホ(褒め言葉)なんだ と思ってくれ
スレッドの仕組みって考えたことないの? ちょっと無駄すぎだろ
別に速さ求めるわけじゃない、処理制御が楽になる場合がある。 俺の場合は基本は4つだな。 1.ファイルIO等の重い処理をするスレッド。 2.外部通信をするスレッド 3.画面表示スレッド。タスク部分も含む 4.データー操作や、キャラの大きな操作等、全体の流れ、キー処理も 3,4は状況によって1つだったり複数だったり
マルチスレッドを良くしらずに毛嫌いした挙句、開き直ってそんなのいらねwwってのは論外
だからって何でもスレッド起こせばいいっていう極端な馬鹿も論外
手段なんて目的を観察して決めるもんだろ
つか
>>644 見て思ったけど、タスクシステムとか名前付いててなんじゃいって思ったが、
大昔のBASICで書いてたような逐次処理と変わらんのか
イベントドリブン当たり前のご時勢だと逆に新鮮って事なのか
無駄いうか普通エンジン部分に使うんであって ゲームオブジェクトに使わなくね ファイバーとかコルーチンと呼ばれるものを使うんじゃね 俺は使った事ないけど
>>674 OSだってマルチコアとかでなければCPU資源を分割して逐次処理してるに過ぎない
ゲ聖でやれ
>>676 674じゃないが、速さを求めるわけじゃないんだって。
重い処理はスレッドにする必要があるがそこは通常ライブラリ化されている。 画面表示は通常フレーム内処理なのでスレッド化自体に効果がない。 3・4あたりは勘違いしてる奴がたくさんいるから危険。
680 :
デフォルトの名無しさん :2009/06/28(日) 17:47:42
重い処理なんてCPUとグラボ買い替えれば解決だろ
681 :
デフォルトの名無しさん :2009/06/28(日) 17:49:47
それをユーザに要求する訳ですね。楽でいいですねー
このスレの声のでかい人に言わせれば スレッドをゲームオブジェクトに適用するのは間違いってことでいいんだよね
つまんね
コリジョンとかスレッドがいいケースもある
>>682 手段は目的を観察して決める
その 「ゲームオブジェクト」 とやらに必要なら使えばいいし、そうでなければ使わなければいい
単純に誰が言ったから間違いとかそういう事じゃない。 物を作る人間なら自分で考えて判断しろよ
・・・って事でいいと思う
自分でケツ持つなら何やってもいいんじゃね? 人に強要するなら人の分もだけど。
一言でゲームといっても色々あるからなぁ PSのメタルギアソリッド(初代)はスレッド使ってたらしいけど 何に使ってたんだろう AIとかかな
688 :
デフォルトの名無しさん :2009/06/28(日) 20:20:19
>>681 へー、
「俺のOSはFedoraだから
>>681 の作ったゲーム動かないよー」
って言ってるユーザーがいたらWindowsでプレイすることを要求せずに
Linux対応にしてあげるわけですか。
ご苦労なこった。
もしこれで
>>681 がReadMe.txtに『動作環境』とか書いてたらただのカス。
何その極論
何このキチガイ
692 :
681 :2009/06/28(日) 20:36:04
ターゲットユーザーの動作環境を外して作っといて「俺に合わせろ素人が」って訳ですね。売れるといいですねー
>>691 おいw
>>692 それで95とかサポートすることを強制して
サポートしてないソフト見つけると苦情の電話いれてるの?
キメェよお前
riva128でも3D機能あるのにいつまでいってんだよマジで
見えない敵と戦ってる人って楽しそうだよね
普通に迷惑
>>694 敵がいないだと?
じゃ、俺のいうことは合ってるんだよね?
>>696 俺って言われてもな…俺は俺だし。ID出ないんだからコテハンくらい付けてくれ
698 :
デフォルトの名無しさん :2009/06/28(日) 21:05:55
>>692 誰がターゲットユーザー外すなんて言ったの?
妄想と現実の区別付けろよ恥ずかしいから。
もめるなよお前ら。 だから俺が想定ユーザー環境書いてやったんだよ。 CPUはクアッドで3GHz以上 メモリはDDR3で16GB以上 HDDは3TB以上 グラボはGeForce GTX 295以上で2枚差し こうやって基準を設けてやればみんな平和。
700 :
デフォルトの名無しさん :2009/06/28(日) 21:17:01
ム板で一番活発なスレ
702 :
デフォルトの名無しさん :2009/06/28(日) 21:51:21
Windows7じゃね? 10月には7出るし、今から開発するならそのくらいが一番妥当。
703 :
デフォルトの名無しさん :2009/06/28(日) 21:56:57
それで何を作るんだ?エロゲか?w
>>699 riva128(nv1)でいいって言ってるのにアフォなの?
705 :
デフォルトの名無しさん :2009/06/28(日) 22:06:24
rival128なんて今どき使ってるやつなんていないだろ。 縄文時代からきたの? 縄文土器でメシ食ってんだろw だっせw
>>706 はぁ?
何の話?
普通に3Dもシェーダも使いまくってるけど?
>>704 いい加減riva128から離れるんだ。それがお前とスレ住人のためだ。
3D使ってればおk
何これ。 何の審査? 3D使ってればOKて何?
このスレIDが無いから>>指定の無い書き込みが微妙にわかりにくいな
とかいってるやつからすでにないw
Riva128はNV10だったはず NV1は、パンツが走る奴だな
2Dの動きだけで表現してる擬似3Dでも3D以上に本物っぽく見える事があるよね
宇目
718 :
デフォルトの名無しさん :2009/06/28(日) 22:45:04
2Dにしがみついてる奴って何なの? あーだこーだ理由つけて自分が3D使えないのを認めようとしない。 どうせベクトルも行列も使えない厨卒だろうけど。 見ててすごく哀れ。
ベクトルも行列もわかるけど3Dだからこそ最高に面白い!っていうゲームに出会ったこと無いわ
戦火期待
3Dごときで騒ぐなよ。当たり前すぎて滑稽だわ。 いまやゲームプログラムの分野の中で簡単な部類だぞ。
3Dプログラミングも一応経験してるけど個人製作は2Dでいいや・・・ 一人でやるとなるとモデリングが面倒。 誰か良いソフト知らない?できればDOGA以外で
2D信者「ドット絵は文化」
IDないと自演するのも楽だけど自演認定するのも楽だな。
3Dのコードはコピペできるけど一人でも何もつくれないって奴増えたよね。
ゲームプログラマーにいいデザインソフト聞くのがスレチ?
ゲームプログラムは聞いていいけどデザインソフトはダメです。
レベルの低いプログラマーしかいないんだな
735 :
デフォルトの名無しさん :2009/06/28(日) 23:11:18
この板ID欲しいな。全然話が前に進まない age
むしろIDある板に立てるべきでは?
>>735 前に・・・ってどこに向かってんだ?お前w
とりあえず
>>734 みたいな自覚症状の無い中傷厨を排除する方法って無いかな
話の邪魔
このスレでまともに話が進んだためしが無い
だってディレクション能力皆無だもんお前らw
2chに立てたことが第一の間違いじゃね?
>>728 どうせ板違いの思いつきばっかり垂れ流すVIPみたいなスレなんだから
もういいじゃんどうでも
>>725 スレチ
742 :
あいこ :2009/06/28(日) 23:55:13
こーのあいだはスレチがあったんだー♪ だけーど声はかけられなかった♪
743 :
デフォルトの名無しさん :2009/06/29(月) 00:01:10
ガーディアンならセーフ
ファルシに選ばれたルシの出番だろここは
そんなことしても陰語になるだけなのにね。 「厨房」「池沼」「氏ね」みたいに。
>>746 そういうのもダメだろ
なんか気にイラねーもんをまとめて対象にできるように動いてるから
53 : ヒメスミレ(アラバマ州):2009/06/23(火) 22:01:20.08 ID:a8jJzwVe
まあ生徒会じゃなくて学生会とか執行部とかになるだけですけどね
61 : デルフィニム(兵庫県):2009/06/23(火) 22:02:08.39 ID:FluHPOkn
>>53 >上記以外にも、意図とする内容やキーワードを含みます。
FF8がこの世から消えたらと常々思っていたがまさか本当に消えるとはw
じゃぁ「女子校正」もアウトか?
>>750 だからそういうのダメだって
前後の文読んで強引に規制できるようになってるんだって
説明しないとわからないのか?
そんなことしてたらゲーム中に一文字も出せなくなっちゃうよ? 無言のエロゲ作れってか? あいつらエロゲの方向をどこに向けようとしてるんだw
>>752 いや、エロゲやポルノ雑誌自体を消滅させようとしてるっぽい気がする
そしたらコミケもなくなっていいねw
やっぱりこれまで税金払ってなかったのがまずかったんじゃない?w
いつからコミケ=エロになったんだ。エロがなくなっても半分は残るわ。 つかゲームプログラムの話からかけ離れまくってるな。
生め
昔、エロゲがない世の中なんて生きられないと思っていたが 今はどうでもいい 現実で手一杯
なるほどな…。 昔、世にも奇妙な物語であった「ダジャレ禁止令」を彷彿とさせる内容だ。
>>754 無理無理、「生徒会」とか禁止だし
京アニ作品全部潰す勢いだからなw
759 :
デフォルトの名無しさん :2009/06/29(月) 00:48:23
でもこのスレでDirectX11だとかシェーダ2.0とか言ってる香具師には関係ねーだろ。 そういうやつらはGPGPUとかでヌけるだろ。
760 :
デフォルトの名無しさん :2009/06/29(月) 15:29:58
gpgpuって俺らも使える技術なの? nvidiaと協力しないとできない技術なの?
産め
あぼーん
>>760 GPGPUの技術はDirectXを使えば誰でもできる。
またPSPで東方スレの奴らか あいつら2chの外にまで迷惑かけてるのか… もうあのスレ削除しろよ
765 :
デフォルトの名無しさん :2009/06/29(月) 16:15:59
DirectXってポリゴンやテクスチャの計算以外もGPUでやってんの? 普通にCPU使ってるでしょ。
行列の計算とかベクトルの計算はgpu
>>766 HWT&LやプログラマブルシェーダーはGPGPU技術に含まれるのですか?
>>764 無視推奨。下手な事言ってこのスレ再度攻撃されたらたまったもんじゃない。
確かに過剰反応するのは逆効果だったな…
>>766 それってD3DXの算術関数にある行列やベクトル演算のことを言ってるの?
>>769 それはソフトウェア演算じゃなかったっけか
少なくとも3年くらい前はそうだった
771 :
デフォルトの名無しさん :2009/06/30(火) 00:14:56
2chって携帯で書き込んだときも個人を識別してるよな。 40秒規制とか普通にひっかかるし。 固有IDもとらずにどうやって識別してんの? 俺も自分のサイトに仕込みたいんだけど。 ランダムに生成したIDみたいのをタグに混ぜて 投稿時にクエリと一緒に送らせてるとか?
773 :
デフォルトの名無しさん :2009/06/30(火) 00:23:25
最近のケータイはクッキー対応だろ
ふつうにIPじゃないの?
>>773 俺のはCookie非対応。
>>774 携帯って携帯会社の串みたいのを通して接続してるはずだから、
同じIPの奴はたくさんいる。
しかも串鯖は複数あって接続のたびに使う串鯖が変わるから、
結果として接続するたびにIPはころころ変わる。
携帯は端末番号があるじゃん。
倦め
端末番号あるけど2chは採ってないはず。 端末番号がサーバーに送信されるときは確認が出る。
え?
あ?
781 :
デフォルトの名無しさん :2009/06/30(火) 02:07:59
Air
>>778 いや、端末番号を送信しない設定にしてたら書き込めないで警告ページに飛ばされたから、
あんた自身も端末番号を送信しているはずだよ。
まじで!? 自鯖で実験してみる。
784 :
デフォルトの名無しさん :2009/06/30(火) 15:15:01
クソゲーでいいから誰かうpしろよ
スレチ
786 :
あいこ :2009/06/30(火) 22:23:18
こーの間はスレチがあったんだー♪ だけーど声はかけられなかった♪
787 :
デフォルトの名無しさん :2009/06/30(火) 22:36:44
結局DirectXってどの程度の演算をGPUでやって、どの程度の演算をCPUでやってんの?
会社の人月ってすげーよな 帰宅後+土日使っても一人一年じゃ会社の6人月分しか捻出できない。 6人月でプロト作れるかなぁ。
業界を変えなきゃどうにもならんよなぁ 仕事速いやつのほうが仕事量あたりの給料が少ないとか理解不能 なんでストライキとかもっともりもりやらないんだ
>>787 メッシュとかの頂点情報をローカル、ワールド、ビュー行列等で適当に変形する作業と
ライトの場所や色なんかを考慮して色を合成してみたり
テクスチャから色引っ張ってきたりα合成してみたり
その他色々!
簡単に見えてどうしても演算量が増えがちな計算ばっかだなw
でも仕事量なんて厳密には測定できないんだから多少は仕方ない。
気に入らないと思ったら積極的に辞めることで業界を変えていくしかない
いなくなったらヤバイ・いると助かる・こいつじゃなくてもいい・いないほうがまし このどこに分類されるかの問題。 これより細かく分類など出来ない。
いなくなったらヤバイが一番割りにあってない件
大丈夫。このスレにはいないから。
膿め
>>791 ってことはD3Dで提供されている関数群を使えば俺達もGPGPUの恩恵にあずかれるわけ?
誰かベンチマーク頼む。
俺のグラボは何かよくわからんマイナーなオンボードのやつだ。
>>798 恩恵にはあづかれまつぇん。
すなおにD3D11のComputeShaderまで
待てばぁ。
>>798 それは普通に3Dグラフィックス扱ってるだけでGPGPUではない
まぁ工夫次第ではピクセルシェーダーだけでも相当色々できるけどな
>>798 GP とは一般的な目的という意味だ。
GPU を一般的な処理に使うのが GP-GPU。
一般的でない特殊な目的とは何かといえば、2D&3D グラフィックス処理。
GPU は元々その特殊処理を高速に実行するために作られた。
特殊な処理だったので、一般的な用途には向かないことが多かったが、
最近の GPU は比較的柔軟にプログラム可能になってきた。
そこで GP 用途に GPU を使おうというのが GPGPU。
なお、PS2 とかの世代でも、GPGPU を行っているゲームはあった。
半透明加算描画は y = ax + b だし、カラーインデックス画像は
テーブル引きなのだから関数実行とみなせることがあり、すると、
y = a*f(x) + b を実行できることになる。
じぇねらる☆ぱーぱす☆じーぴーゆー 略してGPGPU
803 :
798 :2009/07/02(木) 02:40:35
ありがとう。 GPGPUが使えるなら 浮動小数を扱う系の分散コンピューティング用モジュールかライブラリでも作って社会貢献しようと思ったが まぁまだ無理っぽいな。 俺の手元でGPGPUが扱えるようになるまで他のスキル磨いとくわ。
804 :
デフォルトの名無しさん :2009/07/03(金) 02:20:35
おまえらがゲーム作るときのウィンドウサイズとFPSを教えてくれ! DirectX使ってる香具師はDirectXで作成するバッファサイズも! フレーム固定じゃない香具師はだいたいどの程度のFPSが出るかも! コンソールでやるゲームは…いらんわ!
使用可能な解像度を調べて中間ぐらいのやつ
320x200で。
香具師とか使ってるやつまだいたんだ
1920x1080 60FPSをターゲットとして作るが、大抵のハイエンドPCじゃ20FPSが限界
>>808 でかい…
それって普通のPCだったら動かなくね?
ま、自分の環境のみをターゲットにできるアマチュアなら許されるだろうな。
811 :
デフォルトの名無しさん :2009/07/03(金) 12:06:31
そもそもワイドすぎない?ほぼ2:1じゃん。
>>811 普通のフルHDだろ
最近じゃそれほど珍しくない
813 :
デフォルトの名無しさん :2009/07/03(金) 12:42:45
>>812 ごめん、計算してみたら普通に16:9になった。
これで色は何ビットだろうな。
俺のPCは1920*1200だぞ
前使ってたやつが1600*1080ぐらいだったかな?
たぶん
>>808 はそれを混同してる
おまえは何を言っているんだ
816 :
デフォルトの名無しさん :2009/07/03(金) 17:27:21
1920x1200 = 9:5 1600x1080 = 40:27 変な比率だな。
マジレスすると 1920*1200も 1600*1080も 1920*1080も存在する
819 :
808 :2009/07/03(金) 20:16:36
俺の液晶が1920x1080だからそれをそのまま使ってる。
>>808 は1080pをターゲットにしてるってことでしょ
360やPS3も一応対応してるぞ
Q) 何故このスレはプログラムのネタが少なくて環境や理想の話が多いのか ↓
中のロジックの手法だとかはすでにネットを探せば案外ころがってるので
そもそもこのスレがなんでム板にry
1の脳みそが沸いてるからだろ
825 :
デフォルトの名無しさん :2009/07/04(土) 13:10:50
ジャンプする高さを、押し たボタンの強さで調整する ゲームとかあるけど、あれ ってどうやってんの? マリオとかロックマンとか 。 ジャンプボタンを押して、 キャラクターの浮き始めて から数フレーム間ボタンが 押されてたら、長い=強く 押している、という判定を して飛ぶ高さを決めるのか とも思ったけど、ジャンプ する高さってそもそも初速 度で決定するしね。 どうやってるんだろう。
ボタン押してから数F待ってから飛べばいいんじゃない? マリオはしらんが格ゲーだとほとんど上入力から飛ぶ前に数Fあるけど見た目にはわからんし
入力は離した状態から最初に押したのかそうでないのかをチェックして 最初に押してから離すまで、もしくは一定フレーム数まで上昇し続ける というふうにやってる
まあ最大のジャンプが決まってて、途中で離したらそれがキャンセルされる、というイメージかな このやりかたでロックマン風になると思うけど
>>826 まったらだめじゃね?
押されたすぐのフレーム、その後数フレームのボタンの入力
で決めればOK
>>825 ロケットとか途中で燃料が切れた状態にすればいいんでない?
地上から離れる瞬間に宇宙にいけることが確定してるもんなの?w
飛んでる間、ボタンを押す/押さないで外力を操作できる→マリオ・ロックマンタイプ ジャンプ入力を認識した後の数Fの間のみ、初速度を操作できるが飛んでからは操作不能→KOFタイプ(アクションの例が思いつかない・・・) 初速度固定で、飛んでからの操作もできない→魔界村タイプ(2段ジャンプはできるが) 結構ゲームの難易度にも影響してきそうだね
>押したボタンの"強さ"で調整するゲームとかあるけど ベラボーマンとストリートファイター? とかいってみる まぁ普通は押された瞬間じゃなく離された時に どれだけの時間押されてたかで判定じゃないのん PS2,3のコントローラは圧力も感知できるんだよなぁ・・
>>832 アナログボタンなら強さも取得できる。
デジタルボタンなら押した時間だろうが、それだと判定にラグが出来るから、
一定時間に押した回数や、タイミング(ジャンプのY座標増分が0になったときに
もう一度押すと2段ジャンプとか)を使う方が爽快なゲームになりやすい。
しかしそれでもR-TYPEは爽快なゲームであったと一言
>>830 ロケットと人間では話が違うだろタコ。
ロケットは空中でも推進力を持ってるが、
人間は空中に浮いてからは推進力ないだろハゲ。
836 :
デフォルトの名無しさん :2009/07/05(日) 01:23:09
>>836 ロックマンやったことある?
クローン作ったけど加速じゃなくて減速だよこれ
838 :
デフォルトの名無しさん :2009/07/05(日) 01:45:50
加速・・・
840 :
デフォルトの名無しさん :2009/07/05(日) 02:25:59
ベクトル無視して加速も減速もないだろ。
>>835 そう!
俺が言いたいのは推進力だよ
人間はロケットじゃねぇけど
つまりお前はそういうことがしたいんだよ
頭固いなぁwお前w大丈夫か?w
こまけぇことはいいんだよ(AA略
重力加速度考慮するより若干適当なアルゴリズムの方が面白いこともある どう実装するかは好みで
ゲームは物理シュミレーションじゃないしな
845 :
デフォルトの名無しさん :2009/07/05(日) 09:41:30
>>841 ?
ちょっとお前そこでぴょんぴょん飛んでみろよ。
飛んでから推進力を働かせなくとも飛ぶ高さを細かく調整できることを確認できるはずだ。
>>845 >飛んでから推進力を働かせなくとも飛ぶ高さを細かく調整できることを確認できるはずだ。
それは地面を蹴った瞬間に結果が決まるだろw
いや、頭の位置を飛んだ高さ、とか決めれば 飛んだ後でも高度調整可能と言える
>>848 は?
推進力の有無の話じゃねーか
頭悪いの?
ジャンプの話してんのに推進力の話してる奴が混ざって混乱してるだけだろ
851 :
名無し :2009/07/05(日) 10:33:00
マリオで物理シュミレーションしてみろよ。クソゲーになるぞ! あんなオッサンのジャンプ力なんて本来50cm程度が限界なんだ、身長の1/3しかジャンプできないマリオのできあがり。
>>849 こいつみたいな無駄に口悪く言う連中が荒れる原因なんだよね
殺伐ってもんを勘違いしてやがるんだよな。 ひろゆきが否定したのはなれあいであって、 無駄につんけんしろということではない。
水平方向の速度が一定のとき 推進力がないときはジャンプした瞬間に着地点が決まる 推進力があるときはその推進力が切れたときに着地点が決まる この程度の内容も理解しない・しようとしない相手と馴れ合おうとか思わない はっきりいってただの馬鹿 みていて不快なレベル
>>856 文脈的に誰に言ってるのかわからねぇから>>を使ってくれ
そして最後の3行は不要。理由は
>>854 を精読してくれ
観察してみると分かるが、初代スーマリのようなタイプでは、 ジャンプボタン押しっぱなしの間は等速に上昇してゆく。 このことを、重力加速度と同等の推進力を持つと表現する こともできるが、どのようにでも好きなように解釈したらよい。
861 :
デフォルトの名無しさん :2009/07/06(月) 10:34:41
俺らってジャンプした瞬間に着地点決まるよな?
俺らって誰よ。 空中で方今転換できるやつもいるべ
863 :
デフォルトの名無しさん :2009/07/06(月) 12:32:57
重力を自在に操る高貴なるお方なら、あるいは、、
たとえば重いダンベルをもって飛んで腕を振れば簡単に重心が移動する 空気抵抗なんかもあるし、着地点をずらす程度なら余裕で可能
>>866 ダンベル振るとかwwどこのキン肉物理学だよw
868 :
デフォルトの名無しさん :2009/07/06(月) 15:18:27
ダンベル振るとかw 普通ゲーム作るときって人間がジャンプするなら、 簡略化するためにその人間の装備を全て含んだ重量・重心を基準にして計算するから、 ダンベル振ってもそういう意味では重心位置は変わらない。 それに空気抵抗は一般的なゲームなら計算に入れるだろ。 そうしないと終端速度を求められないから、 高いところから飛び下りるシーンのあるゲームとかだと際限なく加速していく。 マリオでもドンキーコングでもよく観察したら分かるけど、 飛び降りてから一定速度に達するとそれ以上加速しなくなるのがその証拠。 まぁゲームだから重力加速度や空気抵抗の値をそれなりに調整するけどな!。
俺らって生まれた瞬間にどうやって死ぬかきまるよな? 自由意志なんて存在しないよな?
スレチは失せろよ
>自由意思 >自由意思 >自由意思 >自由意思 >自由意思 >自由意思 自由意思覚えたての厨房かよw
872 :
デフォルトの名無しさん :2009/07/06(月) 15:55:54
えっなにそれこわい
873 :
あいこ :2009/07/06(月) 17:32:05
こーの間はスレチがあったんだー♪ だけーど声はかけられなかった♪
874 :
デフォルトの名無しさん :2009/07/06(月) 18:41:51
そもそも重力加速度出してる時点で間違い。 この世に重力加速度を計算してるゲームなど一つもない。
875 :
デフォルトの名無しさん :2009/07/06(月) 18:43:00
グランツは?
いや別に、重力加速度を算出してますなんて レスはどこにもないでしょ。
877 :
デフォルトの名無しさん :2009/07/06(月) 19:10:14
ゲーム作るときって何かライブラリ化したりする?
どうみても足し算をする関数名なのに引き算をする関数 どうみても外積をする関数名なのに内積をする関数 以下略 ・ ・ ・ な俺々数学ライブラリ 会社を出るときに役に立つ
なんかブラウザ論争の様に終わらない論争な気がするんだがw ちなみに俺は重力加速度と終端落下速度を使ってる。 前者だけだと早くなりすぎてゲームにならない部分が出るけど、空気抵抗まで一々計算する必要は今のところ無いからな。俺のゲームではだけど
if(getKey(KEYIN_SPC)){ //尻から出るぅ!!!!!!! vy = BURYYYYYYYYYYYYYYYY; }else{ //落ちるぅ!落ちるぅ! vy += g; } y += vy;
スペースキー押しっぱだと、宇宙の果てに飛んでいくぞ
>>881 俺のゲームに限界など必要ない
お前には必要なんだな
ならばつければいい
俺 お なら
884 :
デフォルトの名無しさん :2009/07/07(火) 00:46:53
当たり判定ってどうやるんですか? なんか壁すり抜けるんですけど
886 :
デフォルトの名無しさん :2009/07/07(火) 02:42:00
壁すり抜けないように設定すりゃいいじゃん
いやだから壁に当たったらそれ以上自座標を増やさなきゃいいだろ
そんなこと俺がさせねぇよ
壁抜けるほど速いなら外側の壁なら分厚くするとか 真面目にやるならベクトルで判定
891 :
デフォルトの名無しさん :2009/07/07(火) 11:46:00
>>885 壁が3Dの複雑な形状でなければ、
一つ前のフレームと今のフレームの座標を出して、その座標間に壁があるかどうかを判定して、
その間に壁があればそこまでの移動で止める。
wall_x = 320;//壁のx座標
posx_a = 310;//前フレームのキャラのx座標
posx_b = 328;//今のフレームのキャラのx座標
if ( ( posx_a < wall_x )&&( posx_b > wall_x ) ){//壁に左からぶつかったとき
posx_b = 319;
}else if ( ( posx_a > wall_x )&&( posx_b < wall_x ) ){//壁に右からぶつかったとき
posx_b = 321;
}
これならキャラの速度が瞬速で、壁が紙のように薄くても大丈夫。
>>891 ちなみに3Dの場合はどうやるの?
基本は同じだと思ってるんだけど・・・
893 :
デフォルトの名無しさん :2009/07/07(火) 11:49:17
>>892 ゲーム用のざっくり計算でいいなら簡単な話、
3Dモデルを覆う立方体同士で交差判定すりゃいいと思う
もっと簡単にするなら球同士で距離で判定とか、やりようはいくらでもあるがな
896 :
あしながおじさん :2009/07/07(火) 14:16:47
>>892 基本的に同じ。
3Dの複雑な形状でも細かく判定したいなら、DirectXを使うという手もある。
DirectXには確かベクトルとオブジェクトとの衝突判定をしてくれる関数があったはずだから、
今のフレームと一つ前のフレームの位置からベクトルを作って、
その関数に投げてやればOKのはず。
ただ、計算量が多いから、オブジェクトの量が多いと重くなる可能性大。
負荷を軽くしたかったら、オブジェクトを直方体や球だとして、
さっきのベクトルとの交点を求めればOK。
これはDirectX使わずに関数自作もすぐできる。
897 :
デフォルトの名無しさん :2009/07/07(火) 18:50:35
何にしても微調整が面倒。 座標でいうと100から200に異動するときに180に壁があったら、 単に異動できないとかじゃなくて座標を180に調整せにゃならん。
同人ゲーレベルの世界で3Dモリモリ動かすのって可能なの? なんか本に1億円かかるとか書いてあったんだけど
3Dモリモリ動かすだけだったら、フリーソフトにもいっぱいある。 企業ベースで動くとプロのコーダー、デザイナー、などなど 100人が2年分の賃金だけでかなりの金額になる。
>>898 同人であるレベルまでいくと会社のツール使ってるから
もりもり動くよw
俺の昔いた会社はコミケ前は同人開発みんなやってて
誰もなにもいわなかったし
会社のツールも使ってゲーム作ってたw
>>898 仮にもプログラムスレで何を聞いてるのか
いくらでも方法あるだろが OpenGL+GLUT でもいいし、Windowsなら DirectX でもいいし、
やる内容によっては ManagedDirectX だって選択肢の内だろうし、
FlashDevelop とか使うんだったら PaperVision だってあるし。
※ただし XNAは除く
壁の位置だけだとめり込んで動けなくなるから法線情報を考慮する必要がある。 床との判定をジャンプ中は無効にしないと高いところに上がるときに動きが不自然になったりするし、その辺りの修正が面倒。 PhysXやってみようかしら
>>901 仮にも質問スレなんだから聞いてきたら普通に答えてやれよ
まあ、ポイントは3Dのモデリングソフトでスキニングが ゲームで使えるフォーマットにしてくれるか?ってとこ? スキニング?アニメーション?なにそれ? って人ならメタセコで十分な話だけど
Wave Front Obj フォーマット簡単でおいしいです(^q^)
907 :
デフォルトの名無しさん :2009/07/07(火) 19:50:44
DirectXのスキンメッシュが未だに理解できないから、 2Dのときに1コマずつ描いていくのと同じ要領で1コマずつメッシュ作ってる。
3Dモデルに骨(ボーン)を入れる。 それでだな、関節の角度を変えると腕が動く訳だ。 骨と皮膚(スキン)は連動していてだな、 骨が動くと皮膚も同時に動く訳だ。 アニメするモデルが持っているデータは、ボーンの角度を配列だ 我々が見えるのはスキンでボーンは見えない。 又、別のやり方は、フレーム毎に全部の頂点データを記録する方法もある。
Roは2Dですか?
逆運動アルゴリズム楽しい
3Dでキャラ動かしてるゲームって市販レベルのものからしてモーションがヘボい 振った剣が壁貫通したり辻褄あわせに無理矢理キャラの位置動かすとか当たり前 よく臆面無くあんなコードで妥協できるものだと別の意味で感心する
912 :
デフォルトの名無しさん :2009/07/08(水) 01:38:32
>>911 バイオハザード2で、ナイフで石とか斬ってみろ
>>911 がんばって限られたハードウェア資源と予算の中で作ってくれ
あとがんばりすぎると後で自分たちが作ったゲームに苦しめられるぞ
キャラクタイメージのbitmapデータってキャラクタークラスの中に入れたほうがいいかな? それとも外に出して関連付けだけするべき?
916 :
デフォルトの名無しさん :2009/07/08(水) 14:26:12
>>915 うーん、どうだろう。
俺だったら、
キャラクラスからしか参照しない → キャラクラスに含める
キャラクラス以外からも参照する → キャラクラスに含めない
ってするかなぁ。
あーでも、外部から参照するにしても描画だけとかなら
キャラクラスに含めてキャラクラスに外部からの描画を受け付けるメンバ関数作るかも。
>>915 画像イメージの管理の方法と設計次第
VRAM容量やら重複など気にしないなら、キャラクタークラスにいれて一緒に管理とか
重複した画像が使用されたなら参照カウンタを増やすなどして
キャラクターと関係無くVRAM上の制御するなら、関連付けだけとか
…別にキャラクタークラスに入れておいても、
ロード時にメモリ展開するだけで、重複してるなら直ぐに開放しちゃうとか
好きにして良い、設計次第
>>917 設計次第なのはその通りだが、結局、
・同一の画像を持ったキャラを複数登場させることがあるか。
・それらの登場させたキャラに関連づけられたビットマップに何かを描画することがあるか。
・あるなら、その変更は全体に一度に影響を及ぼすのか、個別に影響を与えるのか。
で、決めるのが普通じゃね?
そういうのを考える必要がない仕様なら、好きにしる。
919 :
デフォルトの名無しさん :2009/07/10(金) 02:39:10
DirectXのテクスチャ読み込み関数とか、メッシュ読み込み関数とかってVRAM上に読み込まれるの?
キャラクタークラスって業務ロジック的な物の一部、画像はリソース って、考えたら含めずに参照だけ持っとくのが自然じゃね? もちろん、思想によって違うかもしれないが
そこはハンドルにしとけ
いまどきWinAPIだけでゲーム作る人なんているの?
今どきも何も、個人レベルで作る分には内容次第でありだろ。 OpenGL+GLUT くらいは使うにしても
OpenGLって商用フリーだっけ?
さすがにこの質問は素人のものだよね?
926 :
デフォルトの名無しさん :2009/07/11(土) 00:26:01
>>924 OpenGLをどうする気?
そのまま売るのはどうか知らんが、
OpenGLの機能を使ったアプリをOpenGLを付けずに売るのは別に問題ないだろJK
927 :
デフォルトの名無しさん :2009/07/11(土) 00:28:50
うををををを!!! JKとか使っちまった!!!! 児ポ法改正で『JK』がNGワードに含まれてたはず。 K札来るのかな? いきなりタイホとかなないよな。
これからはJoushiki teki ni Cangaeteで JCを使えばいいよ
お前がNEETならNKも良いよ。 このあいだゲ製のNEETすれでNK使ってる奴がいた。 NK=NEET的に考えて
このスレは単発スレってことでいいんだよな?
931 :
デフォルトの名無しさん :2009/07/11(土) 08:46:31
デュアルディスプレイでDirectXのフルスクリーンにするとゲームやってない画面が変になるよな? あの状態でもウィンドウモードよりフルスクリーンモードのほうが速いん?
熟め
/*wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww w w w w w w wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww*/
>936 未だに「ボックス」コメントにする間抜けな規約ってあるよね。
個人のゲーム開発のDirectXとOpenGLの比率ってどのくらい?
またずいぶん大雑把な質問だな。 誰かの場合にはこのくらい、としか答えようが無い気がする
事実じゃなくて意見として読め 日本だったらDirecXの方が多数を占めると思うぜ OpenGLの日本語ドキュメントは少ないからな…
性能的にもDirectXのほうが圧倒的に上だしな。
ソース
何をもって性能で、何について上なのかの定義が曖昧
OpenGLってグラフィックスしか扱えないじゃん。
OpenGLは元々グラフのプロットとか作図するのに、 いちいちローレベルな処理を書かなくてもいいように作られた関数群 それに対して DirectX は3D含めたマルチメディアをダイレクトにアクセスする為のAPI 両者を比較する時、それは描画系だけの話にしないとそもそも生まれも立場も違うっていう
OpenGLとDirextXってプログラム組むのはどっちが簡単?
>>947 簡単なテストコードレベルの話なら、OpenGLの方が笑えるほど簡単。
ぶっちゃけると、関数並べるだけぐらいの勢い
もうちょっとまともなアプリケーション作るって話になると、どっちもあんまり変わらない。
ちなみに OpenGLの関数の捕らえ方や実装は C、DirectX のそれは C++ な。
>>948 サンクス。
なるほど、無理にOpenGLに移行する必要もないかな。
クラス使ってるDirectXのほうがしっくりくるかも。
環境がWindows限定で、かつ移行するのに無理があるような内容なら それこそ無理やりやる必要は無いかも試練 ちなみに俺の場合はOpenGL使う時・・・ 勿論内容によるけど、 WIN32ラップするみたいに、OpenGL周りの処理も自前のクラスでラップしたりするので、 そういうアプローチも含めて考えれば、ますますどっちも変わらなくなるんだぜ
951 :
デフォルトの名無しさん :2009/07/11(土) 22:58:36
LinuxやMacユーザーも取り込みたいのならOpenGL一択 クロスプラットフォームになるから喜ぶ人もいる 例えばネット対戦するゲームなんかだと 人数は多いほうが楽しいからクロスプラットホームというだけで囲い込めるかもね 特にまだOSは増えていく傾向にあると思うし
>>951 普通は各OSごとのバイナリ用意するだろ。
OSと最も相性の良い組み合わせで開発するべき。
Win + DirectX
Mac + OpenGL
Lin + OpenGL
抽象化していれば移植も簡単なはず。
ほとんどプロタイプすら作ったこともない奴の戯言でした
954 :
デフォルトの名無しさん :2009/07/12(日) 01:33:43
956 :
あいこ :2009/07/12(日) 01:38:33
こーの間はスレチがあったんだー♪ だけーど声はかけられなかったー♪
957 :
デフォルトの名無しさん :2009/07/12(日) 01:41:07
このスレはガーベジに回収されるべき
フルスクリーンモードオンリーのゲーム作るときってウィンドウスタイルには何を設定すれば良いの? 調べてもけっこうバラバラで、結局WM_OVERLAPPEDWINDOWで良いのかなと思ったり。 あとEscキーで緊急終了って必要?
別にそれで問題起きてないんでしょ だったらそれでいい エスケープで終了は欲しいな
ESCで終了って面倒。 ゲームだけならDirectInputで処理するけど、 ESCだけはプロシージャでせにゃならんし。 しかまマルチスレッド使ってたらどの段階でESC来るか分からなくて、 またその処理が面倒。
www
962 :
デフォルトの名無しさん :2009/07/12(日) 13:30:25
ゲームでもプロシージャくらいある程度ゴリゴリ書くだろ
終了処理ってどこに書く? ウィンドウプロシージャ内? それともメッセージチェックのwhileの後か。
むしろプロシージャゴリッゴリに書かなくてどうするんだww それともライブラリをペタペタするだけで終わりなんだろうか ・・って、内容によるかもしれないが
int WINAPI WinMain(/* ry */) { // ry while(result) { input(); result = update(); draw(); } return 0; } 上のような感じでゲーム作るとしたらウィンドウを閉じるメッセージとかがきたらどうやって処理するんでしょうか?
while(true) { if( メッセージきた?) { メッセージ処理 } else { ゲーム処理 } }
>>966 ありがとうございます
あなたは天才ですね
Windowsプログラムの基本だし
普通switch文だよな
while(true) { switch( メッセージきた?) case TRUE: メッセージ処理 break; case FALSE: ゲーム処理 break; }
>>963 Direct3D使ってたら終了処理はウィンドウプロシージャの中に書かなきゃヤバいだろ
972 :
デフォルトの名無しさん :2009/07/12(日) 20:58:21
メッセージ来たか来てないかの2卓しかねーのにswitchかよ イカレっぷりがマジパネぇ
ウインドウ管理とゲーム管理の分離すら出来ないのか
974 :
デフォルトの名無しさん :2009/07/12(日) 21:09:20
Direct3Dの管理ってどっちに入るの?
>>966 の内容具体的にするとこういう事。ほんとに基本。てか DirectX以前の話。
ついでに「普通switchだよな」って話は多分このこと
LRESULT CALLBACK WndProc(HWND hwnd , UINT msg , WPARAM wp , LPARAM lp) {
switch(msg) {
//case WM_CLOSE: // ゲームの業務ロジック側じゃなくてwindow管理側の処理としてなんか他にあれば追加
case WM_DESTROY: // Closeされると結局これが来るので
PostQuitMessage(0); // WM_QUIT を送出するのでMainループ抜け
return 0;
return DefWindowProc(hwnd , msg , wp , lp);
}
以下WinMain中 --
MSG msg;
while (GetMessage(&msg , NULL , 0 , 0)) DispatchMessage(&msg); // whileの条件でmsgが WM_QUITの時、条件が偽
return msg.wParam;
>>974 Direct3Dの管理って、ゲームの固有ロジックと関係ない手続き上の事を指してるなら、
普通に考えてざっくりウィンドウ管理・・・ って言い方だと語弊あるかもしれないけど、
そんな感じ。 システムとしての処理、とかアプリケーション固有の処理とか、内容にもレイヤ(階層)があるだろ?
そういう観点で切り分けるのが普通。 さらにアプリケーション固有の中でも、処理の階層によってまたわかれる、みたいな
>>975 ゲームの部分書くところがねーじゃねーか。
while ループをゴニョゴニョするのか、IDLE メッセージ投げて
そっちでゲーム部分の処理するのか、どっちか提示しないと
駄目だろう。
978 :
デフォルトの名無しさん :2009/07/13(月) 01:34:22
DirectXとWinsockとマルチスレッド使用でネトゲ作ったときは死にかけた。 ステータス持った棒人間が歩き回って会話するとこまで作って頓挫した。
>>978 それは経験か勘かどちらかの問題だな・・・
980 :
デフォルトの名無しさん :2009/07/13(月) 03:11:24
>>979 マルチスレッドとソケットの経験が足りなかったよ。
形態としてはホスト役になりたい人がホストを立てて、そこに複数のクライアントが接続するタイプ。
ユーザーは管理サーバーで一元管理。
ホスト役は管理サーバーで認証が通るとDBに登録され、クライアントが探すときにホスト一覧に表示される。
クライアントは認証を通ってから、ホスト検索やホストに接続できる。
マルチスレッドでソケットの管理をやってたんだが、
そもそもゲームの演算と描画を分けて管理してなかったところにマルチスレッド突っ込んで、
無計画な非同期ソケット通信入れたのが問題だったと思う。
軽い気持ちで最初は適当に作り始めたのに、 後で規模が大きくなってきて ああ分離しておけば良かったと嘆くあるあるネタと見た 計算しつつ描画とか、規模小さいうちはついやってしまう
アプリケーション全体のフロー 一般に Direct3D アプリケーションは、あるイベントが発生したときだけ描画させるような よくあるイベント ドリブンのプログラミング モデルではなく、 何もなければひたすら描画し続けるというフレーム ベースのモデルです。 したがって、次のコードのように、描画に必要な初期化が完了したら、while 文でイベント処理以外は ひたすら描画し続けます(ペイント メッセージを受け取った時にも描画します)。
// イベントドリブンなwin32アプリケーションのメッセージループ MSG msg; while (GetMessage(&msg , NULL , 0 , 0)) { // メッセージが発生するまで GetMessage内で待機 TranslateMessage(&msg); DispatchMessage(&msg); } // ゲームなど常に動作する内容の場合 MSG msg; while (1) { if (PeekMessage (&msg,NULL,0,0,PM_NOREMOVE)) { if (msg.message == WM_QUIT) break; TranslateMessage(&msg); DispatchMessage(&msg); // ゲーム用でないその他システム関連の処理(を、行うウィンドウプロシージャ側へディスパッチされる) } else { // ゲーム用独自:タイミング管理コンテナ == 処理を行うタイミングだった場合 { // ゲーム用独自:処理のハンドラを叩く ※このハンドラは必要に応じて上のウィンドウプロシージャからも呼び出される // } } }
>>977 あの内容でさらに提示までしなきゃいけないレベルだったら、
そもそもwin32を真面目に勉強した方がいいんじゃね?とか思うぜ。 いまマジで
>>983 こういうのって素人はどうやって勉強するんですか?
Windowsゲームプログラミングとかいう本を買ったけどなんだかAPIの勉強しただけな気分で終わりました
>>969 switch文は使うな。
あれはバグの温床になる。
>>985 DirectX SDK の一番基本的なサンプルに書いてある。
SDKのサンプルとドキュメントが1次資料に決まってるだろ。
989 :
デフォルトの名無しさん :2009/07/13(月) 10:07:35
>>987 チュートリアルのだけでも画像、メッシュ、ライティング、キーボードやジョイスティックでの入力まで一通り分かるしな。
俺も最初はあれを写経した。
990 :
デフォルトの名無しさん :2009/07/13(月) 12:36:30
>>981 そうそうそんな感じ。
最初にP2Pで実験的なものを作ったら動いたから、
「設計しなおさなくても、このまま付け加えていけばよくね?」
って思ってやったのが間違いだった。
幸いユーザー管理のサーバーは汎用性を持たせて作ってあるから、
ゲームソフトの開発は今年中にリベンジする。
お前ら!設計は重要だ!
hoge
>>898 素人があのチュートリアル見ても意味分かんねえだろ
994 :
デフォルトの名無しさん :2009/07/13(月) 15:27:11
3Dでアクションゲーム作ってるんだけど、3D酔いが酷い。 3D酔いしないカメラのコツってある?
>>994 カメラを動かすのは被写体が一定以上動いたら…とか条件をつけるといい。
常にカメラを動かす必要は無いだろう。
せめて一人称なのか三人称なのかくらいは質問に書けよ
梅
埋め
(俺の子を)産め
次はこんな堕スレにならない事を祈って…1000
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。