>「最終的に出てきた(x, y, z, w)のxとyをwで割り、zをzバッファに入れる」
>という処理はシェーダでもいじれない、完全にDirectXが勝手に行う
そうだね、基本的にVertexShaderは同次座標を返すもんらしいので。
xyzwのwの概念は難しい、座標(4,4,4,2)と座標(2,2,2,1)は
3次元の世界では同じ位置になるらしい。よくわからんが。

ところで、GPUにはサーフェス⇔サーフェイスまたはテクスチャ⇔テクスチャの
コピーって機能はないのかな?これがあればやGPUだけでやれることの幅が広がるのだが。