次の方法で共有


ソフトウェア シェーダー

ソフトウェア シェーダーは、基になるハードウェアをサポートせずにシェーダーを開発できるように実装されています。 これらは、完全な機能セットをサポートしています。 これらはソフトウェアに実装されているため、最適なパフォーマンスは得られません。

バージョン 機能セット 要件
vs_2_sw vs_2_xのすべての機能 ソフトウェア頂点処理と参照デバイスでのみサポートされます。
vs_3_sw vs_3_0のすべての機能 ソフトウェア頂点処理と参照デバイスでのみサポートされます。
ps_2_sw ps_2_xのすべての機能 参照デバイスでのみサポートされます。
ps_3_sw ps_3_0のすべての機能 参照デバイスでのみサポートされます。

 

一部の検証は、ソフトウェア シェーダーで緩和されます。 これは、デバッグとプロトタイプ作成の目的で役立ちます。 次の検証は緩和されています。(他のすべての検証は同じままです)

検証タイプ リラクゼーション
命令数: これは、vs_2_sw、vs_3_sw、ps_2_sw、ps_3_swのためにリラックスしています。 無制限の手順を使用できます。
Float 定数数: これは、vs_2_sw、vs_3_sw、ps_2_sw、ps_3_swのためにリラックスしています。 最大 8192 個の定数を使用できます。
整数定数数: これは、vs_2_sw、vs_3_sw、ps_2_sw、ps_3_swのためにリラックスしています。 最大 2048 個の定数を使用できます。
ブール定数数: これは、vs_2_sw、vs_3_sw、ps_2_sw、ps_3_swのためにリラックスしています。 最大 2048 個の定数を使用できます。
依存読み取りの深さ: これはps_2_swのためにリラックスしています。 vs_3_0やps_3_0と同様に、無制限の依存読み取りが許可されます。
フロー制御命令とラベルの数: これはvs_2_swのためにリラックスしています。 無制限のフロー制御命令と最大 2048 ラベルを使用できます。
ループ数/開始/ステップ: これらは、vs_2_sw、vs_3_sw、ps_2_sw、ps_3_swのためにリラックスしています。 rep 命令とループ命令の反復開始ステップとインターエーション ステップ サイズは、32 ビット符号付きインターガーです。 インターエーションカウントは最大MAX_INT/64まで可能です。
読み取りポートの制限: vs_2_sw、vs_3_sw、ps_2_sw、ps_3_swには読み取りポートの制限はありません。
補間器の数: vs_3_swには 16 個の レジスタ - vs_3_0 (o#)、ps_3_swには 10 個のps_3_0 レジスタ (v#) があります。

 

Asm シェーダー リファレンス