Cogs.Core
|
#include <MeshStreamsLayout.h>
Public Member Functions | |
COGSCORE_DLL_API void | updateHash () |
void | logLayout (Cogs::Logging::Log &logger) const |
Public Attributes | |
VertexFormatHandle | vertexFormats [maxStreams] |
size_t | hash = 0 |
uint32_t | numStreams = 0 |
Static Public Attributes | |
static constexpr size_t | maxStreams = 8 |
Specifies the layout and organization of the shader input data.
Definition at line 11 of file MeshStreamsLayout.h.
void Cogs::Core::MeshStreamsLayout::logLayout | ( | Cogs::Logging::Log & | logger | ) | const |
Helper function that output the layout to the log.
Definition at line 24 of file MeshStreamsLayout.cpp.
References Cogs::VertexFormat::elements, Cogs::VertexElement::format, Cogs::hash(), Cogs::VertexElement::inputType, Cogs::VertexElement::instanceStep, Cogs::VertexElement::offset, Cogs::VertexElement::semantic, Cogs::VertexElement::semanticIndex, Cogs::VertexData, and Cogs::FormatInfo::vName.
void Cogs::Core::MeshStreamsLayout::updateHash | ( | ) |
Update the hash value after struct has been modified.
Definition at line 12 of file MeshStreamsLayout.cpp.
References hash, Cogs::hash(), maxStreams, numStreams, and vertexFormats.
Referenced by Cogs::Core::SeaCurrentsSystem::initialize(), Cogs::Core::PotreeRenderer::initialize(), and Cogs::Core::Volumetric::OctRenderer::initialize().
size_t Cogs::Core::MeshStreamsLayout::hash = 0 |
Hash for the current contents, call updateHash() when contents have been modified.
Definition at line 20 of file MeshStreamsLayout.h.
Referenced by updateHash().
|
staticconstexpr |
Maximum number of independent streams we support, interleaved streams are coded as one stream.
Definition at line 14 of file MeshStreamsLayout.h.
Referenced by Cogs::Core::SeaCurrentsSystem::initialize(), and updateHash().
uint32_t Cogs::Core::MeshStreamsLayout::numStreams = 0 |
Number of enabled streams.
Definition at line 23 of file MeshStreamsLayout.h.
Referenced by Cogs::Core::SeaCurrentsSystem::initialize(), Cogs::Core::PotreeRenderer::initialize(), Cogs::Core::Volumetric::OctRenderer::initialize(), Cogs::Core::MaterialManager::loadMaterialVariant(), and updateHash().
VertexFormatHandle Cogs::Core::MeshStreamsLayout::vertexFormats[maxStreams] |
Per stream vertex format.
Definition at line 17 of file MeshStreamsLayout.h.
Referenced by Cogs::Core::SeaCurrentsSystem::initialize(), Cogs::Core::PotreeRenderer::initialize(), Cogs::Core::Volumetric::OctRenderer::initialize(), Cogs::Core::MaterialManager::loadMaterialVariant(), and updateHash().