Program Listing for File Quad.cpp
↰ Return to documentation for file (Src/GraphicsEngineOpenGL/scene/Quad.cpp
)
#include "scene/Quad.hpp"
#include <glm/glm.hpp>
#include <vector>
#include "hostDevice/GlobalValues.hpp"
Quad::Quad()
{
glGenVertexArrays(1, &q_vao);
glGenBuffers(1, &q_vbo);
glBindVertexArray(q_vao);
glBindBuffer(GL_ARRAY_BUFFER, q_vbo);
glBufferData(GL_ARRAY_BUFFER, sizeof(vertices), &vertices, GL_STATIC_DRAW);
glEnableVertexAttribArray(0);
glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 5 * sizeof(float), (void *)0);
glEnableVertexAttribArray(1);
glVertexAttribPointer(1, 2, GL_FLOAT, GL_FALSE, 5 * sizeof(float), (void *)(3 * sizeof(float)));
}
void Quad::render()
{
glBindVertexArray(q_vao);
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
glBindVertexArray(0);
}
Quad::~Quad()
{
glDeleteVertexArrays(1, &q_vao);
glDeleteBuffers(1, &q_vbo);
}