Device memory create information. More...
#include <DeviceMemory.h>
Public Attributes | |
DeviceMemoryDesc | Desc |
Device memory description, see Diligent::DeviceMemoryDesc. | |
Uint64 | InitialSize = 0 |
Initial size of the memory object. | |
IDeviceObject ** | ppCompatibleResources = nullptr |
An array of NumResources resources that this memory must be compatible with. | |
Uint32 | NumResources = 0 |
The number of elements in the ppCompatibleResources array. | |
Device memory create information.
Uint64 Diligent::DeviceMemoryCreateInfo::InitialSize = 0 |
Initial size of the memory object.
Some implementations do not support IDeviceMemory::Resize() and memory can only be allocated during the initialization.
IDeviceObject** Diligent::DeviceMemoryCreateInfo::ppCompatibleResources = nullptr |
An array of NumResources
resources that this memory must be compatible with.
For sparse memory, only Diligent::USAGE_SPARSE buffer and texture resources are allowed.
Vulkan backend requires at least one resource to be provided.
In Direct3D12, the list of resources is optional on D3D12_RESOURCE_HEAP_TIER_2-hardware and above, but is required on D3D12_RESOURCE_HEAP_TIER_1-hardware (see SPARSE_RESOURCE_CAP_FLAG_MIXED_RESOURCE_TYPE_SUPPORT).
It is recommended to always provide the list.