MRTってなんぞ?ってな拍手を頂いたので
説明です
例えば、この画像の左側の上から二枚目、三枚目を作るのには
頂点シェーダー→ピクセルシェーダー=色を二回(表示されている物を含めて3回)
レンダリングするのですが
MRTってのを使うと、こんな感じで
一回の頂点変換で色を4っつまで出すことが出来るんですよぉ
頂点シェーダー→ピクセルシェーダー=色1,色2、色3、色4ってな感じです
つまり、ポスビでは2回分頂点変換コストが浮くって事ですな
しかしながら、XNAやDirectX9ではデメリットがあって
ハードウェアレベルでのアンチエイリアスが効かないってなデメリットがあります
これが理由で実装を躊躇しているところ
デュアルクォータニオン+テクスチャスキニングを実装しているので
減らせる分は減らしたいんですけどね・・・
ちなみにDirectX10世代では
アンチエイリアスが効くばかりか、同時に出せる色がDirectX9では4っつまでだったのに対して
8っつまで使えるようになってます
この事から、10以降では遅延レンダリングが標準化ってな事なのかなって思ってますよ
まぁMRTの事は自分にアンチエイリアス技術が無いのでほっといて
異なる骨の大きさでもモーションが流用できるように
ちょいと動き始めましたよ
今はこんな感じで、移動値が邪魔な状態です
コメント