GpuBackend
Interface for interacting with the GPU backend (Vulkan, DirectX, etc.).
Classes
-
GpuPipelineParameterSetLayout— Contains information about a single GPU program parameter set. -
GpuPipelineParameterLayout— Contains information about all GPU program parameters required when binding a particular GPU pipeline for execution. -
GpuParameterSetPool— A pool for allocating GPU parameter sets. -
render::GpuQueryPool— Pool used for allocating GPU queries of a particular type. -
SamplerState— Defines the behaviour of a texture sampler on the GPU. -
GpuQueue— Specifies a queue on which command buffers can be submitted on. -
GpuDevice— Provides access to a particular GPU device. -
TGpuBufferSuballocation— Represents a single sub-allocation within a specific GpuBuffer. -
TGpuBufferMappedScope— RAII wrapper returned by GpuBuffer::Map operation. -
GpuBuffer— Defines a buffer that can be used for operations on the GPU. -
render::GpuBuffer— Defines a buffer that can be used for operations on the GPU. -
TGpuParameterPrimitive— A handle that allows you to set a GpuProgram parameter. -
TGpuParameterStruct— A handle that allows you to set a GpuProgram parameter. -
TGpuParameterSampledTexture— A handle that allows you to set a GpuProgram parameter. -
TGpuParameterStorageTexture— A handle that allows you to set a GpuProgram parameter. -
TGpuParameterStorageBuffer— A handle that allows you to set a GpuProgram parameter. -
TGpuParameterUniformBuffer— A handle that allows you to set a GpuProgram parameter. -
TGpuParameterSampler— A handle that allows you to set a GpuProgram parameter. -
GpuParameterSet— Contains descriptions for all parameters in a set of programs (ones for each stage) and allows you to write and read those parameters. -
render::GpuParameterSet— Render thread version of GpuParameterSet. -
RenderTargetProperties— Contains various properties that describe a render target. -
RenderTarget— Render target is a frame buffer or a texture that the render system renders the scene to. -
render::RenderTarget— Provides access to internal render target implementation usable only from the render thread. -
VideoMode— Video mode contains information about how a render window presents its information to an output device like a monitor. -
VideoOutputInfo— Contains information about a video output device, including a list of all available video modes. -
VideoModeInfo— Contains information about available output devices (for example monitor) and their video modes. -
RenderWindowProperties— Contains various properties that describe a render window. -
RenderWindow— Operating system window with a specific position, size and style. -
render::RenderWindow— Render thread counterpart of RenderWindow. -
render::IRenderWindowSurface— Interface that acts as a bridge between a RenderWindow and a GpuBackend. -
VertexElement— Describes a single vertex element in a vertex declaration. -
VertexDescription— Contains information about layout of vertices in a buffer. -
GpuProgram— Contains a GPU program such as vertex or fragment program which gets compiled from the provided source code. -
GpuDeviceCapabilities— Information about hardware (GPU) and driver capabilities, such as supported features, limits and conventions. -
render::TextureView— Texture views allow you to reference only a party of a texture. -
render::GpuCommandBufferPool— Allows creation of command buffers. -
render::GpuCommandBuffer— Contains a list of render API commands that can be queued for execution on the GPU. -
GpuGraphicsPipelineState— Describes the state of the GPU pipeline that determines how are primitives rendered. -
GpuComputePipelineState— Describes the state of the GPU pipeline that determines how are compute programs executed. -
render::VertexData— Container class consisting of a set of vertex buffers and their declaration. -
RenderTexture— Render target specialization that allows you to render into one or multiple textures. -
render::RenderTexture— Render proxy variant of render texture. -
render::EventQuery— Represents a GPU query that gets signaled when GPU starts processing the query. -
GpuBackend— Provides access to all available GPU devices.
Structs
-
GpuDataParameterTypeInformation— Contains data about a type used for GPU data parameters. -
GpuDataParameterTypeInformationLookup— Contains a lookup table for various information of all types used for data GPU parameters. -
GpuObjectParameterTypeInformation— Returns information about GPU parameter types. -
UVWAddressingMode— Texture addressing mode, per component. -
TextureSurface— References a subset of surfaces within a texture. -
GpuUniformBufferMemberInformation— Describes a single GPU program data (for example int, float, Vector2) parameter. -
GpuObjectParameterInformation— Describes a single GPU program object (for example texture, sampler state) parameter. -
GpuUniformBufferInformation— Describes a GPU program uniform buffer (collection of GPU program data parameters). -
GpuProgramParameterDescription— Contains information about all parameters (i.e. uniforms) for a single GPU program, including data/object parameters and uniform buffers. -
GpuPipelineParameterLayoutInformation— Stores parameter description for all GPU programs used in a particular GPU pipeline. -
GpuPipelineParameterLayoutCreateInformation— Descriptor structure used for initialization of a GpuPipelineParameterLayout. -
GpuParameterBinding— Binding location for a single GPU program parameter. -
UniformInformation— Information how a resource maps to a certain uniform set/slot. -
GpuParameterSetPoolInformation— Information describing GpuParameterSetPool. -
GpuParameterSetPoolCreateInformation— Creation information for GpuParameterSetPool. -
render::GpuQueryId— Uniquely identifies a GPU query allocated from a particular pool. -
render::GpuQueryPoolCreateInformation— Descriptor structure used for initialization of a GpuQueryPool. -
SamplerStateInformation— Information describing a SamplerState. -
SamplerStateCreateInformation— Descriptor structure used for initialization of a SamplerState. -
GpuQueueId— Uniquely represents a GPU queue. -
GpuQueueMask— Mask that represents zero or multiple GPU queues. -
GpuBufferInformation— Descriptor structure used for a GpuBuffer. -
GpuBufferInformation::VertexBufferInformation— Describes an array of vertices and their properties. -
GpuBufferInformation::IndexBufferInformation— Describes an array of indices that let the renderer know how the vertices connect into triangles. -
GpuBufferInformation::UniformBufferInformation— Describes a buffer containing parameters used for controlling execution of a GPU program. -
GpuBufferInformation::StagingBufferInformation— Describes a buffer used for copying from or to a buffer stores in non-CPU accessible memory. -
GpuBufferInformation::SimpleStorageBufferInformation— Describes a buffer containing of array of primitive types using a specific format. -
GpuBufferInformation::StructuredStorageBufferInformation— Describes a buffer containing of array of structures. -
GpuBufferCreateInformation— Descriptor structure used for initialization of a GpuBuffer. -
render::GpuBufferUtility— Provides various utility operations on GpuBuffer. -
GpuBufferViewInformation— Information that controls how is the buffer viewed when bound to a GPU pipeline. -
RenderSurfaceInformation— Structure that contains information about what part of the texture represents the render surface. -
render::RenderSurfaceInformation— Structure that contains information about what part of the texture represents the render surface. -
RenderWindowCreateInformation— Structure that is used for initializing a render window. -
render::RenderWindowSurfaceCreateInformation— Structure used for initializing an implementation of RenderWindowSurface. -
GpuProgramCreateInformation— Descriptor structure used for initialization of a GpuProgram. -
GpuProgramBytecode— A GPU program compiled to an intermediate bytecode format, as well as any relevant meta-data that could be extracted from that format. -
GpuBackendConventions— Conventions used for a specific render backend. -
GpuDriverVersion— Holds data about render system driver version. -
SubMesh— Data about a sub-mesh range and the type of primitives contained in the range. -
render::TextureViewInformation— Data describing a texture view. -
render::GpuCommandBufferPoolInformation— Object describing a GpuCommandBufferPool. -
render::GpuCommandBufferPoolCreateInformation— Descriptor structure used for initialization of a GpuCommandBufferPool. -
render::GpuCommandBufferInformation— Object describing a GpuCommandBuffer. -
render::GpuCommandBufferCreateInformation— Descriptor structure used for initialization of a GpuCommandBufferPool. -
render::GpuBarrier— Describes common fields for both buffer and texture barriers. -
render::GpuBufferBarrier— Describes a barrier for a GpuBuffer. -
render::GpuSurfaceBarrier— Describes a common set of barrier information used both by Texture and RenderTarget barrier. -
render::GpuTextureBarrier— Describes a barrier for a Texture. -
render::GpuRenderTargetBarrier— Describes a barrier for a RenderTarget. -
render::GpuBarriers— A list of buffer, texture, and render target barriers. -
render::RenderPassCreateInformation— Descriptor structure used for initialization of a render pass. -
RenderTargetBlendStateInformation— Describes blend states for a single render target. -
BlendStateInformation— Describes a graphics pipeline blend state. -
RasterizerStateInformation— Describes a graphics pipeline rasterizer state. -
DepthStencilStateInformation— Describes a depth stencil state on a graphics pipeline. -
GpuGraphicsPipelineStateInformation— Descriptor structure describing a GPU graphics pipeline state. -
GpuGraphicsPipelineStateCreateInformation— Descriptor structure used for initializing a GPU graphics pipeline state. -
GpuComputePipelineStateInformation— Descriptor structure describing a GPU compute pipeline state. -
GpuComputePipelineStateCreateInformation— Descriptor structure used for initializing a GPU compute pipeline state. -
RenderTextureInformation— Structure that describes a render texture color and depth/stencil surfaces. -
RenderTextureCreateInformation— Descriptor structure used for initialization of a RenderTexture. -
render::RenderTextureInformation— Structure that describes a render texture color and depth/stencil surfaces. -
render::RenderTextureCreateInformation— Descriptor structure used for initialization of a RenderTexture.
Enums
-
BlendFactor— Factors used when blending new pixels with existing pixels. -
BlendOperation— Operations that determines how are blending factors combined. -
CompareFunction— Comparison functions used for the depth/stencil buffer. -
TextureAddressingMode— Types of texture addressing modes that determine what happens when texture coordinates are outside of the valid range. -
FilterType— Types of available filtering situations. -
FilterOptions— Filtering options for textures. -
FrameBufferType— Types of frame buffers. -
CullingMode— Types of culling that determine how (and if) hardware discards faces with certain winding order. -
PolygonMode— Polygon mode to use when rasterizing. -
StencilOperation— Types of action that can happen on the stencil buffer. -
DrawOperationType— Describes operation that will be used for rendering a certain set of vertices. -
IndexType— Type of mesh indices used, used for determining maximum number of vertices in a mesh. -
GpuProgramType— Types of programs that may run on GPU. -
GpuProgramStageBit— All possible GPU program stages as a bit mask. -
GpuBufferFormat— Types of valid formats used for standard GPU buffers. -
GpuViewUsage— Different types of GPU views that control how GPU sees a hardware buffer. -
GpuParameterType— Types of GPU parameters (i.e. uniform type). -
GpuDataParameterType— Type of GPU data parameters that can be used as inputs to a GPU program. -
GpuParameterObjectType— Type of GPU object parameters that can be used as inputs to a GPU program. -
GpuQueueType— Specifies the type of GPU queue. -
RenderSurfaceMaskBits— Bits that map to a specific surface of a render target. -
GpuParameterSetPoolMode— Mode for parameter set pool operation. -
render::GpuQueryType— Types of supported GPU queries. -
render::GpuQueryFlag— Flags that may be used to control individual queries. -
render::GpuPipelineStatisticsQueryBit— Types of data that can be captured by the pipeline statistics query. -
GpuAccessFlag— Flags that determine how is a resource being accessed by the GPU. -
GpuObjectCreateFlag— Flags that control creation of GPU objects via GpuDevice factory methods. -
GpuBufferType— Determines in what way will a GpuBuffer be used in. -
GpuBufferFlag— Flags that determine how a GpuBuffer behaves. -
GpuMapOption— Options for GPU buffer mapping operations. -
render::GpuBufferWriteFlag— Flags used to control the GPU buffer writes. -
render::RenderTarget::FrameBuffer— Frame buffer type when double-buffering is used. -
VertexElementSemantic— Semantics that are used for identifying the meaning of vertex buffer elements. -
VertexElementType— Types used to identify base types of vertex element contents. -
GpuCapabilityCategory— Categories of render API capabilities. -
GpuCapabilityBits— Enum describing the different hardware capabilities we can check for. -
GpuBackendConventions::Axis -
GpuBackendConventions::MatrixOrder -
GPUVendor— Types of GPU vendors. -
render::GpuCommandBufferState— Possible states that a command buffer can be in. -
render::GpuResourceUseFlag— Bits that represent different ways a GPU resource can be used. -
render::ImageLayout— Image layout - determines how an image is accessed in GPU operations.
Internal
Symbols intended for engine-internal use. Not part of the public API.
Classes
-
render::TextureView::HashFunction -
render::TextureView::EqualFunction -
render::GpuCommandBufferPoolRing— Ring buffer of command buffer pools for managing multiple in-flight frames. -
GpuTransferBufferHelper— Helper that manages automatic creation and submission of transfer command buffers. -
GpuParametersSetBase— Contains functionality common for both main and render thread versions of GpuParameterSet. -
TGpuParameterSet— Templated version of GpuParameterSet that contains functionality for both main and render thread versions of stored data. -
GpuBackendFactory— Factory class registered when a plugin supporting a new GpuBackend is loaded. -
GpuBackendManager— Manager that handles GPU backend initialization. -
MeshManager— Manager that handles creation of Meshes. -
RenderWindowManager— Handles creation and internal updates relating to render windows. -
HeadlessRenderWindow— A headless render window that doesn't create an OS window. -
render::HeadlessRenderWindow— Render thread counterpart of HeadlessRenderWindow.
Structs
-
GpuTransferBufferHelper::ThreadData— Per-thread data containing transfer buffer state. -
TGpuDataParamInfo— Helper structure whose specializations convert an engine data type into a GPU program data parameter type. -
TGpuParameterSet::TextureData— Data for a single bound texture. -
TGpuParameterSet::StorageBufferData— Data for a single bound storage buffer. -
TGpuParameterSet::UniformBufferData— Data for a single bound uniform buffer.
Enums
-
WindowEventType— Types of events that a RenderWindow can be notified of. -
RenderWindowDirtyFlag— Signals which portion of a render window is dirty.