Skip to main content

ShaderBatch Struct Template

Groups material batches for one shader. More...

Declaration

template <typename TDrawMemberHandle> struct helios::engine::rendering::RenderManager::ShaderBatch<TDrawMemberHandle> { ... }

Public Constructors Index

template <typename TDrawMemberHandle>
ShaderBatch ()

Public Member Functions Index

template <typename TDrawMemberHandle>
auto getOrAdd (MaterialHandle handle) -> MaterialBatch< TDrawMemberHandle > &
template <typename TDrawMemberHandle>
voidclear ()

Public Member Attributes Index

template <typename TDrawMemberHandle>
boolisActive {false}
template <typename TDrawMemberHandle>
ShaderHandlehandle
template <typename TDrawMemberHandle>
std::vector< MaterialBatch< TDrawMemberHandle > >batches
template <typename TDrawMemberHandle>
std::vector< EntityId >activeIndices

Description

Groups material batches for one shader.

Template Parameters
TDrawMemberHandle

Draw/member handle type.

Definition at line 166 of file RenderManager.ixx.

Public Constructors

ShaderBatch()

template <typename TDrawMemberHandle>
helios::engine::rendering::RenderManager< TRenderBackend, TMemberHandle >::ShaderBatch< TDrawMemberHandle >::ShaderBatch ()
inline

Definition at line 171 of file RenderManager.ixx.

171 ShaderBatch(){batches.reserve(DEFAULT_MATERIAL_POOL_CAPACITY);}

Public Member Functions

clear()

template <typename TDrawMemberHandle>
void helios::engine::rendering::RenderManager< TRenderBackend, TMemberHandle >::ShaderBatch< TDrawMemberHandle >::clear ()
inline

Definition at line 175 of file RenderManager.ixx.

175 void clear() {
176 clearActive(this, activeIndices, batches);
177 }

getOrAdd()

template <typename TDrawMemberHandle>
MaterialBatch< TDrawMemberHandle > & helios::engine::rendering::RenderManager< TRenderBackend, TMemberHandle >::ShaderBatch< TDrawMemberHandle >::getOrAdd (MaterialHandle handle)
inline

Definition at line 172 of file RenderManager.ixx.

173 return addToBatch(handle, batches, activeIndices);
174 }

Public Member Attributes

activeIndices

template <typename TDrawMemberHandle>
std::vector<EntityId> helios::engine::rendering::RenderManager< TRenderBackend, TMemberHandle >::ShaderBatch< TDrawMemberHandle >::activeIndices

Definition at line 170 of file RenderManager.ixx.

170 std::vector<EntityId> activeIndices;

batches

template <typename TDrawMemberHandle>
std::vector<MaterialBatch<TDrawMemberHandle> > helios::engine::rendering::RenderManager< TRenderBackend, TMemberHandle >::ShaderBatch< TDrawMemberHandle >::batches

Definition at line 169 of file RenderManager.ixx.

169 std::vector<MaterialBatch<TDrawMemberHandle>> batches;

handle

template <typename TDrawMemberHandle>
ShaderHandle helios::engine::rendering::RenderManager< TRenderBackend, TMemberHandle >::ShaderBatch< TDrawMemberHandle >::handle

Definition at line 168 of file RenderManager.ixx.

168 ShaderHandle handle;

isActive

template <typename TDrawMemberHandle>
bool helios::engine::rendering::RenderManager< TRenderBackend, TMemberHandle >::ShaderBatch< TDrawMemberHandle >::isActive {false}

Definition at line 167 of file RenderManager.ixx.

167 bool isActive{false};

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


Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.9.8.