CoriEngine
Loading...
Searching...
No Matches
Cori::Graphics::Internal::OpenGLShaderProgram Class Referencefinal

#include <GL_ShaderProgram.hpp>

Inheritance diagram for Cori::Graphics::Internal::OpenGLShaderProgram:
Collaboration diagram for Cori::Graphics::Internal::OpenGLShaderProgram:

Public Member Functions

 OpenGLShaderProgram (const std::filesystem::path &vertexPath, const std::filesystem::path &fragmentPath, const std::filesystem::path &geometryPath)
 ~OpenGLShaderProgram () override
void Bind () const override
void Unbind () const override
uint32_t GetID () const override
void SetBool (const char *name, const bool value) const override
void SetInt (const char *name, const int32_t value) const override
void SetFloat (const char *name, const float value) const override
void SetVec2 (const char *name, const glm::vec2 &value) const override
void SetVec3 (const char *name, const glm::vec3 &value) const override
void SetVec4 (const char *name, const glm::vec4 &value) const override
void SetMat2 (const char *name, const glm::mat2 &value) const override
void SetMat3 (const char *name, const glm::mat3 &value) const override
void SetMat4 (const char *name, const glm::mat4 &value) const override
std::string GetShaderNames () const override

Static Public Member Functions

static std::shared_ptr< ShaderProgramCreate (const std::filesystem::path &vertexPath, const std::filesystem::path &fragmentPath, const std::filesystem::path &geometryPath={})
static std::shared_ptr< ShaderProgramCreate (const Descriptor &descriptor)

Detailed Description

Definition at line 8 of file GL_ShaderProgram.hpp.

Constructor & Destructor Documentation

◆ OpenGLShaderProgram()

Cori::Graphics::Internal::OpenGLShaderProgram::OpenGLShaderProgram ( const std::filesystem::path & vertexPath,
const std::filesystem::path & fragmentPath,
const std::filesystem::path & geometryPath )

Definition at line 8 of file GL_ShaderProgram.cpp.

Here is the call graph for this function:

◆ ~OpenGLShaderProgram()

Cori::Graphics::Internal::OpenGLShaderProgram::~OpenGLShaderProgram ( )
override

Definition at line 90 of file GL_ShaderProgram.cpp.

Member Function Documentation

◆ Bind()

void Cori::Graphics::Internal::OpenGLShaderProgram::Bind ( ) const
overridevirtual

Implements Cori::Graphics::ShaderProgram.

Definition at line 94 of file GL_ShaderProgram.cpp.

◆ Create() [1/2]

std::shared_ptr< ShaderProgram > Cori::Graphics::ShaderProgram::Create ( const Descriptor & descriptor)
staticnodiscardinherited

Definition at line 29 of file ShaderProgram.cpp.

Here is the call graph for this function:

◆ Create() [2/2]

std::shared_ptr< ShaderProgram > Cori::Graphics::ShaderProgram::Create ( const std::filesystem::path & vertexPath,
const std::filesystem::path & fragmentPath,
const std::filesystem::path & geometryPath = {} )
staticnodiscardinherited

Definition at line 7 of file ShaderProgram.cpp.

Here is the call graph for this function:

◆ GetID()

uint32_t Cori::Graphics::Internal::OpenGLShaderProgram::GetID ( ) const
inlineoverridevirtual

Implements Cori::Graphics::ShaderProgram.

Definition at line 16 of file GL_ShaderProgram.hpp.

◆ GetShaderNames()

std::string Cori::Graphics::Internal::OpenGLShaderProgram::GetShaderNames ( ) const
inlineoverridevirtual

Implements Cori::Graphics::ShaderProgram.

Definition at line 28 of file GL_ShaderProgram.hpp.

◆ SetBool()

void Cori::Graphics::Internal::OpenGLShaderProgram::SetBool ( const char * name,
const bool value ) const
overridevirtual

Implements Cori::Graphics::ShaderProgram.

Definition at line 102 of file GL_ShaderProgram.cpp.

◆ SetFloat()

void Cori::Graphics::Internal::OpenGLShaderProgram::SetFloat ( const char * name,
const float value ) const
overridevirtual

Implements Cori::Graphics::ShaderProgram.

Definition at line 118 of file GL_ShaderProgram.cpp.

◆ SetInt()

void Cori::Graphics::Internal::OpenGLShaderProgram::SetInt ( const char * name,
const int32_t value ) const
overridevirtual

Implements Cori::Graphics::ShaderProgram.

Definition at line 110 of file GL_ShaderProgram.cpp.

◆ SetMat2()

void Cori::Graphics::Internal::OpenGLShaderProgram::SetMat2 ( const char * name,
const glm::mat2 & value ) const
overridevirtual

Implements Cori::Graphics::ShaderProgram.

Definition at line 150 of file GL_ShaderProgram.cpp.

◆ SetMat3()

void Cori::Graphics::Internal::OpenGLShaderProgram::SetMat3 ( const char * name,
const glm::mat3 & value ) const
overridevirtual

Implements Cori::Graphics::ShaderProgram.

Definition at line 158 of file GL_ShaderProgram.cpp.

◆ SetMat4()

void Cori::Graphics::Internal::OpenGLShaderProgram::SetMat4 ( const char * name,
const glm::mat4 & value ) const
overridevirtual

Implements Cori::Graphics::ShaderProgram.

Definition at line 166 of file GL_ShaderProgram.cpp.

◆ SetVec2()

void Cori::Graphics::Internal::OpenGLShaderProgram::SetVec2 ( const char * name,
const glm::vec2 & value ) const
overridevirtual

Implements Cori::Graphics::ShaderProgram.

Definition at line 126 of file GL_ShaderProgram.cpp.

◆ SetVec3()

void Cori::Graphics::Internal::OpenGLShaderProgram::SetVec3 ( const char * name,
const glm::vec3 & value ) const
overridevirtual

Implements Cori::Graphics::ShaderProgram.

Definition at line 134 of file GL_ShaderProgram.cpp.

◆ SetVec4()

void Cori::Graphics::Internal::OpenGLShaderProgram::SetVec4 ( const char * name,
const glm::vec4 & value ) const
overridevirtual

Implements Cori::Graphics::ShaderProgram.

Definition at line 142 of file GL_ShaderProgram.cpp.

◆ Unbind()

void Cori::Graphics::Internal::OpenGLShaderProgram::Unbind ( ) const
overridevirtual

Implements Cori::Graphics::ShaderProgram.

Definition at line 98 of file GL_ShaderProgram.cpp.


The documentation for this class was generated from the following files: