階層 2
このセクションでは、レベル 2 のサポートについて説明します。
- 機能レベル 11.1 以上のハードウェア。
- 前の階層のすべての機能 (階層 1 の特定の制限事項なし) に加えて、次のような項目での追加機能があります。
- LOD のクランプとマップされた状態のフィードバックのためのシェーダー命令を利用できます。 詳細については、「 HLSL タイル リソースの公開」を参照してください。
- マップされていないタイルからの読み取りでは、形式の欠落していないすべてのコンポーネントでは 0 を返し、欠落しているコンポーネントには既定値を返します。
- マップされていないタイルへの書き込みは、メモリに移動するのは止められますが、最後にはキャッシュに移動する可能性があり、それ以降の同じアドレスへの読み取りは取得されない可能性があります。
- NULL のタイルと NULL でないタイルをまたぐフットプリントを含むテクスチャ フィルタリングでは、NULL タイル上のテクセルの場合に全体的なフィルター処理に 0 が送られます (欠落した形式コンポーネントの既定値と共に)。 一部の初期のハードウェアはこの要件を満たしていないため、いずれかのテクセル (0 以外の重み付き) が NULL タイルにかかる場合、完全なフィルター処理の結果に対して 0 を返します (欠落した形式コンポーネントの既定値と共に)。 その他のハードウェアには、すべての (0 以外の重み付きの) テクセルをフィルター処理に含めるために要件の欠落は許されません。
- NULL テクセルにアクセスすると、テクスチャの読み取りが false を返すように、状態のフィードバックに CheckAccessFullyMapped 操作が行われます。 これは、テクスチャへのアクセスの結果で書き込みがシェーダーでどのようにマスクされるかや、テクスチャ形式に含まれるコンポーネントの数には関係なく行われます (これらの組み合わせによって、テクスチャへのアクセスが必要ないことがわかる場合があります)。
- 標準のタイル形状の場合の配置の制約: すべての次元で 1 つ以上の標準のタイルを塗りつぶすミップマップは、標準のタイルを使用することが保証され、残りは 1 つのユニットとして N 個のタイルにパックされたと見なされます (N はアプリケーションに報告される)。 アプリケーションは、N 個のタイルをタイル プール内の分離された任意の場所にマッピングすることができますが、パックされたタイルのすべてをマッピングするか、すべてをマッピングしないかのいずれかにする必要があります。 ミップ パッキングは、配列スライスごとにパックされたタイルの一意のセットです。
- 最小/最大除去フィルタリングはサポートされます。 最小/最大リダクション フィルタリングの詳細については、「 タイル化されたリソース テクスチャ サンプリング機能」を参照してください。
- ミップマップが標準タイル サイズ未満のタイル リソースは、どのディメンションでも 1 より大きい配列サイズを持つことはできません。
- 重複するマッピングがある場合にタイルにアクセスする方法に関する制限事項については、「重複するマッピングを 使用したタイル アクセスの制限事項」で説明されています。引き続き適用されます。