Euphoria
|
Extends a regular Shader with uniform bindings for 3d rendering. More...
#include <materialshader.h>
Public Member Functions | |
MaterialShader () | |
bool | load (io::FileSystem *file_system, const io::FilePath &path) |
void | use_shader () |
void | set_projection (const mat4f &projection_data) |
void | set_view (const mat4f &view_data) |
void | set_model (const mat4f &model_data) |
void | setup_light (const Light &light, const vec3f &camera) |
void | set_colors (const Rgb &ambient_data, const Rgb &diffuse_data, const Rgb &specular_data, float shininess_data) |
Detailed Description
Extends a regular Shader with uniform bindings for 3d rendering.
Definition at line 40 of file materialshader.h.
Constructor & Destructor Documentation
◆ MaterialShader()
eu::render::MaterialShader::MaterialShader | ( | ) |
Definition at line 42 of file materialshader.cc.
Member Function Documentation
◆ load()
bool eu::render::MaterialShader::load | ( | io::FileSystem * | file_system, |
const io::FilePath & | path | ||
) |
Definition at line 149 of file materialshader.cc.
◆ set_colors()
void eu::render::MaterialShader::set_colors | ( | const Rgb & | ambient_data, |
const Rgb & | diffuse_data, | ||
const Rgb & | specular_data, | ||
float | shininess_data | ||
) |
Definition at line 242 of file materialshader.cc.
◆ set_model()
void eu::render::MaterialShader::set_model | ( | const mat4f & | model_data | ) |
Definition at line 203 of file materialshader.cc.
◆ set_projection()
void eu::render::MaterialShader::set_projection | ( | const mat4f & | projection_data | ) |
Definition at line 191 of file materialshader.cc.
◆ set_view()
void eu::render::MaterialShader::set_view | ( | const mat4f & | view_data | ) |
Definition at line 197 of file materialshader.cc.
◆ setup_light()
Definition at line 217 of file materialshader.cc.
◆ use_shader()
void eu::render::MaterialShader::use_shader | ( | ) |
Definition at line 185 of file materialshader.cc.
Member Data Documentation
◆ ambient
ShaderUniform eu::render::MaterialShader::ambient |
Definition at line 49 of file materialshader.h.
◆ bindings
std::vector<MaterialShaderBinding> eu::render::MaterialShader::bindings |
Definition at line 70 of file materialshader.h.
◆ default_textures
std::vector<MaterialShaderDefaultTexture> eu::render::MaterialShader::default_textures |
Definition at line 71 of file materialshader.h.
◆ diffuse
ShaderUniform eu::render::MaterialShader::diffuse |
Definition at line 50 of file materialshader.h.
◆ has_light
bool eu::render::MaterialShader::has_light |
Definition at line 54 of file materialshader.h.
◆ light_ambient
ShaderUniform eu::render::MaterialShader::light_ambient |
Definition at line 55 of file materialshader.h.
◆ light_attenuation_constant
ShaderUniform eu::render::MaterialShader::light_attenuation_constant |
Definition at line 61 of file materialshader.h.
◆ light_attenuation_linear
ShaderUniform eu::render::MaterialShader::light_attenuation_linear |
Definition at line 62 of file materialshader.h.
◆ light_attenuation_quadratic
ShaderUniform eu::render::MaterialShader::light_attenuation_quadratic |
Definition at line 63 of file materialshader.h.
◆ light_cutoff_angle_inner
ShaderUniform eu::render::MaterialShader::light_cutoff_angle_inner |
Definition at line 65 of file materialshader.h.
◆ light_cutoff_angle_outer
ShaderUniform eu::render::MaterialShader::light_cutoff_angle_outer |
Definition at line 64 of file materialshader.h.
◆ light_diffuse
ShaderUniform eu::render::MaterialShader::light_diffuse |
Definition at line 56 of file materialshader.h.
◆ light_direction
ShaderUniform eu::render::MaterialShader::light_direction |
Definition at line 59 of file materialshader.h.
◆ light_position
ShaderUniform eu::render::MaterialShader::light_position |
Definition at line 58 of file materialshader.h.
◆ light_specular
ShaderUniform eu::render::MaterialShader::light_specular |
Definition at line 57 of file materialshader.h.
◆ light_type
ShaderUniform eu::render::MaterialShader::light_type |
Definition at line 60 of file materialshader.h.
◆ model
ShaderUniform eu::render::MaterialShader::model |
Definition at line 47 of file materialshader.h.
◆ normal_matrix
ShaderUniform eu::render::MaterialShader::normal_matrix |
Definition at line 67 of file materialshader.h.
◆ projection
ShaderUniform eu::render::MaterialShader::projection |
Definition at line 45 of file materialshader.h.
◆ shader
render::ShaderProgram eu::render::MaterialShader::shader |
Definition at line 42 of file materialshader.h.
◆ shininess
ShaderUniform eu::render::MaterialShader::shininess |
Definition at line 52 of file materialshader.h.
◆ specular
ShaderUniform eu::render::MaterialShader::specular |
Definition at line 51 of file materialshader.h.
◆ view
ShaderUniform eu::render::MaterialShader::view |
Definition at line 46 of file materialshader.h.
◆ view_position
ShaderUniform eu::render::MaterialShader::view_position |
Definition at line 68 of file materialshader.h.
The documentation for this struct was generated from the following files:
- libs/render/src/render/materialshader.h
- libs/render/src/render/materialshader.cc