ID3D12Device10::CreatePlacedResource2 메서드(d3d12.h)
특정 힙에 배치되는 리소스를 만듭니다. 배치된 리소스는 사용 가능한 가장 가벼운 리소스 개체이며 가장 빠르게 만들고 파괴할 수 있습니다.
애플리케이션은 힙 지역에 배치된 여러 Direct3D 및 예약된 리소스와 겹쳐서 비디오 메모리를 다시 사용할 수 있습니다. 간단한 메모리 재사용 모델(설명설명)은 지정된 시간에 유효한 겹치는 리소스를 명확히 하기 위해 존재합니다. 그래픽 도구 지원을 최대화하기 위해 간단한 모델 데이터 상속은 지원되지 않습니다. 세분화된 타일 및 하위 리소스 무효화는 지원되지 않습니다. 전체 겹치는 리소스 무효화만 발생합니다.
DirectX 12 Agility SDK 1.7 이상이 필요합니다.
통사론
HRESULT CreatePlacedResource2(
ID3D12Heap *pHeap,
UINT64 HeapOffset,
const D3D12_RESOURCE_DESC1 *pDesc,
D3D12_BARRIER_LAYOUT InitialLayout,
const D3D12_CLEAR_VALUE *pOptimizedClearValue,
UINT32 NumCastableFormats,
const DXGI_FORMAT *pCastableFormats,
REFIID riid,
void **ppvResource
);
매개 변수
pHeap
형식: [in] ID3D12Heap*
리소스가 배치되는 힙을 나타내는 ID3D12Heap 인터페이스에 대한 포인터입니다.
HeapOffset
형식: UINT64
리소스에 대한 오프셋(바이트)입니다. HeapOffset 리소스 맞춤의 배수여야 하며, HeapOffset 및 리소스 크기가 힙 크기보다 작거나 같아야 합니다. GetResourceAllocationInfo 사용하여 텍스처 리소스의 크기를 이해해야 합니다.
pDesc
형식: [in] const D3D12_RESOURCE_DESC*
리소스를 설명하는 D3D12_RESOURCE_DESC 구조체에 대한 포인터입니다.
InitialLayout
텍스처 리소스의 초기 레이아웃입니다. 버퍼에 대한 D3D12_BARRIER_LAYOUT::D 3D12_BARRIER_LAYOUT_UNDEFINED.
pOptimizedClearValue
형식: [in, optional] const D3D12_CLEAR_VALUE*
명확한 색의 기본값을 설명하는 D3D12_CLEAR_VALUE 지정합니다.
pOptimizedClearValue 명확한 작업이 가장 최적인 값을 지정합니다. 생성된 리소스가 D3D12_RESOURCE_FLAG_ALLOW_RENDER_TARGET 또는 D3D12_RESOURCE_FLAG_ALLOW_DEPTH_STENCIL 플래그가 있는 텍스처인 경우 애플리케이션은 일반 작업이 가장 일반적으로 호출되는 값을 선택해야 합니다.
지우기 작업은 다른 값으로 호출할 수 있지만 해당 작업은 값이 리소스 생성에 전달된 값과 일치하는 경우만큼 효율적이지 않습니다.
pOptimizedClearValueD3D12_RESOURCE_DIMENSION_BUFFER함께 사용할 경우 NULL이어야 합니다.
NumCastableFormats
pCastableFormats의 요소 수는.
pCastableFormats
이 리소스를 캐스팅할 수 있는 연속된 DXGI_FORMAT 구조 배열입니다.
riid
형식: REFIID
리소스 인터페이스에 대한 전역 고유 식별자(GUID)입니다. 입력 매개 변수입니다.
리소스에 대한 인터페이스의 REFIID또는 GUID__uuidof
매크로를 사용하여 가져올 수 있습니다. 예를 들어 __uuidof(ID3D12Resource)
리소스에 대한 인터페이스의 GUID 가져옵니다.
riid 가장 일반적으로 ID3D12Resource의 GUID는있지만 모든 인터페이스에 GUID 수 있습니다. 리소스 개체가 이 GUID대한 인터페이스를 지원하지 않으면 E_NOINTERFACE생성에 실패합니다.
ppvResource
형식: [out, optional] void**
리소스에 대한 포인터를 받는 메모리 블록에 대한 포인터입니다. ppvResource
반환 값
형식: HRESULT
이 메서드는 리소스를 만들 메모리가 부족한 경우 E_OUTOFMEMORY 반환합니다. 다른 가능한 반환 값은 Direct3D 12 반환 코드 참조하세요.
발언
ID3D12Device::CreatePlacedResource대한 설명 참조하세요.
요구 사항
요구 | 값 |
---|---|
대상 플랫폼 | Windows |
헤더 | d3d12.h |
라이브러리 | D3d12.lib |
DLL | D3d12.dll |
참고 항목
CreateCommittedResource
CreateReservedResource
공유 힙