 |
Flutter Impeller
|
|
Go to the documentation of this file.
5 #ifndef FLUTTER_IMPELLER_SCENE_IMPORTER_VERTICES_BUILDER_H_
6 #define FLUTTER_IMPELLER_SCENE_IMPORTER_VERTICES_BUILDER_H_
11 #include "flutter/fml/macros.h"
13 #include "impeller/scene/importer/scene_flatbuffers.h"
27 static std::unique_ptr<VerticesBuilder>
MakeSkinned();
50 Scalar(
const void* source,
size_t byte_offset,
bool normalized)>;
58 std::function<void(
Scalar* destination,
77 const void* buffer_start,
78 size_t attribute_stride_bytes,
79 size_t attribute_count) = 0;
83 size_t destination_stride_bytes,
87 size_t attribute_stride_bytes,
88 size_t attribute_count);
124 const void* buffer_start,
125 size_t attribute_stride_bytes,
126 size_t attribute_count)
override;
129 std::vector<Vertex> vertices_;
158 const void* buffer_start,
159 size_t attribute_stride_bytes,
160 size_t attribute_count)
override;
163 std::vector<Vertex> vertices_;
174 #endif // FLUTTER_IMPELLER_SCENE_IMPORTER_VERTICES_BUILDER_H_
ComponentConverter convert_proc
virtual ~UnskinnedVerticesBuilder() override
void SetAttributeFromBuffer(AttributeType attribute, ComponentType component_type, const void *buffer_start, size_t attribute_stride_bytes, size_t attribute_count) override
virtual void WriteFBVertices(fb::MeshPrimitiveT &primitive) const =0
void WriteFBVertices(fb::MeshPrimitiveT &primitive) const override
virtual ~VerticesBuilder()
UnskinnedVerticesBuilder::Vertex vertex
std::function< void(Scalar *destination, const void *source, const ComponentProperties &component_props, const AttributeProperties &attribute_props)> AttributeWriter
static std::unique_ptr< VerticesBuilder > MakeSkinned()
static constexpr Color White()
UnskinnedVerticesBuilder()
virtual void SetAttributeFromBuffer(AttributeType attribute, ComponentType component_type, const void *buffer_start, size_t attribute_stride_bytes, size_t attribute_count)=0
void SetAttributeFromBuffer(AttributeType attribute, ComponentType component_type, const void *buffer_start, size_t attribute_stride_bytes, size_t attribute_count) override
void WriteFBVertices(fb::MeshPrimitiveT &primitive) const override
static void WriteAttribute(void *destination, size_t destination_stride_bytes, AttributeType attribute, ComponentType component_type, const void *source, size_t attribute_stride_bytes, size_t attribute_count)
static std::unique_ptr< VerticesBuilder > MakeUnskinned()
virtual ~SkinnedVerticesBuilder() override
std::function< Scalar(const void *source, size_t byte_offset, bool normalized)> ComponentConverter
AttributeWriter write_proc