> ## 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.

# CreateCommittedResource3 (consolas XBOX Series)

> Crea un recurso confirmado con un diseño inicial en lugar de un estado inicial.

Crea un recurso confirmado con un diseño inicial en lugar de un estado inicial.

Requiere DirectX 12 Agility SDK 1.7 o posterior.

## Sintaxis

```cpp theme={null}
HRESULT CreateCommittedResource3(
    const D3D12_HEAP_PROPERTIES  pHeapProperties,
    D3D12_HEAP_FLAGS HeapFlags,
    const D3D12_RESOURCE_DESC1  pDesc,
    D3D12_BARRIER_LAYOUT InitialLayout,
    const D3D12_CLEAR_VALUE  pOptimizedClearValue,
    ID3D12ProtectedResourceSession  pProtectedSession,
    UINT32 NumCastableFormats,
    DXGI_FORMAT  pCastableFormats,
    const IID & riidResource,
    void  ppvResource
)
```

### Parámetros

*pHeapProperties*<br />Tipo: const D3D12\_HEAP\_PROPERTIES \*

Un puntero a una estructura **D3D12\_HEAP\_PROPERTIES** que proporciona las propiedades del montón del recurso.

*HeapFlags*<br />Tipo: D3D12\_HEAP\_FLAGS

Opciones del montón, como una combinación mediante OR bit a bit de constantes de la enumeración **D3D12\_HEAP\_FLAGS**.

*pDesc*<br />Tipo: const D3D12\_RESOURCE\_DESC1 \*

Un puntero a una estructura **D3D12\_RESOURCE\_DESC1** que describe el recurso, incluida una región de mips.

*InitialLayout*<br />Tipo: D3D12\_BARRIER\_LAYOUT

El diseño inicial del recurso de textura; **D3D12\_BARRIER\_LAYOUT::D3D12\_BARRIER\_LAYOUT\_UNDEFINED** para los búferes.

*pOptimizedClearValue*<br />Tipo: const D3D12\_CLEAR\_VALUE \*

Especifica una estructura **D3D12\_CLEAR\_VALUE** que describe el valor predeterminado de un color de borrado.

*pOptimizedClearValue* especifica un valor para el que las operaciones de borrado son más óptimas. Cuando el recurso creado es una textura con las marcas [D3D12\_RESOURCE\_FLAG\_ALLOW\_RENDER\_TARGET](/reference/graphics/d3d12_x/enums/d3d12_resource_flags) o **D3D12\_RESOURCE\_FLAG\_ALLOW\_DEPTH\_STENCIL**, debe elegir el valor con el que se llamará más comúnmente a la operación de borrado. Puede llamar a la operación de borrado con otros valores, pero esas operaciones no serán tan eficientes como cuando el valor coincide con el que se pasó en la creación del recurso.

Cuando use [D3D12\_RESOURCE\_DIMENSION\_BUFFER](/reference/graphics/d3d12_x/enums/d3d12_resource_dimension), debe establecer *pOptimizedClearValue* en `nullptr`.

*pProtectedSession*<br />Tipo: ID3D12ProtectedResourceSession \*

Un puntero opcional a un objeto que representa una sesión para la protección de contenido. Si se proporciona, esta sesión indica que el recurso debe estar protegido. Puede obtener un **ID3D12ProtectedResourceSession** llamando a [ID3D12Device4::CreateProtectedResourceSession](/reference/graphics/d3d12/interfaces/id3d12device4/methods/id3d12device4_createprotectedresourcesession_public).

*NumCastableFormats*<br />Tipo: UINT32

El número de elementos de *pCastableFormats*.

*pCastableFormats*<br />Tipo: DXGI\_FORMAT \*

Una matriz contigua de estructuras [DXGI\_FORMAT](https://learn.microsoft.com/en-us/windows/win32/api/dxgiformat/ne-dxgiformat-dxgi_format) a las que se puede convertir este recurso.

*riidResource*<br />Tipo: const IID &

Una referencia al identificador único global (**GUID**) de la interfaz del recurso que se devolverá en *ppvResource*.

Aunque *riidResource* suele ser el **GUID** de [ID3D12Resource](/reference/graphics/d3d12_xs/interfaces/ID3D12Resource/id3d12resource_xs), puede ser el **GUID** de cualquier interfaz. Si el objeto de recurso no admite la interfaz de este **GUID**, la creación produce un error **E\_NOINTERFACE**.

*ppvResource*<br />Tipo: void \*\*

Un puntero opcional a un bloque de memoria que recibe el puntero de interfaz solicitado al objeto de recurso creado.

*ppvResource* puede ser `nullptr`, para permitir la comprobación de capacidades. Cuando *ppvResource* es `nullptr`, no se crea ningún objeto y se devuelve **S\_FALSE** cuando *pDesc* es válido.

### Valor devuelto

Tipo: HRESULT

Si la función se ejecuta correctamente, devuelve **S\_OK**. De lo contrario, devuelve un [código de error](https://learn.microsoft.com/en-us/windows/win32/com/com-error-codes-10) [**HRESULT**](https://learn.microsoft.com/en-us/windows/desktop/com/structure-of-com-error-codes).

| Valor devuelto | Descripción                                      |
| -------------- | ------------------------------------------------ |
| E\_OUTOFMEMORY | No hay memoria suficiente para crear el recurso. |

Consulte [códigos de retorno de Direct3D 12](https://learn.microsoft.com/en-us/windows/win32/direct3d12/d3d12-graphics-reference-returnvalues) para conocer otros valores devueltos posibles.

## Comentarios

## Requisitos

**Encabezado:** d3d12\_xs.h<br />**Biblioteca:** d3d12\_xs.lib<br />**Plataformas compatibles**: consolas XBOX Series

## Consulte también

[ID3D12Device10](/reference/graphics/d3d12/interfaces/id3d12device10/id3d12device10_public)


## Related topics

- [CreateCommittedResource1 (consolas XBOX Series)](/es/reference/graphics/d3d12/interfaces/id3d12device4/methods/id3d12device4_createcommittedresource1_public.md)
- [CreateReservedResource1 (consolas XBOX Series)](/es/reference/graphics/d3d12/interfaces/id3d12device4/methods/id3d12device4_createreservedresource1_public.md)
- [CreateReservedResource2 (consolas XBOX Series)](/es/reference/graphics/d3d12/interfaces/id3d12device10/methods/id3d12device10_createreservedresource2_public.md)
- [CreatePlacedResource2 (consolas XBOX Series)](/es/reference/graphics/d3d12/interfaces/id3d12device10/methods/id3d12device10_createplacedresource2_public.md)
- [CreateHeap1 (consolas XBOX Series)](/es/reference/graphics/d3d12/interfaces/id3d12device4/methods/id3d12device4_createheap1_public.md)
