D3D12_TILED_RESOURCES_TIER
列挙型メンバー 5
| 名前 | 10進 | 16進 | 説明 |
|---|---|---|---|
| D3D12_TILED_RESOURCES_TIER_NOT_SUPPORTED | 0 | 0x0 | テクスチャを D3D12_TEXTURE_LAYOUT_64KB_UNDEFINED_SWIZZLE レイアウトで作成できないことを示します。 ID3D12Device::CreateReservedResource は使用できません。バッファーに対しても使用できません。 |
| D3D12_TILED_RESOURCES_TIER_1 | 1 | 0x1 | 2D テクスチャを D3D12_TEXTURE_LAYOUT_64KB_UNDEFINED_SWIZZLE レイアウトで作成できることを示します。 一部のリソース形式やプロパティには制限があります。 詳細については、D3D12_TEXTURE_LAYOUT_64KB_UNDEFINED_SWIZZLE を参照してください。 ID3D12Device::CreateReservedResource を使用できます。 NULL マッピングに対する GPU の読み取りまたは書き込みは未定義です。 アプリケーションでは、NULL マッピングが使用されるはずだったすべての箇所に同一のページを繰り返しマップすることで、この制限を回避することが推奨されます。 テクスチャのミップマップレベルのサイズがその形式の標準タイル形状の整数倍である場合、そのレベルは非パックであることが保証されます。 |
| D3D12_TILED_RESOURCES_TIER_2 | 2 | 0x2 | Tier_1 の機能のスーパーセットがサポートされることを示します。次の追加サポートが含まれます。
|
| D3D12_TILED_RESOURCES_TIER_3 | 3 | 0x3 | Tier 2 のスーパーセットがサポートされ、さらに 3D テクスチャ (ボリュームタイル化リソース) がサポートされることを示します。 |
| D3D12_TILED_RESOURCES_TIER_4 | 4 | 0x4 |
公式ドキュメント
タイル化リソースがサポートされるティアレベルを識別します。
解説(Remarks)
この列挙型は D3D12_FEATURE_DATA_D3D12_OPTIONS 構造体で使用されます。
タイル化リソース機能には、次の 3 つの個別の機能がまとめられています。
- 近接するテクセルアドレスが近接するデータ座標を保持する、タイルベースのテクスチャレイアウトオプション。 テクセルのタイルには、リソースの各方向の次元でほぼ同じ数のテクセルが含まれます。 このレイアウトは、D3D12 では D3D12_TEXTURE_LAYOUT_64KB_UNDEFINED_SWIZZLE で表されます。
- リソース用に仮想アドレス空間の領域を予約します。各ページは最初は NULL マップされています。 D3D12 では、この操作は ID3D12Device::CreateReservedResource にカプセル化されており、 D3D12_TEXTURE_LAYOUT_64KB_UNDEFINED_SWIZZLE レイアウトを持つテクスチャに対してのみ機能します。
- ページマッピングを変更し、タイル単位でテクスチャデータを操作する機能。 D3D12 では、これらの操作は ID3D12CommandQueue::UpdateTileMappings、 ID3D12CommandQueue::CopyTileMappings、および ID3D12GraphicsCommandList::CopyTiles です。
- タイルプールはヒープに置き換えられました。 ヒープは D3D11 のタイルプールよりも多くの機能を提供します。
- 予約済みリソースは、複数のヒープのページに同時にマップできます。 NULL 以外のマップされたページがすべて同じヒープから取得されなければならないという D3D11 の制限はありません。
- アプリケーションは GPU 仮想アドレスの機能を把握しておく必要があります。これにより、特定の使用シナリオに対する判定が可能になります。 D3D12_FEATURE_GPU_VIRTUAL_ADDRESS_SUPPORT を参照してください。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
各言語での定義
列挙メンバーの定義。HSP タブは #define global(値は16進)。
typedef enum D3D12_TILED_RESOURCES_TIER : int {
D3D12_TILED_RESOURCES_TIER_NOT_SUPPORTED = 0,
D3D12_TILED_RESOURCES_TIER_1 = 1,
D3D12_TILED_RESOURCES_TIER_2 = 2,
D3D12_TILED_RESOURCES_TIER_3 = 3,
D3D12_TILED_RESOURCES_TIER_4 = 4
} D3D12_TILED_RESOURCES_TIER;public enum D3D12_TILED_RESOURCES_TIER : int
{
D3D12_TILED_RESOURCES_TIER_NOT_SUPPORTED = 0,
D3D12_TILED_RESOURCES_TIER_1 = 1,
D3D12_TILED_RESOURCES_TIER_2 = 2,
D3D12_TILED_RESOURCES_TIER_3 = 3,
D3D12_TILED_RESOURCES_TIER_4 = 4,
}Public Enum D3D12_TILED_RESOURCES_TIER As Integer
D3D12_TILED_RESOURCES_TIER_NOT_SUPPORTED = 0
D3D12_TILED_RESOURCES_TIER_1 = 1
D3D12_TILED_RESOURCES_TIER_2 = 2
D3D12_TILED_RESOURCES_TIER_3 = 3
D3D12_TILED_RESOURCES_TIER_4 = 4
End Enumimport enum
class D3D12_TILED_RESOURCES_TIER(enum.IntEnum):
D3D12_TILED_RESOURCES_TIER_NOT_SUPPORTED = 0
D3D12_TILED_RESOURCES_TIER_1 = 1
D3D12_TILED_RESOURCES_TIER_2 = 2
D3D12_TILED_RESOURCES_TIER_3 = 3
D3D12_TILED_RESOURCES_TIER_4 = 4// D3D12_TILED_RESOURCES_TIER
pub const D3D12_TILED_RESOURCES_TIER_NOT_SUPPORTED: i32 = 0;
pub const D3D12_TILED_RESOURCES_TIER_1: i32 = 1;
pub const D3D12_TILED_RESOURCES_TIER_2: i32 = 2;
pub const D3D12_TILED_RESOURCES_TIER_3: i32 = 3;
pub const D3D12_TILED_RESOURCES_TIER_4: i32 = 4;// D3D12_TILED_RESOURCES_TIER
const (
D3D12_TILED_RESOURCES_TIER_NOT_SUPPORTED int32 = 0
D3D12_TILED_RESOURCES_TIER_1 int32 = 1
D3D12_TILED_RESOURCES_TIER_2 int32 = 2
D3D12_TILED_RESOURCES_TIER_3 int32 = 3
D3D12_TILED_RESOURCES_TIER_4 int32 = 4
)const
D3D12_TILED_RESOURCES_TIER_NOT_SUPPORTED = 0;
D3D12_TILED_RESOURCES_TIER_1 = 1;
D3D12_TILED_RESOURCES_TIER_2 = 2;
D3D12_TILED_RESOURCES_TIER_3 = 3;
D3D12_TILED_RESOURCES_TIER_4 = 4;// D3D12_TILED_RESOURCES_TIER
pub const D3D12_TILED_RESOURCES_TIER_NOT_SUPPORTED: i32 = 0;
pub const D3D12_TILED_RESOURCES_TIER_1: i32 = 1;
pub const D3D12_TILED_RESOURCES_TIER_2: i32 = 2;
pub const D3D12_TILED_RESOURCES_TIER_3: i32 = 3;
pub const D3D12_TILED_RESOURCES_TIER_4: i32 = 4;const
D3D12_TILED_RESOURCES_TIER_NOT_SUPPORTED* = 0
D3D12_TILED_RESOURCES_TIER_1* = 1
D3D12_TILED_RESOURCES_TIER_2* = 2
D3D12_TILED_RESOURCES_TIER_3* = 3
D3D12_TILED_RESOURCES_TIER_4* = 4enum D3D12_TILED_RESOURCES_TIER : int {
D3D12_TILED_RESOURCES_TIER_NOT_SUPPORTED = 0,
D3D12_TILED_RESOURCES_TIER_1 = 1,
D3D12_TILED_RESOURCES_TIER_2 = 2,
D3D12_TILED_RESOURCES_TIER_3 = 3,
D3D12_TILED_RESOURCES_TIER_4 = 4,
}#define global D3D12_TILED_RESOURCES_TIER_NOT_SUPPORTED 0x0
#define global D3D12_TILED_RESOURCES_TIER_1 0x1
#define global D3D12_TILED_RESOURCES_TIER_2 0x2
#define global D3D12_TILED_RESOURCES_TIER_3 0x3
#define global D3D12_TILED_RESOURCES_TIER_4 0x4