GraphicsContext
Description
- Derived from
-
Disposable abstract
IGraphicsContext - Extended by
-
DirectX11Context sealed
DirectX12Context sealed
DirectX9Context sealed
GLContext abstract
Abstract base class for IGraphicsContext implementations.
These protected fields must be initialized by subclasses in the constructor:
Usually, subclasses will issue render command using a native API, which will be processed by the GPU asynchronously. The following method calls are recommended as implicit events at which to flush the render command buffer:
-
IGraphicsFence.Set:
The CPU intends to wait for the buffered commands at some later point in time by calling IGraphicsFence.Wait, so the GPU should start working on those as soon as possible. -
IBeginEnd.End of IGraphicsContext: The CPU will not issue any more render commands and may eventually call ISwapChain.PresentBegin and ISwapChain.PresentEnd at some later point in time. The GPU should process the buffered render commands as quickly as possible.
Public / Constants
Public / Methods
CheckDebugEnableLogOutput
Checks if debug log-output shall be enabled, according to DebugEnableLogOutput.
Public / Attributes
DebugEnableLogOutput
Enable additional debug-level log output from the underlying graphics API?
This switch must be set before TinmanModule.Initialize is called:
< 0
: disable debug-level log output
= 0
: use LowLevel.IsDebug to toggle debug-level log output
> 0
: enable debug-level log output
Defaults to 0
.
Protected / Constructors
GraphicsContext
Creates a new instance of GraphicsContext.
The constructor of a concrete IGraphicsContext implementation must call IGraphicsContext.RegisterRenderEffectFactory once, in order to provide the factory for the built-in render effects.
Protected / Attributes
currentRenderTargets
The current set of render targets that has been specified via IGraphicsContext.SetRenderTarget.