2026-10-25 23:27:19 +01:00

43 lines
839 B
C++

#pragma once
#include <glm/glm.hpp>
namespace deerith
{
class mesh_2d_t
{
public:
mesh_2d_t(const glm::vec2 *vertices, size_t vertex_size, const unsigned int *indices, size_t index_count);
void bind() const;
void draw() const;
~mesh_2d_t();
private:
unsigned int vao;
unsigned int vbo;
unsigned int ebo;
size_t index_count;
};
class mesh_3d_t
{
public:
mesh_3d_t(const glm::vec3 *vertices, size_t vertex_size, const unsigned int *indices, size_t index_count);
void bind() const;
void draw() const;
void draw_lines() const;
~mesh_3d_t();
private:
unsigned int vao;
unsigned int vbo;
unsigned int ebo;
size_t index_count;
size_t vertex_count;
};
}