Método ID3D11Device::CreateDeferredContext (d3d11.h)
Crea un contexto diferido, que puede registrar listas de comandos.
Sintaxis
HRESULT CreateDeferredContext(
UINT ContextFlags,
[out, optional] ID3D11DeviceContext **ppDeferredContext
);
Parámetros
ContextFlags
Tipo: UINT
Reservado para uso futuro. Pase 0.
[out, optional] ppDeferredContext
Tipo: ID3D11DeviceContext**
Al finalizar el método, se inicializa el puntero pasado a un puntero de interfaz ID3D11DeviceContext .
Valor devuelto
Tipo: HRESULT
Devuelve S_OK si se ejecuta correctamente; de lo contrario, devuelve una de las siguientes opciones:
- Devuelve DXGI_ERROR_DEVICE_REMOVED si la tarjeta de vídeo se ha quitado físicamente del sistema o se ha producido una actualización del controlador para la tarjeta de vídeo. Si se produce este error, debe destruir y volver a crear el dispositivo.
- Devuelve DXGI_ERROR_INVALID_CALL si no se puede llamar al método CreateDeferredContext desde el contexto actual. Por ejemplo, si el dispositivo se creó con el valor D3D11_CREATE_DEVICE_SINGLETHREADED , CreateDeferredContext devuelve DXGI_ERROR_INVALID_CALL.
- Devuelve E_INVALIDARG si el parámetro ContextFlags no es válido.
- Devuelve E_OUTOFMEMORY si la aplicación ha agotado la memoria disponible.
Comentarios
Un contexto diferido es un contexto seguro para subprocesos que puede usar para grabar comandos gráficos en un subproceso distinto del subproceso de representación principal. Con un contexto diferido, puede grabar comandos gráficos en una lista de comandos encapsulada por la interfaz ID3D11CommandList . Una vez registrados todos los elementos de escena, puede enviarlos al subproceso de representación principal para la representación final. De esta manera, puede realizar tareas de representación simultáneamente en varios subprocesos y mejorar potencialmente el rendimiento en escenarios de CPU de varios núcleos.
Puede crear varios contextos diferidos.
Windows Phone 8: se admite esta API.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Windows |
Encabezado | d3d11.h |
Library | D3d11.lib |
Consulte también
ID3D11Device1::CreateDeferredContext1