|
2001/07/27 Text by 奥谷海人 DirectX Graphics
DirectX 8.0で改良されたDirectX Graphicsの最大の利点といえるのが,プログラマブル・バーテックス・シェイダー(Programmable Vertex Shader)と,プログラマブル・ピクセル・シェイダー(Programmable Pixel Shader)という新しいタイプの機能である。これらは,プログラマやアーティストが特殊効果を製作するうえで,通常の型に捕らわれない独自性の高い表現を可能にしている。
実際にゲームに反映されるバーテックス・シェイダーの効果の一つに,マトリックス・パレット・スキニング(Matrix Palette Skinning)がある。バーテックス・シェイダーは,それぞれの頂点データにx-,y-,z-軸の数値を与えることができるため,その数値を自在に変換することで,新しいデータ(ポリゴン)を表示することなくオブジェクトを変形させることができるも。1つの関節点につき,最大で32個までの"骨"を与えることができるため,3Dモデルの複雑でスムーズな動きを可能にするのだ。
DirectX Graphicsが見せる最新のグラフィック効果 DirectX 8.1では,ピクセル・シェイダーのバージョンがShader 1.4へと移行することになる。マイクロソフトでは,あくまでも「DirectX 9.0に搭載予定のShader 2.0への布石」という位置付けしかしていないが,プログレッシブメッシュをサポートするなど,いくつかの点で大きな変更が見られる。例えば,テクスチャステージが現行の4ステージから6ステージ(12フェッチ)へとアップされている。今までのバンプマッピングではすでに4ステージがフルに使用されていたから,さらに二つ分のゆとりができることになった。これで,環境マッピングのような効果をバンプマッピングに組み合わせることも可能になっている。また,照明のあたるテクスチャの一部を限定的に明るくするスペキュラー・ハイライティング(Specular Highlighting)という効果を応用し,同じテクスチャーでも違うパターンで見せるというようなトリックにも使えるはずだ。 さらに,今後期待できるのがNパッチ(Normal Patches)という技法である。頂点データとその接線からベジエ曲線を演算し,それを自動的に三角体に換算する。これにより,1つのポリゴンでも複数のポリゴンに見せることができるのだ。Nパッチは,バンドウィズにストレスを与えることもなく,これまでのデータにも応用できるという利点もあり,3Dモデリングが視覚的に飛躍する。
|
||||||||||||