Flutter Engine
The Flutter Engine
|
Describes the format and layout of vertices expected by the pipeline. While it is possible to construct these descriptors manually, it would be tedious to do so. These are usually constructed using shader information reflected using impellerc
. The usage of this class is indirectly via PipelineBuilder<VS, FS>
.
More...
#include <vertex_descriptor.h>
Public Member Functions | |
VertexDescriptor () | |
virtual | ~VertexDescriptor () |
template<size_t Size, size_t LayoutSize> | |
void | SetStageInputs (const std::array< const ShaderStageIOSlot *, Size > &inputs, const std::array< const ShaderStageBufferLayout *, LayoutSize > &layout) |
void | SetStageInputs (const std::vector< ShaderStageIOSlot > &inputs, const std::vector< ShaderStageBufferLayout > &layout) |
template<size_t Size> | |
void | RegisterDescriptorSetLayouts (const std::array< DescriptorSetLayout, Size > &inputs) |
void | SetStageInputs (const ShaderStageIOSlot *const stage_inputs[], size_t count, const ShaderStageBufferLayout *const stage_layout[], size_t layout_count) |
void | RegisterDescriptorSetLayouts (const DescriptorSetLayout desc_set_layout[], size_t count) |
const std::vector< ShaderStageIOSlot > & | GetStageInputs () const |
const std::vector< ShaderStageBufferLayout > & | GetStageLayouts () const |
const std::vector< DescriptorSetLayout > & | GetDescriptorSetLayouts () const |
std::size_t | GetHash () const override |
bool | IsEqual (const VertexDescriptor &other) const override |
bool | UsesInputAttacments () const |
virtual std::size_t | GetHash () const=0 |
virtual bool | IsEqual (const VertexDescriptor &other) const=0 |
Static Public Attributes | |
static constexpr size_t | kReservedVertexBufferIndex |
Describes the format and layout of vertices expected by the pipeline. While it is possible to construct these descriptors manually, it would be tedious to do so. These are usually constructed using shader information reflected using impellerc
. The usage of this class is indirectly via PipelineBuilder<VS, FS>
.
Definition at line 23 of file vertex_descriptor.h.
|
default |
|
virtualdefault |
const std::vector< DescriptorSetLayout > & impeller::VertexDescriptor::GetDescriptorSetLayouts | ( | ) | const |
Definition at line 73 of file vertex_descriptor.cc.
|
overridevirtual |
Implements impeller::Comparable< VertexDescriptor >.
Definition at line 47 of file vertex_descriptor.cc.
const std::vector< ShaderStageIOSlot > & impeller::VertexDescriptor::GetStageInputs | ( | ) | const |
Definition at line 63 of file vertex_descriptor.cc.
const std::vector< ShaderStageBufferLayout > & impeller::VertexDescriptor::GetStageLayouts | ( | ) | const |
Definition at line 67 of file vertex_descriptor.cc.
|
overridevirtual |
Implements impeller::Comparable< VertexDescriptor >.
Definition at line 59 of file vertex_descriptor.cc.
void impeller::VertexDescriptor::RegisterDescriptorSetLayouts | ( | const DescriptorSetLayout | desc_set_layout[], |
size_t | count | ||
) |
Definition at line 35 of file vertex_descriptor.cc.
|
inline |
Definition at line 45 of file vertex_descriptor.h.
void impeller::VertexDescriptor::SetStageInputs | ( | const ShaderStageIOSlot *const | stage_inputs[], |
size_t | count, | ||
const ShaderStageBufferLayout *const | stage_layout[], | ||
size_t | layout_count | ||
) |
Definition at line 13 of file vertex_descriptor.cc.
|
inline |
Definition at line 34 of file vertex_descriptor.h.
void impeller::VertexDescriptor::SetStageInputs | ( | const std::vector< ShaderStageIOSlot > & | inputs, |
const std::vector< ShaderStageBufferLayout > & | layout | ||
) |
Definition at line 28 of file vertex_descriptor.cc.
bool impeller::VertexDescriptor::UsesInputAttacments | ( | ) | const |
Definition at line 77 of file vertex_descriptor.cc.
|
staticconstexpr |
Definition at line 25 of file vertex_descriptor.h.