|
Muto 0.0.1
|
#include <OpenGLShader.h>
Public Member Functions | |
| void | Bind () const override |
| connects the shader program for use. | |
| virtual const std::string & | GetName () const override |
| OpenGLShader (const std::string &filepath) | |
| OpenGLShader (const std::string &name, const std::string &vertexSrc, const std::string &fragmentSrc) | |
| virtual void | SetFloat (const std::string &name, float value) override |
| Sets a single float uniform in the shader. | |
| virtual void | SetFloat3 (const std::string &name, const glm::vec3 &value) override |
| Sets a 3-component float vector uniform in the shader. | |
| virtual void | SetFloat4 (const std::string &name, const glm::vec4 &value) override |
| Sets a 4-component float vector uniform in the shader. | |
| virtual void | SetInt (const std::string &name, int value) override |
| Sets a single integer uniform in the shader. | |
| virtual void | SetIntArray (const std::string &name, int *values, uint32_t count) override |
| Sets an array of integers uniform in the shader. | |
| virtual void | SetMat4 (const std::string &name, const glm::mat4 &value) override |
| Sets a 4x4 matrix uniform in the shader. | |
| void | Unbind () const override |
| disconnects the shader program. | |
| void | UploadUniformFloat (const std::string &name, float value) |
| void | UploadUniformFloat2 (const std::string &name, const glm::vec2 &values) |
| void | UploadUniformFloat3 (const std::string &name, const glm::vec3 &values) |
| void | UploadUniformFloat4 (const std::string &name, const glm::vec4 &values) |
| void | UploadUniformInt (const std::string &name, int value) |
| void | UploadUniformMat3 (const std::string &name, const glm::mat3 &matrix) |
| void | UploadUniformMat4 (const std::string &name, const glm::mat4 &matrix) |
| ~OpenGLShader () | |
Public Member Functions inherited from Muto::Shader | |
| virtual | ~Shader ()=default |
Private Member Functions | |
| void | Compile (std::unordered_map< GLenum, std::string > &shaderSources) |
| std::unordered_map< GLenum, std::string > | PreProcess (const std::string &source) |
| std::string | ReadFile (const std::string &filepath) |
Private Attributes | |
| std::string | m_Name |
| unsigned int | m_RendererID |
Additional Inherited Members | |
Static Public Member Functions inherited from Muto::Shader | |
| static Ref< Shader > | Create (const std::string &filepath) |
| Creates a shader from a file. | |
| static Ref< Shader > | Create (const std::string &name, const std::string &vertexSrc, const std::string &fragmentSrc) |
| Creates a new shader from vertex and fragment shader source code. | |
| Muto::OpenGLShader::OpenGLShader | ( | const std::string & | filepath | ) |
References m_Name, and ReadFile().
| Muto::OpenGLShader::OpenGLShader | ( | const std::string & | name, |
| const std::string & | vertexSrc, | ||
| const std::string & | fragmentSrc | ||
| ) |
References m_Name.
| Muto::OpenGLShader::~OpenGLShader | ( | ) |
References m_RendererID.
|
overridevirtual |
|
private |
References m_RendererID.
|
private |
References Muto::ShaderTypeFromString().
|
private |
Referenced by OpenGLShader().
Sets a single float uniform in the shader.
Implements Muto::Shader.
References UploadUniformFloat().
|
overridevirtual |
Sets a 3-component float vector uniform in the shader.
Implements Muto::Shader.
|
overridevirtual |
Sets a 4-component float vector uniform in the shader.
Implements Muto::Shader.
Sets a single integer uniform in the shader.
Implements Muto::Shader.
References UploadUniformInt().
|
overridevirtual |
Sets an array of integers uniform in the shader.
Implements Muto::Shader.
|
overridevirtual |
Sets a 4x4 matrix uniform in the shader.
Implements Muto::Shader.
|
overridevirtual |
disconnects the shader program.
Implements Muto::Shader.
Referenced by SetFloat().
Referenced by SetInt().
|
private |
Referenced by GetName(), OpenGLShader(), and OpenGLShader().
Referenced by Bind(), Compile(), and ~OpenGLShader().