7#include "VertexFormat.h"
8#include <math/math.hpp>
26 [[nodiscard]]
static std::shared_ptr<VertexBuffer>
create(
const std::vector<T>& data,
const VertexFormat& fmt,
38 [[nodiscard]]
static std::shared_ptr<VertexBuffer>
create(
const void* data,
size_t size,
const VertexFormat& fmt,
44 [[nodiscard]]
size_t get_size()
const;
56 virtual Buffer& get_buffer() = 0;
71 return create(data.data(), data.size() *
sizeof(T), fmt, usage);
缓冲区.
Definition: Buffer.h:13
Usage
缓冲区使用方式.
Definition: Buffer.h:29
顶点缓冲区.
Definition: VertexBuffer.h:16
size_t get_size() const
获取缓冲区大小, 单位: 字节.
Definition: VertexBuffer.cpp:27
const VertexFormat & get_format() const
获取顶格式.
Definition: VertexBuffer.cpp:37
static std::shared_ptr< VertexBuffer > create(const std::vector< T > &data, const VertexFormat &fmt, Buffer::Usage usage=Buffer::Usage::Static)
创建 VertexBuffer.
Definition: VertexBuffer.h:68
uint32_t get_count() const
获取顶点数.
Definition: VertexBuffer.cpp:32