10 glm::vec4
color = glm::vec4(1.0f);
18 glm::vec4
color = glm::vec4(1.0f);
50 virtual void Bind()
const = 0;
52 virtual void SetValue(
const std::string& name,
float value) = 0;
54 virtual void SetValue(
const std::string& name,
int value) = 0;
56 virtual void SetValue(
const std::string& name, glm::mat4 value) = 0;
58 virtual void SetValue(
const std::string& name, glm::vec2 value) = 0;
60 virtual void SetValue(
const std::string& name, glm::vec3 value) = 0;
62 virtual void SetValue(
const std::string& name, glm::vec4 value) = 0;
64 virtual void SetValue(
const std::string& name,
unsigned int value) = 0;
68 virtual unsigned int GetID()
const = 0;
76 std::unordered_map<std::string, unsigned int>
uniforms;
float thickness
Definition: shader.h:11
glm::vec4 color
Definition: shader.h:10
int bEnabled
Definition: shader.h:9
struct ShaderEffect::@3 Shadow
glm::vec2 pixel_offset
Definition: shader.h:19
struct ShaderEffect::@4 Glow
struct ShaderEffect::@2 Outline
Shader Abstract class.
Definition: shader.h:44
virtual void SetValue(const std::string &name, glm::vec2 value)=0
virtual ~Shader()=default
virtual void Bind() const =0
virtual bool IsValid() const =0
virtual void SetValue(const std::string &name, glm::mat4 value)=0
virtual void SetValue(const std::string &name, float value)=0
std::unordered_map< std::string, unsigned int > uniforms
Definition: shader.h:76
virtual unsigned int GetID() const =0
virtual void SetValue(const std::string &name, glm::vec4 value)=0
virtual void SetValue(const std::string &name, int value)=0
virtual void SetValue(const std::string &name, glm::vec3 value)=0
virtual void SetValue(const std::string &name, unsigned int value)=0
unsigned int id
Definition: shader.h:74