Direct 3D
■ このスレッドは過去ログ倉庫に格納されています
0001.
01/11/09 17:06ID:wrfy6OtCとりあえずDX8以降は初期化が簡単になったり関数が変わったり
結構大幅に変わりましたがその辺も踏まえてお願いします。
0635名前は開発中のものです。
04/09/20 05:21:15ID:G4JeccNsDirectXのリファレンスと公式のサイトのコラムが最強、と言いたいとこだが、
出版物では大川善邦という人の本が親切でわかりやすい。
あと煽りが約1匹常駐してるようだけど、頼むからスルー汁!
0636名前は開発中のものです。
04/09/20 05:39:49ID:msLlkYGT彼の本は、分かりやすくはない上に
内容の偏りがとても大きい物が多いように思う。
初心者にははっきり言ってお勧めできない。
某DX9本の第一章では、DXの歴史について
彼の偏見が満ち溢れた攻撃的な文章で書かれているので、
興味あれば読んでみるといい。
0637名前は開発中のものです。
04/09/20 10:20:09ID:1CCtnaAjお前、そんなの初心者にわかるわけないって気づかないもんかな。
質問するのに最低限の情報なんてわかる奴が質問なんかするかよ馬鹿。
だいたいてめぇがそんなに完璧だっていうのなら、模範解答ぐらい見せてみろよ。
はじめは「DirectXの本でいい本ないですか?」って質問して
「こんなのどお?」とか「どんな本がほしいの?」とか食いついてきてくれてから
詳細を出しても遅くねぇだろ?
いきなり>>631みたいなレスを刻むことになんの意味があるの?
興味なけりゃ失せろよ。お前がどんなに実力あろうが、読み手にとって必要ねぇだろお前のレスは。
0638名前は開発中のものです。
04/09/20 11:33:56ID:gh8dBUSjさらにそれを煽る馬鹿に、それを馬鹿という馬鹿、
ここは馬と鹿でいっぱいです。
0639名前は開発中のものです。
04/09/20 13:24:34ID:NBNTfQYF0640名前は開発中のものです。
04/09/20 13:32:20ID:eotHNQaNなんだかプログラマの独善性というか、独りよがりの様が垣間見えてステキ。
0641名前は開発中のものです。
04/09/20 13:56:37ID:0wAQaBPWhttp://gamdev.org/w/?%5B%5B%BF%E4%C1%A6%BF%DE%BD%F1%2F%C9%AC%C6%C9%BD%F1%A4%CE%A4%BF%A4%E1%A4%CE%A5%B9%A5%EC%A5%C3%A5%C9in%A5%B2%C0%BD%BA%EE%B5%BB%BD%D1%5D%5D
推薦図書/必読書のためのスレッド in ゲ製作技術
http://pc5.2ch.net/test/read.cgi/gamedev/1086023829/
0643名前は開発中のものです。
04/09/21 01:54:13ID:DEwwUhjo∩ ∩
| つ ⊂|
∧ノ~ ! ,'っ _c,!
ヽ ミ| ・ \ ⊂/ ・ \
γ⌒^ヽ ミ| ... '_) | __,,▼
/:::::::::::::ヽ. ミ|. (,,゚Д゚) |・ (,,゚Д゚)
/.::::::::(,,゚Д゚) | (ノ |) | (ノ |)
i:::::(ノDole|) | 馬 | |・・ .鹿 |
゙、::::::::::::ノ 人.._,,,ノ ι.・,,_,ノ
U"U U"U U"U
0644名前は開発中のものです。
04/09/22 21:35:17ID:RNRnDlpa0645名前は開発中のものです。
04/09/22 21:47:21ID:clrj2MuYアッガイなら好きだ。
593 名前:デフォルトの名無しさん 投稿日:04/09/21 17:39:48
加護より辻だろ
594 名前:デフォルトの名無しさん 本日のレス 投稿日:04/09/22 21:11:23
アッガイは低壁として有効だ。
0646名前は開発中のものです。
04/09/24 01:44:46ID:NKyPyH0l0647名前は開発中のものです。
04/09/24 15:15:18ID:mWFHuK900648名前は開発中のものです。
04/10/01 13:51:47ID:JKX9QAEf0649名前は開発中のものです。
04/10/01 15:10:42ID:YdevfgFc0650名前は開発中のものです。
04/10/01 19:19:59ID:AF2jiSUQガンダム世代ではないのでガンダムは別に好きではありませんが…
0651名前は開発中のものです。
04/10/01 22:53:43ID:7XNH8LNX0652名前は開発中のものです。
04/10/02 01:13:07ID:0gHT3zrZ0653名前は開発中のものです。
04/10/06 00:43:20ID:t+yC/4+H0654名前は開発中のものです。
04/10/06 22:04:27ID:HUuynDZWトラウマでもなんでもなく、興味ないから。
0655名前は開発中のものです。
04/10/08 13:21:55ID:c6wEv35N0656名前は開発中のものです。
04/10/08 22:57:25ID:8tYEJEJR0657名前は開発中のものです。
04/10/10 02:38:12ID:jxgGsTI50658名前は開発中のものです。
04/10/10 02:40:18ID:Ecqm84vI上下左右に伸びてる。
これって、治る?
0659名前は開発中のものです。
04/10/10 09:00:28ID:yPgf9JPV0660名前は開発中のものです。
04/10/10 11:12:34ID:4j8VItD60661名前は開発中のものです。
04/10/10 20:01:57ID:+lHJGuNa0662名前は開発中のものです。
04/10/11 16:49:16ID:e+nbPJpiテクスチャとして使うことってできんの?
モーションブラー用に、自前で別サーフェスを
用意してんだけど、できるんだったら、用意する
サーフェスを1つ減らせてラッキー。
0663名前は開発中のものです。
04/10/11 17:26:28ID:1ZelzsvNそう。よかったね。もう二度と来ないでちょうだい。
0664名前は開発中のものです。
04/10/11 18:00:38ID:e+nbPJpi>>663のような奴に煽られちまった!
0665名前は開発中のものです。
04/10/11 18:30:01ID:YSzu4yPYできるよ
0666名前は開発中のものです。
04/10/11 20:04:23ID:jqTCTr00Device.GetRederTargetData
Device.GetFrontBufferData
これらはターゲットのサーフェスへの参照を得るメソッドではなく、
サーフェスの内容を指定したサーフェスにコピーするものだ。
デバイス作成時にFSAAの設定をした場合は、AA済みの画像が手に入る。
当然パフォーマンスは良くないから、モーションブラー用に使うには向いていない。
悪かったね。君の今のやり方で我慢してちょうだい。
0668名前は開発中のものです。
04/10/12 21:53:28ID:qSbzxOXVテクスチャをバックバッファの代わりにすると考えるもんだ。
常にシーンをテクスチャに描画して、本物のバックバッファには
テクスチャを描画するだけ。
しかし、この手法には数々の問題点が…(来週につづく)
0669名前は開発中のものです。
04/10/13 01:00:45ID:gcf5eUxD別に頭なんて良くなくても、原理を分かってれば誰だって出来るだろう。
それ以前にお前が言ってることは>>662と何も変わってない。
来週に続いたところで、そんなもん読むくらいなら火曜の夜はぷっすま見るほうがまし。
0670名前は開発中のものです。
04/10/13 06:07:05ID:fyUkMMUHバカかお前は。銭金に決まってるだろ。
0671名前は開発中のものです。
04/10/13 06:46:46ID:aNunOKNy来月から再開でしょ。
0672名前は開発中のものです。
04/10/14 23:46:31ID:oEBIW2wn0673名前は開発中のものです。
04/10/18 02:02:32ID:g5wSND4n0674名前は開発中のものです。
04/10/18 16:40:41ID:VGfCVvCxサーフェス全体を、RGBは変化させず、α成分のみ0で
塗りつぶしたいのですが、何か上手い方法って無いでしょうか?
現在は、もう1つサーフェスを用意して、画面をクリアして、
そこに元画像をコピーしてます。
0675名前は開発中のものです。
04/10/18 18:06:14ID:KdUfN5eY0676674
04/10/18 20:00:44ID:VGfCVvCxD3DRS_COLORWRITEENABLE_ALPHAビットをリセットして
サーフェスに矩形を描画することにより、α成分を
0で塗りつぶせました。ありがとうございました。
0677名前は開発中のものです。
04/11/14 14:08:22ID:v4FEHN7v注視点のうまい処理法がワカラナイ
0678名前は開発中のものです。
04/11/14 16:56:35ID:EHnZA0OT0679名前は開発中のものです。
04/11/14 16:56:54ID:SapNnW4yボールの半径(r)と移動量(x,z)から
マトリックを作りたいのですが分かりません。
誰か教えてくれませんか?
0680名前は開発中のものです。
04/11/14 18:39:23ID:3PVkE8mlD3DXMATRIX matWorld,matTrans,matRot,matScale;
D3DXMatrixIdentity( &matWorld );
D3DXVECTOR3 vec3Trans( x, y, 0.0f );
D3DXVECTOR3 vec3Scale( 1.0f,1.0f,1.0f );
D3DXVECTOR3 vec3Rot( 0.0f, 0.0f, 0.0f );
D3DXMatrixScaling( &matScale,vec3Scale.x,vec3Scale.y,vec3Scale.z );
D3DXMatrixRotationYawPitchRoll( &matRot,vec3Rot.y,vec3Rot.x,vec3Rot.z );
D3DXMatrixTranslation( &matTrans,vec3Trans.x,vec3Trans.y,vec3Trans.x );
matWorld = matScale * matRot * matTrans;
ボールの半径ってのがわかんね
0681名前は開発中のものです。
04/11/14 18:57:02ID:6Qcx2TGz0682名前は開発中のものです。
04/11/14 19:22:39ID:X5jIu0Wl0683名前は開発中のものです。
04/11/14 20:56:24ID:hCc7YYs/半径から円周を出して、それと移動量から回転を出すのでは?
0684679
04/11/14 22:11:40ID:SapNnW4y>683
はい。
>680
ワールド上での各軸の回転量は分かったのですが、
D3DXMatrixRotationYawPitchRollなどの
オイラー角による回転処理では上手く姿勢を制御できなくて
困っています。
例
X軸90度、Z軸90度の順で計算した場合。
X軸90度がワールド上でみるとY軸90度回転になってしまう。
0685名前は開発中のものです。
04/11/14 22:23:48ID:hCc7YYs/まずは軸そのものを回転させることを覚えること。
0686679
04/11/15 08:14:16ID:9iJoBOqnここのHPが参考になりました。
http://hp.vector.co.jp/authors/VA013430/
さらに質問なのですが、ボールが地面(高さ0のXZ平面)に接している、
座標をボールの座標系(ローカル座標系)で知りたいのです。
ワールド座標系なら、ボール位置(ballX,ballY,ballZ)と地面なので
ballX,0,ballZと簡単なのですが、ローカル座標での位置がわからない。
平行移動とスケールは掛けていない、ボールの回転のみの
D3DXMATRIX ballMatとballの位置(ballX,ballY,ballZ)、ballY=ボールの半径
から求めるにはどうしたら良いでしょうか?
0687名前は開発中のものです。
04/11/18 04:46:14ID:O/aA7zi9ワールドにするときと逆にかけてやれば求まるんじゃないの?
つーことじゃなくて?
0688名前は開発中のものです。
04/11/19 00:43:00ID:qqm541c3ベクトルV = (ボールと地面の接点) - (ボールの中心位置)
行列M = ballMatの移動成分を消した行列
行列MI = Mの逆行列
接点のローカルでの位置へのベクトルをVLとして
(ベクトルV_tmpは作業用)
V_tmp = MI * V
VL = 正規化(V_tmp) * 半径
これででるんじゃないのか?
0689名前は開発中のものです。
04/11/19 02:32:29ID:GWqqf4sG単に逆行列掛ければいいじゃん。
0690名前は開発中のものです。
04/11/20 04:13:49ID:Zf2UOU2ND3DXCreateFontで定義した後、
DrawTextを用いれば良いのでしょうか?
0691690
04/11/20 04:14:26ID:Zf2UOU2Nスルーしてください
0692名前は開発中のものです。
05/01/04 20:28:36ID:be4GSkLDコマ送りどころじゃない。3秒に一回画面が変わるくらい。
ゲフォ2MX+Pen4 1.5Ghzなんだけどグラボが糞すぎるのかなぁ?
0693名前は開発中のものです。
05/01/04 20:30:58ID:TqdwmBQ/0694名前は開発中のものです。
05/01/04 20:36:36ID:02I9yCUU0695名前は開発中のものです。
05/01/04 20:44:47ID:r9h8bhSx0696名前は開発中のものです。
05/01/07 23:35:55ID:MsUaYNJpノート対応も考えてると単純に最新機能バリバリってわけにもいかないんだよ。
同人のオナニーゲームならいいんだろうけどね。
0697名前は開発中のものです。
05/01/08 00:43:13ID:N6OoXonVだったらPixel Shaderは使わない。(または使う版と使わない版を作る)
Vertex Shaderはsoftware vertex processingにする。
0698名前は開発中のものです。
05/01/08 01:07:28ID:2Cq+r6HXそんくらいやってほしい。
0699名前は開発中のものです。
05/03/13 15:08:48ID:idmmnJMg2MXでDX9のサンプル動かそうという考えがわからん
0700名前は開発中のものです。
05/03/13 17:11:07ID:RmZEegr/そんな感じが平均ってことだよ。
くそ高いグラボ買う余裕あったら、CS買い足して、
PCでは動く範囲のゲームを買うのが普通だと思う。
0701名前は開発中のものです。
05/03/13 18:38:56ID:ttgzE6C1曲がりなりにもDirectXSDK入れて開発側に回ろうとしている人間が
ヘボいビデオカード使ってギャーギャー騒ぐことに何の価値があるのか。
金の問題だけなら、たったの数千円でシェーダ3.0環境すら手に入るし
そもそも開発環境とCS(コンシューマゲームの略か?)との因果関係が全く繋がらない。
一言で言えば>>700頭大丈夫?
0702名前は開発中のものです。
05/03/13 19:54:21ID:RmZEegr/なんでそうなんの?
オマエみたいなやつがいるから、
カジュアルプログラマーが減るんだよ。
0703名前は開発中のものです。
05/03/13 19:59:43ID:Nw916qbK0704名前は開発中のものです。
05/03/13 20:08:00ID:RmZEegr/0705名前は開発中のものです。
2005/03/29(火) 15:48:21ID:h1LjyVByちらほらと現れているんだが・・・
君達も「セクシーオプス部」に入らないか?
ttp://fps.last-heaven.com/cgi-bin/bbs3/bbs.cgi
さぁ、時計の針は元に戻すことはできない。だが自らの手で進めることはできるぞ。
ついでにage
0706名前は開発中のものです。
2005/04/02(土) 17:37:58ID:z0euE+RD0707名前は開発中のものです。
2005/04/15(金) 20:47:26ID:VDAcC9BQ低付加ブラー。
0708名前は開発中のものです。
2005/04/15(金) 23:07:23ID:K/7mzgKaこんな風にテクスチャを貼り付けるにはどうしたらいいの?
0709名前は開発中のものです。
2005/04/15(金) 23:40:10ID:f8cgGetvテクスチャ?
ただの平行投影でこうなると思うよ。
0710名前は開発中のものです。
2005/04/15(金) 23:57:02ID:K/7mzgKaTHX。悩んでみるよ
0711名前は開発中のものです。
2005/04/20(水) 02:15:22ID:uTPKZKx5rhwを指定して描画するのとスプライトでの表示どちらが処理早いですか?
スプライトで描画するなら回転とかが楽でいいと思ってるんですが
どうでしょうか?
0712名前は開発中のものです。
2005/04/20(水) 03:24:51ID:ZaV+y+yTやってみたほうが早いんじゃ・・・?
0713名前は開発中のものです。
2005/04/20(水) 17:13:50ID:nqjFf9LlスプライトがID3DXSpriteのことを言ってるならアレは遅い。
あれはDraw1回につきDrawPrimitiveを1度ずつ呼んでいるはず。
ヘルプを見れば分かるんだが実はこんだけサイクル数がかかる。
DrawIndexedPrimitive 1200 - 1400
DrawPrimitive 1050 - 1150
こいつらを呼ぶ回数を減らせば減らすほど(普通は)速くなる。
あとD3DUSAGE_DYNAMICなVertexBufferも良いのだが
頂点バッファを用意したりロックしたり、デバイス消失のイベントをハンドルしなければならず、手間がかかる。
しかもSetStreamSourceだとかSetIndicesとかにまた数千サイクルかかる。
システムメモリに頂点溜め込んで一気にDrawIndexedPrimitiveUPが高速だし楽。
あとはこの辺を参考。
http://www.twin-tail.jp/contents/vsdx8/d3d/020/index.htm
0714名前は開発中のものです。
2005/04/21(木) 01:49:14ID:3svv31Myいつの時代の組み方ですか?
シェーダ使ったりできないし、汎用性とかまったくないじゃん。
あくまで2D専用って感じ?
それにそんなにまとめてホントに早いのかぁ?
うさんくせぇなぁ。
Zバッファの前から描画とか絡んでくると単純にまとめりゃいいってモンでもねぇんじゃねぇか?
(それともそれってDirectXが勝手に手前から描画してくれるとかあるの?)
0715名前は開発中のものです。
2005/04/21(木) 01:52:56ID:DC0sESiuNVIDIAのGDCのスライドとか見れ。
0716名前は開発中のものです。
2005/04/21(木) 02:05:14ID:3svv31Myてゆうか性能の限界ぎりぎりまで出すわけじゃないんだから
最近は動けばいいんだよ。
軽い必要はまったくないよ。
快適な環境でやりたきゃいいボード買え。
ノートPCでやってる客にも売りたきゃそもそも3Dゲーム作るな。
だいたいそんな傾向なんだから、俺が重視するのは汎用性オンリー。
DrawPrimitiveの回数をプログラム側で減らすなんて無駄。
やるならデザイナにモデルまとめさせて終わり。
あと、俺はフィルレート(前から描画)を重視したほうがよっぽどはやくなると思うけどな。
その辺との速度の比較はGDCのスライドじゃやってないでしょ?(やってる?)
0717名前は開発中のものです。
2005/04/21(木) 02:06:37ID:3TCkNM2r使えるが。
0718名前は開発中のものです。
2005/04/21(木) 02:14:26ID:3svv31MyDrawPrimitive一発でシェーダ複数使用ってできたの?
なんかプログラム複雑じゃねぇ?
てっきり
@シェーダセット!(行列とかその他もろもろ設定)
ADrawPrimitive
Bシェーダ解除!
だと思ってたけど。
まとめても一括でいけるもんなんだ・・・。
そらしらんかった。
でも、その場合ってまとめた分の頂点情報もどっからどこまでがどのシェーダでって情報も
いれなきゃいけないんだよね。位置座標、UV、バンプ、法線、色、とかどう設定すんだべか。
0719名前は開発中のものです。
2005/04/21(木) 02:27:25ID:3TCkNM2r同時にシェーダを複数使用することは出来ないよ。
ある程度の種類をまとめてDrawPrimitiveとかで纏めて描画するというだけ。
例えば敵の弾が200個だとか300個だとか出てきたら
DrawPrimitiveを1つずつ呼び出してたら塵も積もれば何とやらって奴ですよ。
普通スプライトのシェーダなんかどの弾もテクスチャ貼り付けるだけなんだから切り替える必要もないし。
こういうのは適所適材だと思うんだがな。
確かにZソートとかは効率が良いのだが…
スプライトの場合は普通テクスチャのαブレンドの関係で
順序よく描画しないと見た目が変になるからねぇ。
0720名前は開発中のものです。
2005/04/21(木) 03:21:53ID:NlkBwh5B0721名前は開発中のものです。
2005/04/21(木) 04:09:22ID:kfjpiSjxGPUとCPUの性能差がある環境ならDrawPrimitiveのくそっぷりが良くわかるよ。
0722名前は開発中のものです。
2005/04/21(木) 04:24:33ID:eTngQ0SA>>711
なんか最近こういう誤解みたいなのが多いけど、D3DXってのは
Direct3Dを使って実装された上位ライブラリで、そこで提供されている
スプライトとかの機能は全部普通のDirect3Dの機能を使って実装
されているから、ID3DXSpriteとかも中でDrawPrimitiveを呼んでいるだけだよ。
だから、DrawPrimitiveを適切に使っていれば、ID3DXSpriteより
遅くなることは絶対に無い。
0723名前は開発中のものです。
2005/04/21(木) 05:28:29ID:ZLrcnKcwFlushで一気に描画みたいな感じになってるけど、>>713の様な手法に変えたのかな?
0724名前は開発中のものです。
2005/04/21(木) 13:47:16ID:DC0sESiu0725名前は開発中のものです。
2005/04/21(木) 19:17:22ID:7TDOP59j0726名前は開発中のものです。
2005/04/21(木) 19:54:12ID:ZgTyqCoE0727名前は開発中のものです。
2005/04/22(金) 01:08:50ID:YqbwOmiM0728名前は開発中のものです。
2005/04/22(金) 02:12:51ID:ARah4tGODQNという意味の馬鹿なら困るわけで
0729名前は開発中のものです。
2005/04/22(金) 18:40:47ID:8ED9pWH4OSが最適化されたら、シェーダなんてのはなくなるよ。
みんな思ってるだろうけど、いまのシェーダは過渡的だし、
はっきりいってかなり不格好な実装だからね。
0730名前は開発中のものです。
2005/04/22(金) 18:42:07ID:8ED9pWH4厳密にはメモリ空間か?
0731名前は開発中のものです。
2005/04/22(金) 19:06:06ID:O5EH+LRu0732名前は開発中のものです。
2005/04/22(金) 19:24:53ID:UV35yiVz0733名前は開発中のものです。
2005/04/22(金) 23:59:46ID:87eHM9Ozこのスレに隔離できればなお良し。他に漏れて無駄に荒れるのがワーストケース
0734名前は開発中のものです。
2005/04/23(土) 00:28:22ID:ntQ8pk/i■ このスレッドは過去ログ倉庫に格納されています