トップページ > 記事閲覧
キューブマップのフィルタリングの機種依存
名前:gufo 日時: 2016/05/28 20:39

いつもお世話になっています。 キューブマップのフィルタリングの挙動について機種依存で違いがあることに気付きましたので報告させていただきます。 比較用のスクリーンショットが次のURLです。 h ttp://i.imgur.com/3RgAzX1.png 検証用プログラムは球状のモデルを描画し、法線方向のキューブマップの色を出力するというシンプルなものです。 キューブマップテクスチャはミップマップ付きで、変化がわかりやすいように低解像度のミップマップからサンプリングしています。 フィルタリング設定はDX_DRAWMODE_ANISOTROPIC、DirectXのバージョンは9EXです。 Geforce機ではキューブマップの隣接面間でフィルタリングが行われていないため、面の境目が見えてしまっています。 キューブマップをIBL用に使いたいので、常にIntel機のような出力になってほしいのですが もしDXライブラリの変更で挙動を統一できるなら修正をお願いしたいです。
メンテ

Page: 1 |

Re: キューブマップのフィルタリングの機種依存 ( No.1 )
名前:管理人 日時:2016/05/29 02:24

全く同じプログラムを同じOSと同じDirectXのバージョンで実行して結果が異なるとなりますと ライブラリの変更ではどうにもならないかもしれませんが、丁度私が使用しているPCに 搭載されているビデオカードも問題の発生しているビデオカードに近い GeForce 660Ti なので、 スクリーンショットの撮影に使用されたプログラムをいただければこちらで Intel HD3000 と 同じ結果になるようにできないか色々試してみようと思いますが如何でしょうか?
メンテ
Re: キューブマップのフィルタリングの機種依存 ( No.2 )
名前:gufo 日時:2016/05/29 17:35

返信ありがとうございます。 h ttp://www1.axfc.net/u/3671863 上のURLにソースコード、実行に必要なファイルを纏めてアップロードしました。 検証よろしくお願いします。
メンテ
Re: キューブマップのフィルタリングの機種依存 ( No.3 )
名前:管理人 日時:2016/05/30 00:51

アップしていただいたファイルを拝見して、色々試してみました 結果は、どうしても面の境目が補間されるようにはできませんでした Direct3D としてはキューブマップの各面は別々の画像としてアクセスするので、 寧ろ Intel HD3000 の方が『別々の画像をひとつの画像として扱う』ような 特別な処理をしているのかもしれません… ( Radeon 系だったらどうなるんだろう… ) お力になれず申し訳ありません m(_ _;m
メンテ
Re: キューブマップのフィルタリングの機種依存 ( No.4 )
名前:gufo(解決) 日時:2016/06/03 17:10

検証ありがとうございます。 Direct3Dの仕様ということなら仕方がないですね。 ひとまずこのままの実装で作ってみて、見た目が悪かったら別の方法を検討してみようと思います。 ご対応ありがとうございました。
メンテ

Page: 1 |

題名
名前
コメント
パスワード (記事メンテ時に使用)

   クッキー保存