Skip to main content

InstanceRenderBatchContext Struct Template

Aggregates all state required to submit one instanced render batch. More...

Declaration

template <typename TMemberHandle> struct helios::engine::scene::types::InstanceRenderBatchContext<TMemberHandle> { ... }

Public Constructors Index

template <typename TMemberHandle>
InstanceRenderBatchContext (RenderTargetHandle renderTargetHdl, ViewportHandle viewportHdl, SceneHandle sceneHdl, MeshHandle meshHdl, MaterialHandle materialHdl, ShaderHandle shaderHdl)

Constructs an instance batch context for a fixed render state tuple. More...

Public Member Attributes Index

template <typename TMemberHandle>
RenderTargetHandlerenderTargetHandle

Target render target for rendering. More...

template <typename TMemberHandle>
ViewportHandleviewportHandle

Target viewport for rendering. More...

template <typename TMemberHandle>
SceneHandlesceneHandle

Owning scene handle. More...

template <typename TMemberHandle>
MeshHandlemeshHandle

Mesh resource handle to render. More...

template <typename TMemberHandle>
MaterialHandlematerialHandle

Material resource handle to apply. More...

template <typename TMemberHandle>
ShaderHandleshaderHandle

Shader resource handle used for draw submission. More...

template <typename TMemberHandle>
std::vector< TMemberHandle >memberHandles

Scene member handles contained in this instance batch. More...

template <typename TMemberHandle>
std::vector< InstanceData< TMemberHandle > >instanceData

Per-instance payload (for example model matrices) for draw submission. More...

Description

Aggregates all state required to submit one instanced render batch.

Template Parameters
TMemberHandle

Scene member/entity handle type.

Definition at line 40 of file InstanceRenderBatchContext.ixx.

Public Constructors

InstanceRenderBatchContext()

template <typename TMemberHandle>
helios::engine::scene::types::InstanceRenderBatchContext< TMemberHandle >::InstanceRenderBatchContext (RenderTargetHandle renderTargetHdl, ViewportHandle viewportHdl, SceneHandle sceneHdl, MeshHandle meshHdl, MaterialHandle materialHdl, ShaderHandle shaderHdl)
inline

Constructs an instance batch context for a fixed render state tuple.

Parameters
renderTargetHdl

Target render target handle.

viewportHdl

Target viewport handle.

sceneHdl

Owning scene handle.

meshHdl

Mesh handle used for the batch.

materialHdl

Material handle used for the batch.

shaderHdl

Shader handle used for the batch.

Definition at line 92 of file InstanceRenderBatchContext.ixx.

References DEFAULT_INSTANCE_DATA_CAPACITY, helios::engine::scene::types::InstanceRenderBatchContext< TMemberHandle >::instanceData and helios::engine::scene::types::InstanceRenderBatchContext< TMemberHandle >::memberHandles.

Public Member Attributes

instanceData

template <typename TMemberHandle>
std::vector<InstanceData<TMemberHandle> > helios::engine::scene::types::InstanceRenderBatchContext< TMemberHandle >::instanceData

Per-instance payload (for example model matrices) for draw submission.

Definition at line 80 of file InstanceRenderBatchContext.ixx.

80 std::vector<InstanceData<TMemberHandle>> instanceData;

Referenced by helios::engine::scene::types::InstanceRenderBatchContext< TMemberHandle >::InstanceRenderBatchContext.

materialHandle

template <typename TMemberHandle>
MaterialHandle helios::engine::scene::types::InstanceRenderBatchContext< TMemberHandle >::materialHandle

Material resource handle to apply.

Definition at line 65 of file InstanceRenderBatchContext.ixx.

memberHandles

template <typename TMemberHandle>
std::vector<TMemberHandle> helios::engine::scene::types::InstanceRenderBatchContext< TMemberHandle >::memberHandles

Scene member handles contained in this instance batch.

Definition at line 75 of file InstanceRenderBatchContext.ixx.

75 std::vector<TMemberHandle> memberHandles;

Referenced by helios::engine::scene::types::InstanceRenderBatchContext< TMemberHandle >::InstanceRenderBatchContext.

meshHandle

template <typename TMemberHandle>
MeshHandle helios::engine::scene::types::InstanceRenderBatchContext< TMemberHandle >::meshHandle

Mesh resource handle to render.

Definition at line 60 of file InstanceRenderBatchContext.ixx.

renderTargetHandle

template <typename TMemberHandle>
RenderTargetHandle helios::engine::scene::types::InstanceRenderBatchContext< TMemberHandle >::renderTargetHandle

Target render target for rendering.

Definition at line 45 of file InstanceRenderBatchContext.ixx.

sceneHandle

template <typename TMemberHandle>
SceneHandle helios::engine::scene::types::InstanceRenderBatchContext< TMemberHandle >::sceneHandle

Owning scene handle.

Definition at line 55 of file InstanceRenderBatchContext.ixx.

shaderHandle

template <typename TMemberHandle>
ShaderHandle helios::engine::scene::types::InstanceRenderBatchContext< TMemberHandle >::shaderHandle

Shader resource handle used for draw submission.

Definition at line 70 of file InstanceRenderBatchContext.ixx.

viewportHandle

template <typename TMemberHandle>
ViewportHandle helios::engine::scene::types::InstanceRenderBatchContext< TMemberHandle >::viewportHandle

Target viewport for rendering.

Definition at line 50 of file InstanceRenderBatchContext.ixx.


The documentation for this struct was generated from the following file:


Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.9.8.