IEngineFactoryD3D11 struct
Engine factory for Direct3D11 rendering backend.
Contents
- Reference
Base classes
- struct IEngineFactory
- Engine factory base interface.
Derived classes
-
template<class BaseInterface>class EngineFactoryBase
- Template class implementing base functionality of the engine factory.
Public functions
- auto CreateDeviceAndContextsD3D11(const EngineD3D11CreateInfo& EngineCI, IRenderDevice** ppDevice, IDeviceContext** ppContexts) -> void METHOD() virtual
- Creates a render device and device contexts for Direct3D11-based engine implementation.
- auto CreateSwapChainD3D11(IRenderDevice* pDevice, IDeviceContext* pImmediateContext, const SwapChainDesc& SCDesc, const FullScreenModeDesc& FSDesc, const NativeWindow& Window, ISwapChain** ppSwapChain) -> void METHOD() virtual
- Creates a swap chain for Direct3D11-based engine implementation.
- auto AttachToD3D11Device(void* pd3d11NativeDevice, void* pd3d11ImmediateContext, const EngineD3D11CreateInfo& EngineCI, IRenderDevice** ppDevice, IDeviceContext** ppContexts) -> void METHOD() virtual
- Attaches to existing Direct3D11 render device and immediate context.
-
auto EnumerateAdapters(DIRECT3D_
FEATURE_ LEVEL MinFeatureLevel, Uint32& NumAdapters, GraphicsAdapterInfo* Adapters) -> void METHOD() virtual - Enumerates adapters available on this machine.
-
auto EnumerateDisplayModes(DIRECT3D_
FEATURE_ LEVEL MinFeatureLevel, Uint32 AdapterId, Uint32 OutputId, TEXTURE_ FORMAT Format, Uint32& NumDisplayModes, DisplayModeAttribs* DisplayModes) -> void METHOD() virtual - Enumerates available display modes for the specified output of the specified adapter.
Function documentation
void METHOD() Diligent:: IEngineFactoryD3D11:: CreateDeviceAndContextsD3D11(const EngineD3D11CreateInfo& EngineCI,
IRenderDevice** ppDevice,
IDeviceContext** ppContexts) virtual
Creates a render device and device contexts for Direct3D11-based engine implementation.
| Parameters | |
|---|---|
| EngineCI in | - Engine creation info. |
| ppDevice out | - Address of the memory location where pointer to the created device will be written. |
| ppContexts out | - Address of the memory location where pointers to the contexts will be written. Immediate context goes at position 0. If EngineCI.NumDeferredContexts > 0, pointers to deferred contexts are written afterwards. |
void METHOD() Diligent:: IEngineFactoryD3D11:: CreateSwapChainD3D11(IRenderDevice* pDevice,
IDeviceContext* pImmediateContext,
const SwapChainDesc& SCDesc,
const FullScreenModeDesc& FSDesc,
const NativeWindow& Window,
ISwapChain** ppSwapChain) virtual
Creates a swap chain for Direct3D11-based engine implementation.
| Parameters | |
|---|---|
| pDevice in | - Pointer to the render device. |
| pImmediateContext in | - Pointer to the immediate device context. |
| SCDesc in | - Swap chain description. |
| FSDesc in | - Fullscreen mode description. |
| Window in | - Platform-specific native window description that the swap chain will be associated with:
|
| ppSwapChain out | - Address of the memory location where pointer to the new swap chain will be written. |
void METHOD() Diligent:: IEngineFactoryD3D11:: AttachToD3D11Device(void* pd3d11NativeDevice,
void* pd3d11ImmediateContext,
const EngineD3D11CreateInfo& EngineCI,
IRenderDevice** ppDevice,
IDeviceContext** ppContexts) virtual
Attaches to existing Direct3D11 render device and immediate context.
| Parameters | |
|---|---|
| pd3d11NativeDevice in | - pointer to the native Direct3D11 device. |
| pd3d11ImmediateContext in | - pointer to the native Direct3D11 immediate context. |
| EngineCI in | - Engine creation info. |
| ppDevice out | - Address of the memory location where pointer to the created device will be written. |
| ppContexts out | - Address of the memory location where pointers to the contexts will be written. Immediate context goes at position 0. If EngineCI.NumDeferredContexts > 0, pointers to the deferred contexts are written afterwards. |
void METHOD() Diligent:: IEngineFactoryD3D11:: EnumerateAdapters(DIRECT3D_ FEATURE_ LEVEL MinFeatureLevel,
Uint32& NumAdapters,
GraphicsAdapterInfo* Adapters) virtual
Enumerates adapters available on this machine.
| Parameters | |
|---|---|
| MinFeatureLevel in | - Minimum required feature level. |
| NumAdapters in/out | - Number of adapters. If Adapters is null, this value will be overwritten with the number of adapters available on this system. If Adapters is not null, this value should contain the maximum number of elements reserved in the array pointed to by Adapters. In the latter case, this value is overwritten with the actual number of elements written to Adapters. |
| Adapters out | - Pointer to the array conataining adapter information. If null is provided, the number of available adapters is written to NumAdapters. |
void METHOD() Diligent:: IEngineFactoryD3D11:: EnumerateDisplayModes(DIRECT3D_ FEATURE_ LEVEL MinFeatureLevel,
Uint32 AdapterId,
Uint32 OutputId,
TEXTURE_ FORMAT Format,
Uint32& NumDisplayModes,
DisplayModeAttribs* DisplayModes) virtual
Enumerates available display modes for the specified output of the specified adapter.
| Parameters | |
|---|---|
| MinFeatureLevel in | - Minimum feature level of the adapter that was given to EnumerateAdapters(). |
| AdapterId in | - Id of the adapter enumerated by EnumerateAdapters(). |
| OutputId in | - Adapter output id. |
| Format in | - Display mode format. |
| NumDisplayModes in/out | - Number of display modes. If DisplayModes is null, this value is overwritten with the number of display modes available for this output. If DisplayModes is not null, this value should contain the maximum number of elements to be written to DisplayModes array. It is overwritten with the actual number of display modes written. |
| DisplayModes | |