From 7fbe0814d52ba861a02b0560d4e6872845ef241e Mon Sep 17 00:00:00 2001 From: ccolin Date: Tue, 22 Dec 2020 13:15:23 +0100 Subject: initial commit --- src/opengl_mesh.cc | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 src/opengl_mesh.cc (limited to 'src/opengl_mesh.cc') diff --git a/src/opengl_mesh.cc b/src/opengl_mesh.cc new file mode 100644 index 0000000..cca91da --- /dev/null +++ b/src/opengl_mesh.cc @@ -0,0 +1,19 @@ +#include "opengl_mesh.hh" + +#include "opengl_widget.hh" + + +OpenGLMesh::OpenGLMesh(QVector verts) { + OpenGLWidget::instance->makeCurrent(); + QOpenGLFunctions_4_4_Core *glf = OpenGLWidget::instance; + nverts = verts.size() / 3; + glf->glGenVertexArrays(1, &vao); + glf->glGenBuffers(1, &vbo); + glf->glBindVertexArray(vao); + glf->glBindBuffer(GL_ARRAY_BUFFER, vbo); + glf->glBufferData(GL_ARRAY_BUFFER, nverts * 3 * sizeof (GLfloat), verts.data(), GL_STATIC_DRAW); + glf->glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 0, 0); + glf->glEnableVertexAttribArray(0); + glf->glBindVertexArray(0); + OpenGLWidget::instance->doneCurrent(); +} -- cgit v1.2.3-70-g09d2