Win32 API 日本語リファレンス
ホームGraphics.Direct3D12 › D3D12_HEAP_FLAGS

D3D12_HEAP_FLAGS

列挙型フラグ
基底型i4

メンバー 17

名前10進16進説明
D3D12_HEAP_FLAG_NONE00x0オプションを指定しません。
D3D12_HEAP_FLAG_SHARED10x1ヒープは共有されます。共有ヒープ を参照してください。
D3D12_HEAP_FLAG_DENY_BUFFERS40x4ヒープにバッファーを格納することは許可されません。
D3D12_HEAP_FLAG_ALLOW_DISPLAY80x8ヒープにスワップ チェーン サーフェスを格納することが許可されます。
D3D12_HEAP_FLAG_SHARED_CROSS_ADAPTER320x20ヒープはアダプター間でリソースを共有することが許可されます。共有ヒープ を参照してください。保護されたセッションは、アダプター間で共有されるリソースと混在させることはできません。
D3D12_HEAP_FLAG_DENY_RT_DS_TEXTURES640x40ヒープにレンダー ターゲット (RT) テクスチャや深度ステンシル (DS) テクスチャを格納することは許可されません。
D3D12_HEAP_FLAG_DENY_NON_RT_DS_TEXTURES1280x80D3D12_RESOURCE_FLAG_ALLOW_RENDER_TARGET または D3D12_RESOURCE_FLAG_ALLOW_DEPTH_STENCIL のいずれかが指定されていない限り、ヒープに D3D12_RESOURCE_DIMENSION_TEXTURE1DD3D12_RESOURCE_DIMENSION_TEXTURE2D、または D3D12_RESOURCE_DIMENSION_TEXTURE3D のリソースを格納することは許可されません。D3D12_RESOURCE_DIMENSION および D3D12_RESOURCE_FLAGS を参照してください。
D3D12_HEAP_FLAG_HARDWARE_PROTECTED2560x100サポートされていません。使用しないでください。
D3D12_HEAP_FLAG_ALLOW_WRITE_WATCH5120x200ヒープは MEM_WRITE_WATCH 機能をサポートします。これにより、システムはコミット済みメモリ領域内で書き込みが行われたページを追跡します。このフラグは D3D12_HEAP_TYPE_DEFAULT フラグまたは D3D12_CPU_PAGE_PROPERTY_UNKNOWN フラグと組み合わせることはできません。ツールがこの機能を利用できなくなるため、アプリケーションが自らこのフラグを使用することは推奨されません。
D3D12_HEAP_FLAG_ALLOW_SHADER_ATOMICS10240x400

メモリを参照できるコンポーネントから見て、このヒープのメモリ上でアトミック操作がアトミックになることを保証します。

次のいずれかの条件に該当する場合、このフラグを指定したヒープの作成は失敗します。

なお、このフラグを持つヒープは、システムによっては限られたリソースとなる場合があります。

D3D12_HEAP_FLAG_CREATE_NOT_RESIDENT20480x800

ヒープは非常駐 (non-resident) の状態で作成され、ID3D12Device::MakeResident または ID3D12Device3::EnqueueMakeResident を使用して常駐させる必要があります。

既定では、ヒープ作成の最終ステップはヒープを常駐させることですが、このフラグはそのステップを省略し、いつ常駐させるかをアプリケーションが決定できるようにします。

D3D12_HEAP_FLAG_CREATE_NOT_ZEROED40960x1000作成されたヒープを OS がゼロクリアしないことを許可します。既定では、コミット済みリソースおよびヒープは作成時にほぼ必ずゼロクリアされます。このフラグにより、一部のシナリオではその処理を省略できます。ただし、省略されることが保証されるわけではありません。たとえば、他のプロセスから割り当てられるメモリは、データ保護とプロセス分離のために依然としてゼロクリアされる必要があります。これによりヒープ作成のオーバーヘッドを削減できます。
D3D12_HEAP_FLAG_TOOLS_USE_MANUAL_WRITE_TRACKING81920x2000
D3D12_HEAP_FLAG_ALLOW_ALL_BUFFERS_AND_TEXTURES00x0ヒープにすべての種類のバッファーおよびテクスチャを格納することが許可されます。これはエイリアスです。詳細については、解説セクションの「エイリアス」を参照してください。
D3D12_HEAP_FLAG_ALLOW_ONLY_BUFFERS1920xC0ヒープにはバッファーのみを格納できます。これはエイリアスです。詳細については、解説セクションの「エイリアス」を参照してください。
D3D12_HEAP_FLAG_ALLOW_ONLY_NON_RT_DS_TEXTURES680x44ヒープには RT でも DS でもないテクスチャのみを格納できます。これはエイリアスです。詳細については、解説セクションの「エイリアス」を参照してください。
D3D12_HEAP_FLAG_ALLOW_ONLY_RT_DS_TEXTURES1320x84ヒープには RT テクスチャまたは DS テクスチャのみを格納できます。これはエイリアスです。詳細については、解説セクションの「エイリアス」を参照してください。

公式ドキュメント

ヒープにテクスチャを格納できるかどうか、リソースをアダプター間で共有するかどうかなど、ヒープのオプションを指定します。

解説(Remarks)

この列挙型は次の API 項目で使用されます。

次のヒープ フラグは ID3D12Device::CreateHeap で使用する必要がありますが、ID3D12Device::CreateCommittedResource によって作成される暗黙のヒープでは自動的に設定されます。

ヒープ ティア 1 のみをサポートするアダプターでは、次の 3 つのフラグのうち 2 つを設定しなければなりません。

説明
D3D12_HEAP_FLAG_DENY_BUFFERS ヒープに D3D12_RESOURCE_DIMENSION_BUFFER (D3D12_RESOURCE_DIMENSION 列挙型の定数) のリソースを格納することは許可されません。
D3D12_HEAP_FLAG_DENY_RT_DS_TEXTURES ヒープに D3D12_RESOURCE_DIMENSION_TEXTURE1DD3D12_RESOURCE_DIMENSION_TEXTURE2D、または D3D12_RESOURCE_DIMENSION_TEXTURE3D のリソースを D3D12_RESOURCE_FLAG_ALLOW_RENDER_TARGET または D3D12_RESOURCE_FLAG_ALLOW_DEPTH_STENCIL と共に格納することは許可されません。 (後者の 2 つは D3D12_RESOURCE_FLAGS 列挙型の定数です。)
D3D12_HEAP_FLAG_DENY_NON_RT_DS_TEXTURES D3D12_RESOURCE_FLAG_ALLOW_RENDER_TARGETD3D12_RESOURCE_FLAG_ALLOW_DEPTH_STENCIL のいずれも指定されていない限り、ヒープに D3D12_RESOURCE_DIMENSION_TEXTURE1DD3D12_RESOURCE_DIMENSION_TEXTURE2D、または D3D12_RESOURCE_DIMENSION_TEXTURE3D のリソースを格納することは許可されません。

エイリアス

ヒープ ティア 2 以上をサポートするアダプターでは、上記のフラグをいずれも設定しないことも許可されます。 どのリソースがサポートされるかだけを考えたいアプリケーションのために、これらのフラグのエイリアスが用意されています。

次のエイリアスが存在するため、ビット操作を行う際は注意してください。

表示可能なヒープ

表示可能なヒープは、モニターへのスキャンアウトを可能にするために、通常はプレゼンテーション用としてスワップ チェーンによって作成されます。

表示可能なヒープは、D3D12_HEAP_FLAGS 列挙型の D3D12_HEAP_FLAG_ALLOW_DISPLAY メンバーで指定します。

アプリケーションはスワップ チェーン以外で表示可能なヒープを作成できますが、それを使って実際にプレゼントすることはできません。 このフラグは CreateHeap ではサポートされておらず、D3D12_HEAP_TYPE_DEFAULT を指定した CreateCommittedResource でのみ使用できます。

表示可能なヒープで作成されるリソースには、D3D12_RESOURCE_DESC に対する追加の制限が適用されます。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum D3D12_HEAP_FLAGS : int {
    D3D12_HEAP_FLAG_NONE = 0,
    D3D12_HEAP_FLAG_SHARED = 1,
    D3D12_HEAP_FLAG_DENY_BUFFERS = 4,
    D3D12_HEAP_FLAG_ALLOW_DISPLAY = 8,
    D3D12_HEAP_FLAG_SHARED_CROSS_ADAPTER = 32,
    D3D12_HEAP_FLAG_DENY_RT_DS_TEXTURES = 64,
    D3D12_HEAP_FLAG_DENY_NON_RT_DS_TEXTURES = 128,
    D3D12_HEAP_FLAG_HARDWARE_PROTECTED = 256,
    D3D12_HEAP_FLAG_ALLOW_WRITE_WATCH = 512,
    D3D12_HEAP_FLAG_ALLOW_SHADER_ATOMICS = 1024,
    D3D12_HEAP_FLAG_CREATE_NOT_RESIDENT = 2048,
    D3D12_HEAP_FLAG_CREATE_NOT_ZEROED = 4096,
    D3D12_HEAP_FLAG_TOOLS_USE_MANUAL_WRITE_TRACKING = 8192,
    D3D12_HEAP_FLAG_ALLOW_ALL_BUFFERS_AND_TEXTURES = 0,
    D3D12_HEAP_FLAG_ALLOW_ONLY_BUFFERS = 192,
    D3D12_HEAP_FLAG_ALLOW_ONLY_NON_RT_DS_TEXTURES = 68,
    D3D12_HEAP_FLAG_ALLOW_ONLY_RT_DS_TEXTURES = 132
} D3D12_HEAP_FLAGS;
[Flags]
public enum D3D12_HEAP_FLAGS : int
{
    D3D12_HEAP_FLAG_NONE = 0,
    D3D12_HEAP_FLAG_SHARED = 1,
    D3D12_HEAP_FLAG_DENY_BUFFERS = 4,
    D3D12_HEAP_FLAG_ALLOW_DISPLAY = 8,
    D3D12_HEAP_FLAG_SHARED_CROSS_ADAPTER = 32,
    D3D12_HEAP_FLAG_DENY_RT_DS_TEXTURES = 64,
    D3D12_HEAP_FLAG_DENY_NON_RT_DS_TEXTURES = 128,
    D3D12_HEAP_FLAG_HARDWARE_PROTECTED = 256,
    D3D12_HEAP_FLAG_ALLOW_WRITE_WATCH = 512,
    D3D12_HEAP_FLAG_ALLOW_SHADER_ATOMICS = 1024,
    D3D12_HEAP_FLAG_CREATE_NOT_RESIDENT = 2048,
    D3D12_HEAP_FLAG_CREATE_NOT_ZEROED = 4096,
    D3D12_HEAP_FLAG_TOOLS_USE_MANUAL_WRITE_TRACKING = 8192,
    D3D12_HEAP_FLAG_ALLOW_ALL_BUFFERS_AND_TEXTURES = 0,
    D3D12_HEAP_FLAG_ALLOW_ONLY_BUFFERS = 192,
    D3D12_HEAP_FLAG_ALLOW_ONLY_NON_RT_DS_TEXTURES = 68,
    D3D12_HEAP_FLAG_ALLOW_ONLY_RT_DS_TEXTURES = 132,
}
<Flags>
Public Enum D3D12_HEAP_FLAGS As Integer
    D3D12_HEAP_FLAG_NONE = 0
    D3D12_HEAP_FLAG_SHARED = 1
    D3D12_HEAP_FLAG_DENY_BUFFERS = 4
    D3D12_HEAP_FLAG_ALLOW_DISPLAY = 8
    D3D12_HEAP_FLAG_SHARED_CROSS_ADAPTER = 32
    D3D12_HEAP_FLAG_DENY_RT_DS_TEXTURES = 64
    D3D12_HEAP_FLAG_DENY_NON_RT_DS_TEXTURES = 128
    D3D12_HEAP_FLAG_HARDWARE_PROTECTED = 256
    D3D12_HEAP_FLAG_ALLOW_WRITE_WATCH = 512
    D3D12_HEAP_FLAG_ALLOW_SHADER_ATOMICS = 1024
    D3D12_HEAP_FLAG_CREATE_NOT_RESIDENT = 2048
    D3D12_HEAP_FLAG_CREATE_NOT_ZEROED = 4096
    D3D12_HEAP_FLAG_TOOLS_USE_MANUAL_WRITE_TRACKING = 8192
    D3D12_HEAP_FLAG_ALLOW_ALL_BUFFERS_AND_TEXTURES = 0
    D3D12_HEAP_FLAG_ALLOW_ONLY_BUFFERS = 192
    D3D12_HEAP_FLAG_ALLOW_ONLY_NON_RT_DS_TEXTURES = 68
    D3D12_HEAP_FLAG_ALLOW_ONLY_RT_DS_TEXTURES = 132
End Enum
import enum

class D3D12_HEAP_FLAGS(enum.IntFlag):
    D3D12_HEAP_FLAG_NONE = 0
    D3D12_HEAP_FLAG_SHARED = 1
    D3D12_HEAP_FLAG_DENY_BUFFERS = 4
    D3D12_HEAP_FLAG_ALLOW_DISPLAY = 8
    D3D12_HEAP_FLAG_SHARED_CROSS_ADAPTER = 32
    D3D12_HEAP_FLAG_DENY_RT_DS_TEXTURES = 64
    D3D12_HEAP_FLAG_DENY_NON_RT_DS_TEXTURES = 128
    D3D12_HEAP_FLAG_HARDWARE_PROTECTED = 256
    D3D12_HEAP_FLAG_ALLOW_WRITE_WATCH = 512
    D3D12_HEAP_FLAG_ALLOW_SHADER_ATOMICS = 1024
    D3D12_HEAP_FLAG_CREATE_NOT_RESIDENT = 2048
    D3D12_HEAP_FLAG_CREATE_NOT_ZEROED = 4096
    D3D12_HEAP_FLAG_TOOLS_USE_MANUAL_WRITE_TRACKING = 8192
    D3D12_HEAP_FLAG_ALLOW_ALL_BUFFERS_AND_TEXTURES = 0
    D3D12_HEAP_FLAG_ALLOW_ONLY_BUFFERS = 192
    D3D12_HEAP_FLAG_ALLOW_ONLY_NON_RT_DS_TEXTURES = 68
    D3D12_HEAP_FLAG_ALLOW_ONLY_RT_DS_TEXTURES = 132
// D3D12_HEAP_FLAGS (flags)
pub const D3D12_HEAP_FLAG_NONE: i32 = 0;
pub const D3D12_HEAP_FLAG_SHARED: i32 = 1;
pub const D3D12_HEAP_FLAG_DENY_BUFFERS: i32 = 4;
pub const D3D12_HEAP_FLAG_ALLOW_DISPLAY: i32 = 8;
pub const D3D12_HEAP_FLAG_SHARED_CROSS_ADAPTER: i32 = 32;
pub const D3D12_HEAP_FLAG_DENY_RT_DS_TEXTURES: i32 = 64;
pub const D3D12_HEAP_FLAG_DENY_NON_RT_DS_TEXTURES: i32 = 128;
pub const D3D12_HEAP_FLAG_HARDWARE_PROTECTED: i32 = 256;
pub const D3D12_HEAP_FLAG_ALLOW_WRITE_WATCH: i32 = 512;
pub const D3D12_HEAP_FLAG_ALLOW_SHADER_ATOMICS: i32 = 1024;
pub const D3D12_HEAP_FLAG_CREATE_NOT_RESIDENT: i32 = 2048;
pub const D3D12_HEAP_FLAG_CREATE_NOT_ZEROED: i32 = 4096;
pub const D3D12_HEAP_FLAG_TOOLS_USE_MANUAL_WRITE_TRACKING: i32 = 8192;
pub const D3D12_HEAP_FLAG_ALLOW_ALL_BUFFERS_AND_TEXTURES: i32 = 0;
pub const D3D12_HEAP_FLAG_ALLOW_ONLY_BUFFERS: i32 = 192;
pub const D3D12_HEAP_FLAG_ALLOW_ONLY_NON_RT_DS_TEXTURES: i32 = 68;
pub const D3D12_HEAP_FLAG_ALLOW_ONLY_RT_DS_TEXTURES: i32 = 132;
// D3D12_HEAP_FLAGS
const (
	D3D12_HEAP_FLAG_NONE int32 = 0
	D3D12_HEAP_FLAG_SHARED int32 = 1
	D3D12_HEAP_FLAG_DENY_BUFFERS int32 = 4
	D3D12_HEAP_FLAG_ALLOW_DISPLAY int32 = 8
	D3D12_HEAP_FLAG_SHARED_CROSS_ADAPTER int32 = 32
	D3D12_HEAP_FLAG_DENY_RT_DS_TEXTURES int32 = 64
	D3D12_HEAP_FLAG_DENY_NON_RT_DS_TEXTURES int32 = 128
	D3D12_HEAP_FLAG_HARDWARE_PROTECTED int32 = 256
	D3D12_HEAP_FLAG_ALLOW_WRITE_WATCH int32 = 512
	D3D12_HEAP_FLAG_ALLOW_SHADER_ATOMICS int32 = 1024
	D3D12_HEAP_FLAG_CREATE_NOT_RESIDENT int32 = 2048
	D3D12_HEAP_FLAG_CREATE_NOT_ZEROED int32 = 4096
	D3D12_HEAP_FLAG_TOOLS_USE_MANUAL_WRITE_TRACKING int32 = 8192
	D3D12_HEAP_FLAG_ALLOW_ALL_BUFFERS_AND_TEXTURES int32 = 0
	D3D12_HEAP_FLAG_ALLOW_ONLY_BUFFERS int32 = 192
	D3D12_HEAP_FLAG_ALLOW_ONLY_NON_RT_DS_TEXTURES int32 = 68
	D3D12_HEAP_FLAG_ALLOW_ONLY_RT_DS_TEXTURES int32 = 132
)
const
  D3D12_HEAP_FLAG_NONE = 0;
  D3D12_HEAP_FLAG_SHARED = 1;
  D3D12_HEAP_FLAG_DENY_BUFFERS = 4;
  D3D12_HEAP_FLAG_ALLOW_DISPLAY = 8;
  D3D12_HEAP_FLAG_SHARED_CROSS_ADAPTER = 32;
  D3D12_HEAP_FLAG_DENY_RT_DS_TEXTURES = 64;
  D3D12_HEAP_FLAG_DENY_NON_RT_DS_TEXTURES = 128;
  D3D12_HEAP_FLAG_HARDWARE_PROTECTED = 256;
  D3D12_HEAP_FLAG_ALLOW_WRITE_WATCH = 512;
  D3D12_HEAP_FLAG_ALLOW_SHADER_ATOMICS = 1024;
  D3D12_HEAP_FLAG_CREATE_NOT_RESIDENT = 2048;
  D3D12_HEAP_FLAG_CREATE_NOT_ZEROED = 4096;
  D3D12_HEAP_FLAG_TOOLS_USE_MANUAL_WRITE_TRACKING = 8192;
  D3D12_HEAP_FLAG_ALLOW_ALL_BUFFERS_AND_TEXTURES = 0;
  D3D12_HEAP_FLAG_ALLOW_ONLY_BUFFERS = 192;
  D3D12_HEAP_FLAG_ALLOW_ONLY_NON_RT_DS_TEXTURES = 68;
  D3D12_HEAP_FLAG_ALLOW_ONLY_RT_DS_TEXTURES = 132;
// D3D12_HEAP_FLAGS
pub const D3D12_HEAP_FLAG_NONE: i32 = 0;
pub const D3D12_HEAP_FLAG_SHARED: i32 = 1;
pub const D3D12_HEAP_FLAG_DENY_BUFFERS: i32 = 4;
pub const D3D12_HEAP_FLAG_ALLOW_DISPLAY: i32 = 8;
pub const D3D12_HEAP_FLAG_SHARED_CROSS_ADAPTER: i32 = 32;
pub const D3D12_HEAP_FLAG_DENY_RT_DS_TEXTURES: i32 = 64;
pub const D3D12_HEAP_FLAG_DENY_NON_RT_DS_TEXTURES: i32 = 128;
pub const D3D12_HEAP_FLAG_HARDWARE_PROTECTED: i32 = 256;
pub const D3D12_HEAP_FLAG_ALLOW_WRITE_WATCH: i32 = 512;
pub const D3D12_HEAP_FLAG_ALLOW_SHADER_ATOMICS: i32 = 1024;
pub const D3D12_HEAP_FLAG_CREATE_NOT_RESIDENT: i32 = 2048;
pub const D3D12_HEAP_FLAG_CREATE_NOT_ZEROED: i32 = 4096;
pub const D3D12_HEAP_FLAG_TOOLS_USE_MANUAL_WRITE_TRACKING: i32 = 8192;
pub const D3D12_HEAP_FLAG_ALLOW_ALL_BUFFERS_AND_TEXTURES: i32 = 0;
pub const D3D12_HEAP_FLAG_ALLOW_ONLY_BUFFERS: i32 = 192;
pub const D3D12_HEAP_FLAG_ALLOW_ONLY_NON_RT_DS_TEXTURES: i32 = 68;
pub const D3D12_HEAP_FLAG_ALLOW_ONLY_RT_DS_TEXTURES: i32 = 132;
const
  D3D12_HEAP_FLAG_NONE* = 0
  D3D12_HEAP_FLAG_SHARED* = 1
  D3D12_HEAP_FLAG_DENY_BUFFERS* = 4
  D3D12_HEAP_FLAG_ALLOW_DISPLAY* = 8
  D3D12_HEAP_FLAG_SHARED_CROSS_ADAPTER* = 32
  D3D12_HEAP_FLAG_DENY_RT_DS_TEXTURES* = 64
  D3D12_HEAP_FLAG_DENY_NON_RT_DS_TEXTURES* = 128
  D3D12_HEAP_FLAG_HARDWARE_PROTECTED* = 256
  D3D12_HEAP_FLAG_ALLOW_WRITE_WATCH* = 512
  D3D12_HEAP_FLAG_ALLOW_SHADER_ATOMICS* = 1024
  D3D12_HEAP_FLAG_CREATE_NOT_RESIDENT* = 2048
  D3D12_HEAP_FLAG_CREATE_NOT_ZEROED* = 4096
  D3D12_HEAP_FLAG_TOOLS_USE_MANUAL_WRITE_TRACKING* = 8192
  D3D12_HEAP_FLAG_ALLOW_ALL_BUFFERS_AND_TEXTURES* = 0
  D3D12_HEAP_FLAG_ALLOW_ONLY_BUFFERS* = 192
  D3D12_HEAP_FLAG_ALLOW_ONLY_NON_RT_DS_TEXTURES* = 68
  D3D12_HEAP_FLAG_ALLOW_ONLY_RT_DS_TEXTURES* = 132
enum D3D12_HEAP_FLAGS : int {
    D3D12_HEAP_FLAG_NONE = 0,
    D3D12_HEAP_FLAG_SHARED = 1,
    D3D12_HEAP_FLAG_DENY_BUFFERS = 4,
    D3D12_HEAP_FLAG_ALLOW_DISPLAY = 8,
    D3D12_HEAP_FLAG_SHARED_CROSS_ADAPTER = 32,
    D3D12_HEAP_FLAG_DENY_RT_DS_TEXTURES = 64,
    D3D12_HEAP_FLAG_DENY_NON_RT_DS_TEXTURES = 128,
    D3D12_HEAP_FLAG_HARDWARE_PROTECTED = 256,
    D3D12_HEAP_FLAG_ALLOW_WRITE_WATCH = 512,
    D3D12_HEAP_FLAG_ALLOW_SHADER_ATOMICS = 1024,
    D3D12_HEAP_FLAG_CREATE_NOT_RESIDENT = 2048,
    D3D12_HEAP_FLAG_CREATE_NOT_ZEROED = 4096,
    D3D12_HEAP_FLAG_TOOLS_USE_MANUAL_WRITE_TRACKING = 8192,
    D3D12_HEAP_FLAG_ALLOW_ALL_BUFFERS_AND_TEXTURES = 0,
    D3D12_HEAP_FLAG_ALLOW_ONLY_BUFFERS = 192,
    D3D12_HEAP_FLAG_ALLOW_ONLY_NON_RT_DS_TEXTURES = 68,
    D3D12_HEAP_FLAG_ALLOW_ONLY_RT_DS_TEXTURES = 132,
}
#define global D3D12_HEAP_FLAG_NONE                            0x0
#define global D3D12_HEAP_FLAG_SHARED                          0x1
#define global D3D12_HEAP_FLAG_DENY_BUFFERS                    0x4
#define global D3D12_HEAP_FLAG_ALLOW_DISPLAY                   0x8
#define global D3D12_HEAP_FLAG_SHARED_CROSS_ADAPTER            0x20
#define global D3D12_HEAP_FLAG_DENY_RT_DS_TEXTURES             0x40
#define global D3D12_HEAP_FLAG_DENY_NON_RT_DS_TEXTURES         0x80
#define global D3D12_HEAP_FLAG_HARDWARE_PROTECTED              0x100
#define global D3D12_HEAP_FLAG_ALLOW_WRITE_WATCH               0x200
#define global D3D12_HEAP_FLAG_ALLOW_SHADER_ATOMICS            0x400
#define global D3D12_HEAP_FLAG_CREATE_NOT_RESIDENT             0x800
#define global D3D12_HEAP_FLAG_CREATE_NOT_ZEROED               0x1000
#define global D3D12_HEAP_FLAG_TOOLS_USE_MANUAL_WRITE_TRACKING 0x2000
#define global D3D12_HEAP_FLAG_ALLOW_ALL_BUFFERS_AND_TEXTURES  0x0
#define global D3D12_HEAP_FLAG_ALLOW_ONLY_BUFFERS              0xC0
#define global D3D12_HEAP_FLAG_ALLOW_ONLY_NON_RT_DS_TEXTURES   0x44
#define global D3D12_HEAP_FLAG_ALLOW_ONLY_RT_DS_TEXTURES       0x84
; ※フラグ列挙型。ビットORで組み合わせ可(例: FOO|BAR)。