ソフトウェア シェーダー
ソフトウェア シェーダーは、基になるハードウェアをサポートせずにシェーダーを開発できるように実装されています。 これらは、完全な機能セットをサポートしています。 これらはソフトウェアに実装されているため、最適なパフォーマンスは得られません。
バージョン | 機能セット | 要件 |
---|---|---|
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#) があります。 |
関連トピック