トップページgamedev
1001コメント302KB

DirectX総合スレ (Part8)

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2008/03/12(水) 16:15:18ID:Jo1vXsg5
言語はC++
他の言語使ってる奴はいますぐ消えろ

■過去スレ

DirectX総合スレ
Part 7: http://pc11.2ch.net/test/read.cgi/gamedev/1179516297/
Part 6: http://pc11.2ch.net/test/read.cgi/gamedev/1163691532/
Part 5: http://pc8.2ch.net/test/read.cgi/gamedev/1157727402/
Part 4: http://pc8.2ch.net/test/read.cgi/gamedev/1132937938/
Part 3: http://pc5.2ch.net/test/read.cgi/gamedev/1105333209/
Part 2: http://pc5.2ch.net/test/read.cgi/gamedev/1095863432/
Part 1: http://pc5.2ch.net/test/read.cgi/gamedev/1083728025/
0382名前は開発中のものです。2008/11/08(土) 11:36:40ID:gm6HmN0E
そう思うならずっとDirectX9使ってればいいじゃない
0383名前は開発中のものです。2008/11/08(土) 11:39:37ID:wbJDymMe
そーいや有志が本気出してXPでDirect3D10動かそうとかいう
プロジェクトあったけど、結局コケたなアレ
0384名前は開発中のものです。2008/11/08(土) 11:58:01ID:gm6HmN0E
XPでDirect3D10が動くようにもできないことない でもそれは既にVistaだ、ってMSの中の人が言ってたよ
まあドライバモデルが違うしXPで肥大化したドライバの解消のためでもあるので当たり前のことなんだが
0385名前は開発中のものです。2008/11/08(土) 12:00:48ID:HcOXFTt5
>>381
WindowsXPでDirectX11は動かない。
DirectX11はWindowsVista以降のOSのみ。

いい加減DirectX9なんてごった煮状態のAPIはさっさと捨てて
最低動作環境にDirectX10って書きたいわ。
0386名前は開発中のものです。2008/11/08(土) 12:08:23ID:6s0iEHLb
DirectX11 は XP でも動くようにすると言ってたぞ。
ソースはどっかのIT関連ニュース。
0387名前は開発中のものです。2008/11/08(土) 12:21:13ID:wbJDymMe
言ってねーよw
Direct3D11がVistaでも動く、の間違いじゃねーの
0388名前は開発中のものです。2008/11/08(土) 12:34:30ID:HcOXFTt5
シアトルで開催されたGamefest 2008デベロッパーカンファレンスにて、Microsoftが公式にDirectX 11をアナウンスしました。Windows Vistaと「将来のバージョンのWindows」のみがサポート対象であるとのこと。

Satchell: DirectX 11 Won't Have 'DX9/10 Discontinuity' (GamaSutra)
0389名前は開発中のものです。2008/11/08(土) 12:44:35ID:1CM0alvM
この辺でもみたんじゃね?
ttp://qo.sakuratan.com/2008/10/30/directx11%E3%81%AF%E3%80%81directx9%E3%81%AE%E3%82%B0%E3%83%A9%E3%83%9C%E4%B8%8A%E3%81%A7%E3%82%82%E5%8B%95%E3%81%8F%E3%82%88%E3%81%86%E3%81%AB%E3%81%AA%E3%82%8B%E3%82%89%E3%81%97%E3%81%84%E3%80%82/

10で新しく出来ることってほとんどないと思うし(ジオメトリシェーダー重いし)暫くは9でいいや
様々な環境への対応が面倒って言うなら「GeForce8シリーズ以上必須」とかにしちゃえば問題なさそうだし
0390名前は開発中のものです。2008/11/08(土) 12:49:32ID:HcOXFTt5
10に触ると9なんてバカらしくてやる気なくすくらい変わってるぞ・・・。
0391名前は開発中のものです。2008/11/08(土) 12:59:53ID:gm6HmN0E
Direct3D10level9の話と勘違いしてるんじゃないかな
あれもWDDMにおけるDirect3D9のドライバで動くってことなんでXPとは無縁だけども
0392名前は開発中のものです。2008/11/08(土) 15:02:55ID:cVyljR6E
>>390
シェーダープログラムで動かしてるなら
そんなには違いなし
0393名前は開発中のものです。2008/11/08(土) 15:40:26ID:HcOXFTt5
浮動小数点のフィルタリングに半透明の問題とか、
ジオメトリインスタンスの扱いの違いとか禿げそうになるじゃん・・・

CAPS見て分岐コード書くのもすげー面倒くせーしな。
0394名前は開発中のものです。2008/11/08(土) 16:21:22ID:1CM0alvM
だからGeForce8シリーズ以上必須とかにしちゃえばDirectX9でもCaps見る機会なんて殆どない
一定以上の機能は満たしてる保証があるからな。
確かに10触った後9みるとちょっと読みにくいけどVista専用にするくらいなら我慢する

半透明の問題ってなに?
0395名前は開発中のものです。2008/11/08(土) 16:29:03ID:lbhWq0kf
アルファブレンドを半透明とか言う奴は一つの例外もなく能無し。
0396名前は開発中のものです。2008/11/08(土) 17:03:43ID:gQH1f2MI
capsは最低動作環境未満を弾くためだけに見てる
0397名前は開発中のものです。2008/11/08(土) 17:38:20ID:cVyljR6E
アルファブレンドなんてZソートかけて
シェーダーでfloat4のw操作するだけのことがそんなに面倒?
0398名前は開発中のものです。2008/11/08(土) 18:35:19ID:HcOXFTt5
そっちじゃなく、DirectX9世代だとfp32のバッファに対してアルファブレンド系の
処理が一切出来ないのがうっとうしいって話。
アルファテストすら出来ないし。
0399名前は開発中のものです。2008/11/08(土) 19:36:30ID:Fn1AL9YH
>>381
MSが終わったらOpenGLになるんじゃないの?
0400名前は開発中のものです。2008/11/09(日) 09:22:54ID:5U6T1sG5
X9とX10ってどっちのがコードすっきりしてるの?確かX10ってXファイル関数ないんだよね。
それさえないならVISTA専用でもX10に移行したいんだけど。
0401名前は開発中のものです。2008/11/09(日) 10:03:36ID:owmxIUlw
すっきりするかどうかは書く人間次第。
お前がこれから書く物を、過去形で質問されても答えられるわけがない。
存在しないからすっきりしているといって欲しいのか?
0402名前は開発中のものです。2008/11/09(日) 10:08:20ID:5U6T1sG5
>>401
いや、同じことをするにもたとえばDX9で5行書かねばできなかったことが
DX10では3行でできるようになったりとかそういうのはあるのかなって思っただけだ。
あるいは仕様がすっきりしているかどうか。
0403名前は開発中のものです。2008/11/09(日) 10:19:42ID:xobXoOSG
仕様は10の方がはるかにすっきりしてる。
まぁ半年もしないうちに11が正式リリースされるだろうから
そっちでてから手を出しても遅くはないとおもうけど。
0404名前は開発中のものです。2008/11/09(日) 13:54:45ID:5U6T1sG5
>>403
サンクス。10を眺めつつ気長に11を待つよ。
ところで>>380の中にDX11のドキュメントらしきものがあったんだけどこれは何?
本体は含まれてないんだよね?あるいはテスト11みたいなのがはいってるわけ?
0405名前は開発中のものです。2008/11/09(日) 14:31:26ID:xobXoOSG
>>404
D3DXなしの奴ならサンプル入ってたけど、行列演算やテクスチャ読み込みに
いちいちDirectX10のD3DXつかってるからまぁ大して参考にはならない。
0406名前は開発中のものです。2008/11/09(日) 14:58:06ID:rWSYUx8F
で、DirectX11は、XPで動くのかな?
0407名前は開発中のものです。2008/11/09(日) 15:24:04ID:qqPQ82iM
何このデジャブ
0408名前は開発中のものです。2008/11/09(日) 15:25:13ID:MVq+lkr7
XPで動かないんじゃ論外だよねぇ
0409名前は開発中のものです。2008/11/09(日) 15:41:23ID:qWBGgmRu
当分XPは切り捨てられないからなぁ。
0410名前は開発中のものです。2008/11/09(日) 16:09:01ID:DG7Cxdtj
どうせDirectX9で十分とか言い出すんだから動かなくてもいいだろ
0411名前は開発中のものです。2008/11/09(日) 17:43:07ID:AfYoeUye
XPでもDirectX動かしたかったなぁ
スペックは十分なのにOSの所為で使えないなんて悲しすぎる
0412名前は開発中のものです。2008/11/09(日) 18:17:25ID:xobXoOSG
DirectX9は動くぞ
0413名前は開発中のものです。2008/11/09(日) 18:29:44ID:5U6T1sG5
確かHALO2ってDirectX10ってことになってるけど内部は全部DirectX9だから
実はパッチ当てるだけでXPでも動かせるんだよね。MSが動かせないことにしてるけど。
0414名前は開発中のものです。2008/11/09(日) 19:36:11ID:AfYoeUye
>>412
すまん、「DirectX」と入力しただけで満足しちゃって10を入れるのを忘れていた
MDC4が折角DirectX10対応なのに多少グラがショボい9でやらなくちゃいけないのが残念で・・・
0415名前は開発中のものです。2008/11/10(月) 00:28:53ID:BMRBI7Z0
プログラム板で質問したのですが誘導されたので、スレ汚しかと思いますが
質問させていただきます。
入門書を読んでゲーム作成を学んで行っているのですが、
アニメーションのところで、頂点の変換について読んでいるのですが、そこでは
CPUで頂点座標、法線を計算した後にシェーダーや固定機能パイプラインを使って
残りの描画を行っています。
その理由が、「頂点シェーダだと大規模なフレーム構造をもつモデルが処理できないため」
と書いてあります。
しかし、CPUに付加をなるべくかけたくないので、このあたりも頂点シェーダで行いたいと思っています。
具体的には、
モトの頂点バッファのSUBETENO座標と法線に、それぞれスキニング行列とウェイトをかけると言う作業です。
フレーム数が少なければこの処理も頂点シェーダで出来るとのことですが、具体的な方法などを解説されているサイトなどは無いでしょうか?

まだ初心者なので、とりあえずCPUで処理するように組んだとして、後に頂点シェーダに変更が容易かどうかだけでも教えていただければうれしいです。
0416名前は開発中のものです。2008/11/10(月) 00:37:11ID:902Hpa48
日本語が怪しいがフレーム数=ボーン数?
頂点毎の骨インデックスは普通unsigned charで持つから256本くらい余裕でいけるけどそういうことじゃなくて?

確かに頂点シェーダー2.0までの環境だと定数レジスタが256しかなくて一度に80本弱しか骨の処理が出来ないけど
事前に頂点データを分割して1Drawで使える骨の数単位で分割すりゃいいだけ。
D3DXのXファイル読み込みなら自動でやってくれるし自分でその辺を作っても大して難しいものじゃない。

頂点シェーダー3.0ならfp32x4のテクスチャに骨の行列転送して頂点テクスチャ機能使えばほぼ無制限。
頂点シェーダー4.0ならそもそも定数レジスタが4096あるのでこれもほぼ無制限。

つまりCPUでスキニングをやるのはせいぜいDreictX7か8までだと思われ。
0417名前は開発中のものです。2008/11/10(月) 00:52:16ID:3GMMJuCD
>>415
丁寧な日本語だがSUBETENOってのが強調されててにやけてしまったw
おそらくフレームはボーンのことだろうが、CPUでやると多数の演算をするとき(キャラクタが多いときなど)にはそれこそ処理がやばい。だから頂点シェーダをつかう。
具体的なやり方はソースを一部さらしてみたらやってくれる人がいるかも。

ちなみに、どんなコードかわからんがその部分だけならCPU→頂点シェーダでもすぐ直せるんじゃね?
04184152008/11/10(月) 01:32:34ID:BMRBI7Z0
>>416
>>417
レス有難うございます。そのとおりで、ボーン数のことです。
現在では頂点シェーダでもほとんど気にしないで良いようになっているのですね・・・
Xファイルの構造の理解のためにも読み込みから行っているのですが、
頂点数の取得を→頂点バッファA、Bの作成→A,Bをロックして座標を書き込む→アンロック
そして読み込み、頂点変換のときに
Aのすべての頂点についてスキニング行列とウェイトをかけて変換した座標をBに入れる。
ということをやっています。
0419名前は開発中のものです。2008/11/10(月) 16:14:43ID:s1TXQPvs
DX9cの11月版アップデートが来てるらしいな
0420名前は開発中のものです。2008/11/10(月) 17:22:40ID:ISc4jxje
今描画している画面をプログラマ内部でテクスチャデータにする事は可能なのでしょうか?
シーン切り替えの用のエフェクトに使う予定です
0421名前は開発中のものです。2008/11/10(月) 17:29:20ID:1mSAahml
>>420
SetRenderTarget

プログラマ内部ってどんなんだよwww
0422名前は開発中のものです。2008/11/10(月) 17:31:01ID:ywM7RjEt
レンダリングターゲット
0423名前は開発中のものです。2008/11/10(月) 17:54:07ID:iC1++FN2
今見ている女性を脳内で彼女化する事は可能なのでしょうか?
0424名前は開発中のものです。2008/11/10(月) 18:11:36ID:NJUvb9dE
妄想力次第。
0425名前は開発中のものです。2008/11/10(月) 19:05:11ID:5GqIdVKR
プログラマ内部ってそういうことか
0426名前は開発中のものです。2008/11/10(月) 22:48:21ID:902Hpa48
>>420が何言ってるのかさっぱりわかんねぇ・・・
結局おたくは何がしたいわけ?
0427名前は開発中のものです。2008/11/10(月) 23:11:19ID:Ov9bYzRx
>>426
いや、分からないのあんただけだから…
0428名前は開発中のものです。2008/11/11(火) 01:11:52ID:qQ/tLl0F
そのへんのエフェクトはプレステでよく使ってたよね
0429名前は開発中のものです。2008/11/11(火) 02:22:20ID:uCJfqqEz
HPの数字やらゲージにまでブラーかかっててうざかった
0430名前は開発中のものです。2008/11/11(火) 08:34:25ID:CKBuIOu4
>>426
とりあえずお前さんが考えているようにプログラマ → プログラマブルシェーダー
までは合ってる。あとは自分でよく考えるように。
0431名前は開発中のものです。2008/11/11(火) 21:16:00ID:GnJZ7zFw
ゆとりの考え、休むに似たり。
連中は、ブクブクと肥大化しきった自意識を、優しく満たしてくれる結論しか導けない。
0432名前は開発中のものです。2008/11/11(火) 21:43:20ID:GjVQxuEs
ブクブクと肥大化しきった自意識を、優しく満たしてくれる結論しか導けない」連中をひとくくりにしてゆとりって呼んでるだけってことに気づけよ
きみもゆとりって呼ばれるぞ
0433名前は開発中のものです。2008/11/11(火) 22:06:51ID:L7Dn1wD0
だがこれからの時代はゆとりが作る
0434名前は開発中のものです。2008/11/12(水) 08:29:59ID:U5K86CI6
プログラマブルシェーダー内での描画ターゲット自体の変更なんて出来ないんじゃーね?
0435名前は開発中のものです。2008/11/14(金) 03:04:03ID:s5clZUFB
>>419
DX9まだアップデートしてたのか
最近は10のアップデートばかりで9はカンストしたと思ってたぜ
0436名前は開発中のものです。2008/11/15(土) 11:39:55ID:TsyO2d++
プログラマブルシェーダーをプログラマと略す奴はじめてみたわ
0437名前は開発中のものです。2008/11/15(土) 18:07:34ID:lOlMVMTR
DXUTを巧く使うにはどのようなステップを踏めばいいですか?
ソースをひたすら読むんですか?
どこか解説ページはないですか?
0438名前は開発中のものです。2008/11/15(土) 23:43:19ID:EtW+xZ5p
プログラマといえば普通はROMライターだよなぁ
0439名前は開発中のものです。2008/11/17(月) 16:18:24ID:mB/MQSJg
DirectXってバージョンアップの頻度多すぎてヤダ
メジャーUPは4年に1回、マイナーチェンジは年に1回までにしてほしいですね。
0440名前は開発中のものです。2008/11/17(月) 16:24:16ID:p5mj6MH5
自分が使うSDKを4年に一度更新すればいいだけ。
新しいのを覚えるのが嫌なら付いていく必要はない。
0441名前は開発中のものです。2008/11/17(月) 18:25:10ID:Kbnutf0k
4年に一度…
それだと今回のNov 2008は Oct 2004からの乗り換えか、変わりすぎてて大変だなw
0442名前は開発中のものです。2008/11/17(月) 18:51:56ID:g/D6uHMp
どんだけ更新されてもプロジェクトで使えるSDKは決まってるから関係ない
0443名前は開発中のものです。2008/11/17(月) 22:22:00ID:aUxp2dt7
>>439
新しいのが出たからって古いのが使えなくなるわけじゃないんだぜ?知ってたか?
0444名前は開発中のものです。2008/11/18(火) 09:52:04ID:uLkc1AZ6
>>443
最新の PC で DirectX 1.0 で作られた作品が動く
それがマイクロソフトの恐ろしいところなんですよ
0445名前は開発中のものです。2008/11/18(火) 10:57:07ID:J3UuMFj1
そういえばなんで 9.0c のまま4年間もバージョンアップし続けてるんでしょうか?
9.0d とか 9.1 にしたくない理由が何かあるんでしょうか?
0446名前は開発中のものです。2008/11/18(火) 11:00:48ID:odxGOZ9u
固定機能からシェーダープログラムに移行したことによって
ハードとソフトのいたちごっこが終わったからだよ
0447名前は開発中のものです。2008/11/18(火) 14:37:05ID:q+Tht4vR
アナール〜
あくまでSDK側・開発者サイドの更新であって、
エンドユーザー(プレイヤー)は9.0c以降、DirectX更新しなくてOK?
0448名前は開発中のものです。2008/11/18(火) 15:13:37ID:IYbd9Sfi
>>447
これは大きい問題を持っていて、MSもよく知っている。
9.0cにも種類があって、更新毎のバージョンがある 30種類以上
番号順のdllになっていて、更新毎に増えて、旧い物も保持している。
ユーザーは全部のバージョンを持っていなければならない。
アプリ開発した時に、11.dllを使ったとする。
ユーザーは11.dllを持ってなければ、エラーになる。
別のアプリは12.dllを要求するかもしれない。
従って、ユーザーは全部と最新のdllを持っている必要がある。
このdllを単品配布できればよいのだが、MSの許可が必要になる。
時々、アプリ開発者が、「年月のDirectXランタイム」が必要と書いてあるのがそれ
0449名前は開発中のものです。2008/11/18(火) 16:46:30ID:zH0Zu7g/
run endとかってのなんだ?
0450名前は開発中のものです。2008/11/18(火) 16:50:22ID:KSbQYvOO
要するに、使用したSDKについてくる、再配布可能パッケージを再配布すればいいんだよな?
0451名前は開発中のものです。2008/11/18(火) 17:36:01ID:D/OQQiDt
>>444
Managed DirectXは即死したがな
0452名前は開発中のものです。2008/11/19(水) 00:41:27ID:U55fYg17
>>444
たしかにWinGゲーでもDirectX1.0ゲーでもMSの推奨する組み方してたお行儀のよいソフトは今でも動く。
ところが実際はWin9x系前提で発売されていたDirectXゲーの多くがWinNT系で動かなくなったりした。
原因は色々だが、ひどいものだとサウンド周りの処理がSoundBlaster16依存してるとか、Win9x系で
見逃してもらっていたメモリアクセス絡みのバグがWinNT系で表面化したとか。(サーフェスロックし忘れ)
一番多いのがファイル入出力絡みのコードがFAT32に依存していてNTFSなシステムで動かないやつ
0453名前は開発中のものです。2008/11/19(水) 04:38:26ID:OtJGUXTD
Windowsのバージョンアップで動かなくなるソフトの大多数はそんなもんだろう。
0454名前は開発中のものです。2008/11/19(水) 06:42:12ID:atHBMZoj
ハード依存処理してるPCゲームは糞
0455名前は開発中のものです。2008/11/19(水) 06:49:33ID:6ztnRgTS
というか、ハードごとに最適化かけたルーチン用意してるもんじゃないのか
0456名前は開発中のものです。2008/11/19(水) 07:46:22ID:ViCloH61
開発する側にそれしか環境が無いのさ
0457名前は開発中のものです。2008/11/19(水) 09:29:00ID:Y7H+QDiA
アルファテストである程度はしないか?
0458名前は開発中のものです。2008/11/25(火) 01:33:12ID:8fK3fWHo
すいません、モデルを目標に向かせることに関する質問です。

クォータニオンでモデルの向きを管理しており、Slerpを利用して回転させようと思っています。
目標の向きは自分の位置に対する目標の位置を使用するのでベクトルだと思うのですが、
モデルの回転が最短ようにするには、目標のクォータニオンをどのように作ればいいのでしょうか?

それとも、元のクォータニオンから向きのベクトルを求め、外積を軸にして回転させたほうがいいでしょうか?
0459名前は開発中のものです。2008/11/25(火) 08:49:37ID:T6onPkkQ
>>モデルの回転が最短になるようにするには
最短ってどこから?現在の姿勢から?デフォルトの姿勢から?
あとupベクトルはどうでもいいのかによる
0460名前は開発中のものです。2008/11/25(火) 21:36:24ID:8fK3fWHo
すいません、自分でもやりたいことが整理できてなかったぽいです。最短の回転ではない気がします。

ワールド座標軸ではなくモデルに対してピッチ、ヨー、ロール回転します。(これは実装でできているので問題ないです。)
フライトシミュレーターをイメージしているので、ロールはせず、ピッチとヨーのみで目標の向きまで持って行きます。
目標の向きはわかっているので、ベクトルからクォータニオンを生成する必要があると思います。
なんだか自分で言ってて分けがわからなくなってきた。

どうもクォータニオン周りの制御がわかっていないので、他にもやりたいことがあるのですがそのたびに質問するわけにも行かないですね。
(向きを変えずにupベクトルを可能な限りワールド座標のどれかの軸に近づくように回転させる、など)
何か参考サイトがあればうれしいのですが・・・
0461名前は開発中のものです。2008/11/26(水) 01:12:15ID:KSRTsz+W
フライトシミュレータをイメージしているのにロールしないってのが分からない。
飛行機が一番得意な動きはローリングだと思うけど。
0462名前は開発中のものです。2008/11/26(水) 01:49:04ID:yNQxm2um
あーあぁ、またエスパーの俺の出番だ。
ミサイルの誘導だろ?
いろいろやり方はあるだろうけど「比例航法」でぐぐってみれば?
0463名前は開発中のものです。2008/11/26(水) 07:58:09ID:DDkykNTl
てーかミサイルの誘導ならクォータニオンなくてもベクトルだけでできんだろ。
飛行機の制御でロールがないなんてありえないしから違うんだろうし。
0464名前は開発中のものです。2008/11/27(木) 18:03:43ID:6vE621eW
プログラマ版で質問したら別の話題で盛り上がっていてスルーされてしまいました....

Direct3D9 で、バックバッファを320x240でつくって、
スクリーンのサイズを640x480にしたのですが、
無理矢理拡大しているせいで画面全体がぼやけてしまいます。
IDirect3DDevice9::SetSamplerState で D3DSAMP_MAGFILTER を渡す方法は、
テクスチャ->バックバッファ のときのフィルタ設定ですよね?
バックバッファ->スクリーンでのフィルタはどこで設定すればよいでしょうか?
補完しないように設定したいのですが。。。
それとも、レンダーターゲットで生成したテクスチャに描画してから拡大するしかありませんか?
0465名前は開発中のものです。2008/11/27(木) 18:16:31ID:zVQcu/j2
>>464
バックバッファ>フロントバッファの補間方法は指定できない。
0466名前は開発中のものです。2008/11/30(日) 11:27:51ID:OyLB96GR
質問です。
ポストプロセスシェーダーに関して、

レンダーターゲットのサイズが大きいほど、ピクセルシェーダが処理するピクセルが増えるので
結果、負荷が増える、という解釈で合ってますか?

それに対して、ピクセルシェーダでフェッチするテクスチャのサイズの大小による負荷の違いはあるのでしょうか?

texture Tex;
sampler Samp = sampler_state{//略

tex2D(Samp, IN.tex);

↑Texに渡すテクスチャのサイズが256x256であろうが1024x1024であろうが
レンダーターゲットのサイズが同じならばフェッチされる回数は変わらない(フェッチされるテクスチャ座標は変わりますが)ので
ピクセルシェーダの負荷は変わらないと考えているのですが、これは合っているのでしょうか?
変わるのはメモリ使用量とサイズの違いによる解像度だけですか?
0467名前は開発中のものです。2008/11/30(日) 11:39:46ID:Z547nq7Z
テクスチャが大きくなるほど帯域を圧迫するので結果として速度が落ちる。

レンダリングターゲットを大きくするとピクセルシェーダーの負荷も増えるが
テクスチャと同じ理由で帯域を圧迫するから急激に速度が落ちやすい。
0468名前は開発中のものです。2008/11/30(日) 11:42:21ID:KLYmFB56
ところでuvの値を5とか6とか10とか20とか思いっきり大きい値にすると
動作困難なほど激重にならない?
0469名前は開発中のものです。2008/11/30(日) 11:50:10ID:Z547nq7Z
ならん。
WRAPで2の累乗の大きさなら&演算1つで求まる計算だぞ。
0470名前は開発中のものです。2008/11/30(日) 13:39:08ID:OyLB96GR
>>467
ありがとうございます。
そうだったんですか。どこにもない情報なのでためになります。

>>468
自分もそんな風に感じたことがあります。
別の要因かな・・・。
0471名前は開発中のものです。2008/11/30(日) 13:50:26ID:OyLB96GR
そうか、テクスチャのサイズが負荷に無関係なら
わざわざミップマップでテクスチャの解像度を切り替える必要ないですもんね。

ミップマップって射影後のzを見てサンプリングされるんでしたっけ?z/w?
0472名前は開発中のものです。2008/11/30(日) 13:56:14ID:OyLB96GR
というか、サンプリングするミップレベルはどうやって決定されるんだろ・・・。
0473名前は開発中のものです。2008/11/30(日) 14:26:10ID:Z547nq7Z
>>472
隣接するピクセルのテクセル座標との勾配
0474名前は開発中のものです。2008/11/30(日) 17:10:56ID:KLYmFB56
>>469
なるって
頼むやってみてくれ
尋常じゃねぇ重さになる
0475名前は開発中のものです。2008/12/04(木) 22:49:43ID:IIMhMqlI
自作のDirect3Dの描画プログラムを右手系から左手系に変えるときには、射影とビュー行列のほかに
D3DXMatrixRotationYawPitchRollRHみたいな回転処理を作る必要があったりするの?
04764752008/12/04(木) 22:50:42ID:IIMhMqlI
違った。左→右に変えるときに、でした。
0477名前は開発中のものです。2008/12/06(土) 05:38:01ID:srRxdFJ7
>>468の話とは全く関係無いかも知れんが
複数サンプリングするときにサンプリング数を変えずに
サンプリング範囲が広がるだけで異様に重くなることがあったんだけど
こういうもんなのかな?
例えば一つのピクセルを描画するために、その描画ピクセルのUVを中心として
別テクスチャから半径rの範囲で6点サンプリングするとき
rの値が大きくなればなるほど重くなるような現象が起きた
アドレッシングモードをWrap、Clamp、Borderどれに変えても同じだった
0478名前は開発中のものです。2008/12/06(土) 07:12:45ID:jieOLbiA
初心者なのですけど、一瞬真っ黒なオブジェクトが出てその後は何も描画されないんですけどどういうミスの可能性が高いでしょうか?
スキンメッシュマルチアニメーションだと思います、tinyのmultiAnimationをいじくってます
0479名前は開発中のものです。2008/12/06(土) 07:21:53ID:C5uhrN+X
光が当たってないとか?
0480名前は開発中のものです。2008/12/06(土) 07:42:16ID:j6JjVozi
mata omaeka
行列は理解してるとかいってただろ?
0481名前は開発中のものです。2008/12/06(土) 07:50:24ID:jieOLbiA
画面が出たとき、ハルモードとかを変える時に一瞬黒い物体が出る、そして消える
ポジションはちゃんと合ってる
デバッグのやり方はよくわからないけど、変数を見てみたら文字化けがパネえ
Xファイルをメモ帳でいじりまくってるのが悪いのかな?
■ このスレッドは過去ログ倉庫に格納されています