> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# CreateHeap1 (XBOX Series 콘솔)

> 배치된 리소스 및 예약된 리소스와 함께 사용할 수 있는 (선택적으로 보호된 세션용) 힙을 만듭니다.

배치된 리소스 및 예약된 리소스와 함께 사용할 수 있는 (선택적으로 보호된 세션용) 힙을 만듭니다. [ID3D12Device::CreateHeap](/reference/graphics/d3d12/interfaces/id3d12device/methods/id3d12device_createheap_public)도 참조하세요.

## 구문

```cpp theme={null}
HRESULT CreateHeap1(
    const D3D12_HEAP_DESC  pDesc,
    ID3D12ProtectedResourceSession  pProtectedSession,
    const IID & riid,
    void  ppvHeap
)
```

### 매개 변수

*pDesc \[in]*<br />형식: const D3D12\_HEAP\_DESC \*

힙을 설명하는 상수 **D3D12\_HEAP\_DESC** 구조체에 대한 포인터입니다.

*pProtectedSession \[in, optional]*<br />형식: ID3D12ProtectedResourceSession \*

콘텐츠 보호를 위한 세션을 나타내는 객체에 대한 선택적 포인터입니다. 제공된 경우 이 세션은 힙을 보호해야 함을 나타냅니다. [ID3D12Device4::CreateProtectedResourceSession](/reference/graphics/d3d12/interfaces/id3d12device4/methods/id3d12device4_createprotectedresourcesession_public)을 호출하여 **ID3D12ProtectedResourceSession**을 얻을 수 있습니다.

보호된 세션이 있는 힙은 [D3D12\_HEAP\_FLAG\_SHARED\_CROSS\_ADAPTER](/reference/graphics/d3d12_x/enums/d3d12_heap_flags) 플래그로 만들 수 없습니다.

*riid \[in]*<br />형식: const IID &

\_ppvHeap\_에서 반환할 힙 인터페이스의 전역 고유 식별자(**GUID**)에 대한 참조입니다.

\_riidResource\_는 가장 일반적으로 [ID3D12Heap](/reference/graphics/d3d12/interfaces/id3d12heap/id3d12heap_public)의 **GUID**이지만, 모든 인터페이스의 **GUID**일 수 있습니다. 리소스 객체가 이 **GUID**에 대한 인터페이스를 지원하지 않으면 생성이 **E\_NOINTERFACE**로 실패합니다.

*ppvHeap \[out, optional]*<br />형식: void \*\*

생성된 힙 객체에 대한 요청된 인터페이스 포인터를 받는 메모리 블록에 대한 선택적 포인터입니다.

\_ppvHeap\_은 기능 테스트를 활성화하려면 `nullptr`일 수 있습니다. \_ppvHeap\_이 `nullptr`인 경우 객체가 생성되지 않으며, \_pDesc\_가 유효하면 **S\_FALSE**가 반환됩니다.

### 반환 값

형식: HRESULT

함수가 성공하면 **S\_OK**를 반환합니다. 그렇지 않으면 [**HRESULT**](https://learn.microsoft.com/en-us/windows/desktop/com/structure-of-com-error-codes) [오류 코드](https://learn.microsoft.com/en-us/windows/win32/com/com-error-codes-10)를 반환합니다.

| 반환 값           | 설명                |
| -------------- | ----------------- |
| E\_OUTOFMEMORY | 힙을 만들 메모리가 부족합니다. |

다른 가능한 반환 값은 [Direct3D 12 반환 코드](https://learn.microsoft.com/en-us/windows/win32/direct3d12/d3d12-graphics-reference-returnvalues)를 참조하세요.

## 설명

**CreateHeap1**은 배치된 리소스 및 예약된 리소스와 함께 사용할 수 있는 힙을 만듭니다.

힙에 대한 마지막 참조를 해제하기 전에 애플리케이션은 GPU가 이 힙을 더 이상 읽거나 쓰지 않도록 해야 합니다.

배치된 리소스 객체는 자신이 생성된 힙에 대한 참조를 유지하지만, 예약된 리소스는 힙에 대한 각 매핑에 대해 참조를 유지하지 않습니다.

## 요구 사항

**헤더:** d3d12\_xs.h<br />**라이브러리:** d3d12\_xs.lib<br />**지원 플랫폼**: XBOX Series 콘솔

## 함께 보기


## Related topics

- [CreatePlacedResource2 (XBOX Series 콘솔)](/ko/reference/graphics/d3d12/interfaces/id3d12device10/methods/id3d12device10_createplacedresource2_public.md)
- [CreateReservedResource2 (XBOX Series 콘솔)](/ko/reference/graphics/d3d12/interfaces/id3d12device10/methods/id3d12device10_createreservedresource2_public.md)
- [CreateCommandQueue1 (XBOX Series 콘솔)](/ko/reference/graphics/d3d12/interfaces/id3d12device9/methods/id3d12device9_createcommandqueue1_public.md)
- [CreateCommandList1 (XBOX Series 콘솔)](/ko/reference/graphics/d3d12/interfaces/id3d12device4/methods/id3d12device4_createcommandlist1_public.md)
- [CreateMetaCommand (XBOX Series 콘솔)](/ko/reference/graphics/d3d12/interfaces/id3d12device5/methods/id3d12device5_createmetacommand_public.md)
