Cleanup vertex buffer builder API.

This commit is contained in:
Chinmay Garde 2021-08-18 16:48:50 -07:00 committed by Dan Field
parent d279337bdb
commit e11c3e756c
2 changed files with 13 additions and 2 deletions

View File

@ -31,10 +31,18 @@ class VertexBufferBuilder {
void SetLabel(std::string label) { label_ = std::move(label); }
void Reserve(size_t count) { return vertices_.reserve(count); }
VertexBufferBuilder& AppendVertex(VertexType_ vertex) {
vertices_.emplace_back(std::move(vertex));
return *this;
}
VertexBufferBuilder& AddVertices(
std::initializer_list<VertexType_> vertices) {
for (const auto& vertex : vertices) {
vertices_.push_back(vertex);
vertices_.reserve(vertices.size());
for (auto& vertex : vertices) {
vertices_.emplace_back(std::move(vertex));
}
return *this;
}

View File

@ -3,6 +3,7 @@
// found in the LICENSE file.
#include "impeller/entity/entity_renderer_impl.h"
#include "impeller/compositor/vertex_buffer_builder.h"
namespace impeller {
@ -39,6 +40,8 @@ bool EntityRendererImpl::RenderEntity(const Surface& surface,
return false;
}
VertexBufferBuilder<VS::PerVertexData> builder;
VS::FrameInfo frame_info;
frame_info.mvp = Matrix::MakeOrthographic(surface.GetSize()) *
entity.GetTransformation();