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 173 of file RenderManager.ixx.

Public Constructors

ShaderBatch()

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

Definition at line 178 of file RenderManager.ixx.

178 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 182 of file RenderManager.ixx.

182 void clear() {
183 clearActive(this, activeIndices, batches);
184 }

getOrAdd()

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

Definition at line 179 of file RenderManager.ixx.

180 return addToBatch(handle, batches, activeIndices);
181 }

Public Member Attributes

activeIndices

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

Definition at line 177 of file RenderManager.ixx.

177 std::vector<EntityId> activeIndices;

batches

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

Definition at line 176 of file RenderManager.ixx.

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

handle

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

Definition at line 175 of file RenderManager.ixx.

175 ShaderHandle handle;

isActive

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

Definition at line 174 of file RenderManager.ixx.

174 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.