ATI RADEON 9800 PRO 上でリアルタイム アクリル氏作(2005/01/26)

お知らせ

ドキュメント類



blog

Direct3D10 blog について

DirectX10/Direct3D10 というと、やっぱり性能があがって機能的にすごい!そんなイメージがあります。 GPU メーカーや Microsoft が宣伝しているように綺麗な見た目のインパクトや、今までと違う画期的なシェーダー、派手なエフェクトなどのデモを想像するかもしれません。

だけどこの blog では、実際に Direct3D10 を使った描画エンジンを開発しながらその過程で調べたことやわかったこと、考えたことなどを日々細々と記録しています。見た目でわかりやすい部分にはあんまり触れてなくて、非常に地味かつ狭い分野の話が多いです。

汎用的な描画やデータの流用を考えたエンジンの設計は非常に地味で地道で、どのようにシェーダーやリソースを管理して、ツールとどう連携するかといった部分に結構時間を取られます。派手なのは地道に積み上げてきた各パーツが一気につながった最後の最後だと思います。

また Direct3D10 の利点は単に「描画性能がすごい」だけでは決してなく、設計上の自由度が上がって柔軟な設計を許容し、開発者の負担を減らす効果もあります。(まだ効果よりは、自由度があがったゆえの設計の苦しみに悩んでいるのが実情なのですが)

blogエントリより

Direct3D11

Direct2D 1

Direct3D 10/10.1

    • Direct3D 10 / 1.01 関連はこちらにまとめました。

Direct3D Mobile

    • WindowsMobile で使用できる Direct3D API です。関連エントリをまとめました。

その他トピック

GPU 一般

ノーマルマップの互換性問題について

CPU/SSE 関連

オリジナルデモプログラム

ss00.jpg

Vista + Direct3D10 用のサンプルプログラムです。 WindowsVista と Direct3D10 対応のビデオカードが必要です。 シェーダーだけで Cube の形状を生成して 描画しています。 頂点バッファもインデックスバッファもなしにモデルデータの表示が可能です。



ss02.jpg

シェーダーに文字列をそのまま渡して描画してみるサンプルです。1byte 頂点形式を使って 1頂点 = 1byte = ASCIIコード です。



シェーダーだけで迷路を作っています。初期画像を元にレンダリングを繰り返すだけで成長します。



作った迷路を自分で探索します。色のついた無数の点が迷路の隅々まで動き回ります。これもシェーダーだけで実現しています。



ジオメトリシェーダーでモデルを ばらばら にします。これもシェーダーのみの処理です。



ss07.jpg

ジオメトリシェーダーを使って、プリミティブタイプ QUADLIST を描画できるようにします。



ss10.jpg

半透明描画で、ピクセル単位でソートを行うシェーダーです。最大重なり回数制限あり。
でも Stencil Routed A-Buffer (PDF) の方がいいです。



ss11.jpg

ピクセル単位の半透明ソートシェーダーは、順番を維持しつつより高度な Blend アルゴリズムを実装できるという利点もあります。偏光板のシミュレートを行ってみました。
でも Stencil Routed A-Buffer (PDF) の方がいいです。



HYPERでんち 3D 系ツール

    • Susie/ViX 用 DDS Plug-in 等、従来このページにあったツールはこちらです。

3D以外

リンク

このページについて

start.txt · 最終更新: 2012/01/08 03:05 by oga
 
特に明示されていない限り、本Wikiの内容は次のライセンスに従います: CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki