Files
libsst/Include/ZRenderer/ZOpenGLVertexParams.hpp
2026-04-03 00:22:39 -05:00

46 lines
931 B
C++

/*
ZOpenGLVertexParams.hpp
Author: Patrick Baggett <ptbaggett@762studios.com>
Created: 12/13/2012
Purpose:
OpenGL specific version of ZVertexParams that implements VAOs.
License:
TODO
*/
#pragma once
#ifndef _ZOPENGLVERTEXPARAMS_HPP
#define _ZOPENGLVERTEXPARAMS_HPP
#include <ZRenderer/ZVertexParams.hpp>
#include <ZRenderer/ZOpenGLShaderProgram.hpp>
#include <SST/SST_GLAPI.h>
class ZOpenGLRenderer;
class ZOpenGLVertexParams : public ZVertexParams
{
public:
ZOpenGLVertexParams(ZOpenGLRenderer* renderer) :
Renderer(renderer), vaoHandle(0), arrayBufferBound(0), elementBufferBound(0)
{
}
~ZOpenGLVertexParams();
void UpdateDirty(ZOpenGLShaderProgram* prgm);
ZOpenGLRenderer* Renderer;
GLuint vaoHandle; //Vertex Array Object (VAO) handle
GLuint arrayBufferBound; //VBO (GL_ARRAY_BUFFER) that was bound
GLuint elementBufferBound; //VBO (GL_ELEMENT_BUFFER) that was bound
};
#endif