XNA を使用した 3D 開発に頭を悩ませようとしていますが、答えが見つからないように見える単純なクエリがあります。
私が正しく理解していれば、頂点を変換するための頂点シェーダーがあります。しかし、CreateRotationY
同じことをしているように見える etc など、Matrix クラス内にさまざまなメソッドもあります。
頂点を変換するには何を使用すればよいですか? 頂点シェーダーまたはマトリックス内のメソッド? 両者に違いはありますか?
頂点シェーダーは GPU で実行されます。あなたが話しているマトリックスは、CPU を使用して RAM 内のオブジェクトを操作するために使用されます。
頂点を変換するには何を使用すればよいですか?
場合によります。
頂点シェーダーはGPU で実行されるため非常に高速です。そのため、驚くべき効果を実行することで、CPU を解放して別のことを実行し、すべての作業負荷を GPU で処理します。GPU は、そのアーキテクチャによって行列とベクトルの操作に正確に集中するように調整されています。
CPUでは、マトリックスを使用すると、計算をGPUに移動するため、計算集約型の操作を行うことができます。しかし、それはすべてアプリケーションが何をしているかに依存するため、測定する必要があります。
一般に、彼らは高速計算のために可能な限りシェーダーを使用することを提案しています。