Lagrange
Material Class Reference

Public Member Functions

 Material (Registry &r, StringID shader_id, const ShaderDefines &shader_defines={})
 
StringID shader_id () const
 
void set_vec4 (const std::string &name, const Eigen::Vector4f &vec)
 
void set_vec4 (StringID id, const Eigen::Vector4f &vec)
 
void set_vec4_array (const std::string &name, const Eigen::Vector4f *vectors, size_t N)
 
void set_vec4_array (StringID id, const Eigen::Vector4f *vectors, size_t N)
 
void set_mat4 (const std::string &name, const Eigen::Matrix4f &matrix)
 
void set_mat4 (StringID id, const Eigen::Matrix4f &matrix)
 
void set_mat4_array (const std::string &name, const Eigen::Matrix4f *matrices, size_t N)
 
void set_mat4_array (StringID id, const Eigen::Matrix4f *matrices, size_t N)
 
void set_color (const std::string &name, Color color)
 
void set_color (StringID id, Color color)
 
const Color get_color (StringID id)
 
const Color get_color (const std::string &name)
 
void set_texture (const std::string &name, std::shared_ptr< Texture > texture)
 
void set_texture (StringID id, std::shared_ptr< Texture > texture)
 
std::shared_ptr< Textureget_texture (StringID id)
 
std::shared_ptr< Textureget_texture (const std::string &name)
 
void set_float (const std::string &name, float value)
 
void set_float (StringID id, float value)
 
float get_float (StringID id)
 
float get_float (const std::string &name)
 
void set_int (const std::string &name, int value)
 
void set_int (StringID id, int value)
 
void set_bool (const std::string &name, bool value)
 
void set_bool (StringID id, bool value)
 

Public Attributes

std::unordered_map< StringID, int > int_values
 
std::unordered_map< StringID, float > float_values
 
std::unordered_map< StringID, bool > bool_values
 
std::unordered_map< StringID, Colorcolor_values
 
std::unordered_map< StringID, ShaderTextureValuetexture_values
 
std::unordered_map< StringID, Eigen::Matrix4f > mat4_values
 
std::unordered_map< StringID, std::vector< Eigen::Matrix4f > > mat4_array_values
 
std::unordered_map< StringID, Eigen::Vector4f > vec4_values
 
std::unordered_map< StringID, std::vector< Eigen::Vector4f > > vec4_array_values
 

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