Método ID3D12Device4::CreateReservedResource1 (d3d12.h)
Crea un recurso (opcionalmente para una sesión protegida) que está reservado y que aún no está asignado a ninguna página de un montón. Consulte también ID3D12Device::CreateReservedResource.
Nota
Solo se pueden asignar iconos de montones creados con la misma sesión de recursos protegidos a un recurso reservado protegido.
Sintaxis
HRESULT CreateReservedResource1(
[in] const D3D12_RESOURCE_DESC *pDesc,
[in] D3D12_RESOURCE_STATES InitialState,
[in, optional] const D3D12_CLEAR_VALUE *pOptimizedClearValue,
[in, optional] ID3D12ProtectedResourceSession *pProtectedSession,
[in] REFIID riid,
[out, optional] void **ppvResource
);
Parámetros
[in] pDesc
Tipo: const D3D12_RESOURCE_DESC*
Puntero a una estructura de D3D12_RESOURCE_DESC que describe el recurso.
[in] InitialState
Tipo: D3D12_RESOURCE_STATES
Estado inicial del recurso, como una combinación bit a bit-OR de D3D12_RESOURCE_STATES constantes de enumeración.
[in, optional] pOptimizedClearValue
Tipo: const D3D12_CLEAR_VALUE*
Especifica una estructura D3D12_CLEAR_VALUE que describe el valor predeterminado de un color claro.
pOptimizedClearValue especifica un valor para el que las operaciones claras son más óptimas. Cuando el recurso creado es una textura con las marcas D3D12_RESOURCE_FLAG_ALLOW_RENDER_TARGET o D3D12_RESOURCE_FLAG_ALLOW_DEPTH_STENCIL , debe elegir el valor con el que se llamará normalmente a la operación clear. Puede llamar a la operación clear con otros valores, pero esas operaciones no serán tan eficaces como cuando el valor coincida con el pasado a la creación de recursos.
Al usar D3D12_RESOURCE_DIMENSION_BUFFER, debe establecer pOptimizedClearValue en nullptr
.
[in, optional] pProtectedSession
Tipo: ID3D12ProtectedResourceSession*
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.
[in] riid
Tipo: REFIID
Referencia al identificador único global (GUID) de la interfaz de recursos que se va a devolver en ppvResource. Vea Comentarios.
Aunque riidResource es normalmente el GUID de ID3D12Resource, puede ser el GUID de cualquier interfaz. Si el objeto de recurso no admite la interfaz para este GUID, se produce un error en la creación con E_NOINTERFACE.
[out, optional] ppvResource
Tipo: void**
Puntero opcional a un bloque de memoria que recibe el puntero de interfaz solicitado al objeto de recurso creado.
ppvResource puede ser nullptr
, para habilitar las pruebas de funcionalidad. Cuando ppvResource es nullptr
, no se crea ningún objeto y S_FALSE se devuelve cuando pDesc es válido.
Valor devuelto
Tipo: HRESULT
Si la función se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de errorHRESULT.
Valor devuelto | Descripción |
---|---|
E_OUTOFMEMORY | No hay memoria suficiente para crear el recurso. |
Consulta Códigos de retorno de Direct3D 12 para ver otros valores devueltos posibles.
Comentarios
CreateReservedResource equivale a D3D11_RESOURCE_MISC_TILED en Direct3D 11. Crea un recurso solo con memoria virtual, sin memoria auxiliar.
Debe asignar el recurso a la memoria física (es decir, a un montón) mediante CopyTileMappings y UpdateTileMappings.
Estos tipos de recursos solo se pueden crear cuando el adaptador admite el nivel de recurso en mosaico 1 o superior. El nivel de recurso en mosaico define el comportamiento de acceder a un recurso que no está asignado a un montón.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | compilación 20348 de Windows 10 |
Servidor mínimo compatible | compilación 20348 de Windows 10 |
Plataforma de destino | Windows |
Encabezado | d3d12.h |
Library | d3d12.lib |
Archivo DLL | d3d12.dll |
Consulte también
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de