MRTについて

MRTってなんぞ?ってな拍手を頂いたので

説明です

 

例えば、この画像の左側の上から二枚目、三枚目を作るのには

846.jpg

頂点シェーダー→ピクセルシェーダー=色を二回(表示されている物を含めて3回)

レンダリングするのですが

 

MRTってのを使うと、こんな感じで

847.jpg

一回の頂点変換で色を4っつまで出すことが出来るんですよぉ

頂点シェーダー→ピクセルシェーダー=色1,色2、色3、色4ってな感じです

 

つまり、ポスビでは2回分頂点変換コストが浮くって事ですな

 

しかしながら、XNAやDirectX9ではデメリットがあって

ハードウェアレベルでのアンチエイリアスが効かないってなデメリットがあります

これが理由で実装を躊躇しているところ

 

デュアルクォータニオン+テクスチャスキニングを実装しているので

減らせる分は減らしたいんですけどね・・・

 

ちなみにDirectX10世代では

アンチエイリアスが効くばかりか、同時に出せる色がDirectX9では4っつまでだったのに対して

8っつまで使えるようになってます

この事から、10以降では遅延レンダリングが標準化ってな事なのかなって思ってますよ

 

まぁMRTの事は自分にアンチエイリアス技術が無いのでほっといて

異なる骨の大きさでもモーションが流用できるように

ちょいと動き始めましたよ

今はこんな感じで、移動値が邪魔な状態です

848.jpg

コメント

タイトルとURLをコピーしました