Chrysalis - Renderer
Toggle main menu visibility
Loading...
Searching...
No Matches
BaseOpenGLProgram.h
Go to the documentation of this file.
1
#ifndef CHRYSALIS_BASEOPENGLPROGRAM_H
2
#define CHRYSALIS_BASEOPENGLPROGRAM_H
3
4
#include <glad/gl.h>
5
#include <glm/mat4x4.hpp>
6
7
namespace
Chrysalis
{
8
class
BaseOpenGLProgram
{
9
public
:
10
~BaseOpenGLProgram
();
11
void
initialize
();
12
13
void
bind
()
const
;
14
static
void
release
();
15
protected
:
16
explicit
BaseOpenGLProgram
(
const
char
* vertexShader,
const
char
* fragmentShader);
17
18
void
setUniformValue
(
const
char
*name, GLint value)
const
;
19
void
setUniformValue
(
const
char
*name, GLfloat value)
const
;
20
void
setUniformValue
(
const
char
*name,
const
glm::mat4x4& value)
const
;
21
void
setUniformValue
(
const
char
*name, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
const
;
22
private
:
23
static
GLint prepareShader(
const
char
* shaderCode, GLenum shaderType);
24
25
const
char
* vertexShader_;
26
const
char
* fragmentShader_;
27
28
GLint program_ = 0;
29
};
30
}
31
32
#endif
//CHRYSALIS_BASEOPENGLPROGRAM_H
Chrysalis::BaseOpenGLProgram::bind
void bind() const
Definition
BaseOpenGLProgram.cpp:61
Chrysalis::BaseOpenGLProgram::setUniformValue
void setUniformValue(const char *name, GLint value) const
Definition
BaseOpenGLProgram.cpp:69
Chrysalis::BaseOpenGLProgram::release
static void release()
Definition
BaseOpenGLProgram.cpp:65
Chrysalis::BaseOpenGLProgram::~BaseOpenGLProgram
~BaseOpenGLProgram()
Definition
BaseOpenGLProgram.cpp:12
Chrysalis::BaseOpenGLProgram::BaseOpenGLProgram
BaseOpenGLProgram(const char *vertexShader, const char *fragmentShader)
Definition
BaseOpenGLProgram.cpp:9
Chrysalis::BaseOpenGLProgram::initialize
void initialize()
Definition
BaseOpenGLProgram.cpp:35
Chrysalis
Definition
Area.h:4
renderer
include
BaseOpenGLProgram.h
Generated by
1.17.0