5#ifndef FLUTTER_IMPELLER_SCENE_GEOMETRY_H_
6#define FLUTTER_IMPELLER_SCENE_GEOMETRY_H_
10#include "flutter/fml/macros.h"
19#include "impeller/scene/importer/scene_flatbuffers.h"
27class UnskinnedVertexBufferGeometry;
39 const fb::MeshPrimitive& mesh,
136 std::shared_ptr<Texture> joints_texture_;
An object that allocates device memory.
Render passes encode render commands directed as one specific render target into an underlying comman...
GeometryType GetGeometryType() const override
void SetSize(Vector3 size)
~CuboidGeometry() override
void BindToCommand(const SceneContext &scene_context, HostBuffer &buffer, const Matrix &transform, RenderPass &pass) const override
VertexBuffer GetVertexBuffer(Allocator &allocator) const override
static std::shared_ptr< Geometry > MakeFromFlatbuffer(const fb::MeshPrimitive &mesh, Allocator &allocator)
static std::shared_ptr< Geometry > MakeVertexBuffer(VertexBuffer vertex_buffer, bool is_skinned)
virtual void BindToCommand(const SceneContext &scene_context, HostBuffer &buffer, const Matrix &transform, RenderPass &pass) const =0
virtual VertexBuffer GetVertexBuffer(Allocator &allocator) const =0
virtual void SetJointsTexture(const std::shared_ptr< Texture > &texture)
static std::shared_ptr< CuboidGeometry > MakeCuboid(Vector3 size)
virtual GeometryType GetGeometryType() const =0
~SkinnedVertexBufferGeometry() override
void BindToCommand(const SceneContext &scene_context, HostBuffer &buffer, const Matrix &transform, RenderPass &pass) const override
SkinnedVertexBufferGeometry()
VertexBuffer GetVertexBuffer(Allocator &allocator) const override
void SetJointsTexture(const std::shared_ptr< Texture > &texture) override
GeometryType GetGeometryType() const override
void SetVertexBuffer(VertexBuffer vertex_buffer)
void SetVertexBuffer(VertexBuffer vertex_buffer)
GeometryType GetGeometryType() const override
UnskinnedVertexBufferGeometry()
~UnskinnedVertexBufferGeometry() override
void BindToCommand(const SceneContext &scene_context, HostBuffer &buffer, const Matrix &transform, RenderPass &pass) const override
VertexBuffer GetVertexBuffer(Allocator &allocator) const override
static const uint8_t buffer[]
static SkColor4f transform(SkColor4f c, SkColorSpace *src, SkColorSpace *dst)
A 4x4 matrix using column-major storage.