Class ShaderProgram#
Defined in File ShaderProgram.ixx
Inheritance Relationships#
Derived Types#
public ComputeShaderProgram(Class ComputeShaderProgram)public GeometryPassShaderProgram(Class GeometryPassShaderProgram)public LightingPassShaderProgram(Class LightingPassShaderProgram)public OmniDirShadowShaderProgram(Class OmniDirShadowShaderProgram)
Class Documentation#
-
class ShaderProgram#
Subclassed by ComputeShaderProgram, GeometryPassShaderProgram, LightingPassShaderProgram, OmniDirShadowShaderProgram
Public Functions
-
ShaderProgram()#
-
ShaderProgram(const ShaderProgram&) = default#
-
void create_from_files(const char *vertex_location, const char *fragment_location)#
-
void create_from_files(const char *vertex_location, const char *geometry_location, const char *fragment_location)#
-
void create_computer_shader_program_from_file(const char *compute_location)#
-
bool setUniformVec3(glm::vec3 uniform, const std::string &shaderUniformName)#
-
bool setUniformFloat(GLfloat uniform, const std::string &shaderUniformName)#
-
bool setUniformInt(GLint uniform, const std::string &shaderUniformName)#
-
bool setUniformMatrix4fv(glm::mat4 matrix, const std::string &shaderUniformName)#
-
bool setUniformBlockBinding(GLuint block_binding, const std::string &shaderUniformName) const#
-
GLuint get_id() const#
-
void use_shader_program() const#
-
void validate_program() const#
-
~ShaderProgram()#
Protected Functions
-
void compile_shader_program(const char *vertex_code, const char *fragment_code)#
-
void compile_shader_program(const char *vertex_code, const char *geometry_code, const char *fragment_code)#
-
void compile_compute_shader_program(const char *compute_code)#
-
void compile_program()#
-
GLuint getUniformLocation(const std::string &shaderUniformName, bool &validity)#
-
void clear_shader_program()#
-
ShaderProgram()#