Simulant  21.12-574
A portable game engine for Windows, OSX, Linux, Dreamcast, and PSP
Public Member Functions | Friends | List of all members
smlt::MaterialPass Class Reference
Inheritance diagram for smlt::MaterialPass:
smlt::MaterialObject smlt::MaterialPropertyOverrider

Public Member Functions

 MaterialPass (Material *material)
 
void set_iteration_type (IterationType iteration)
 
IterationType iteration_type () const
 
GPUProgramID gpu_program_id () const
 
void set_gpu_program (GPUProgramID program)
 
uint8_t max_iterations () const
 
const Materialmaterial () const
 
- Public Member Functions inherited from smlt::MaterialObject
 MaterialObject (MaterialObject *parent)
 
void set_specular (const Colour &colour)
 
void set_ambient (const Colour &colour)
 
void set_diffuse (const Colour &colour)
 
void set_emission (const Colour &colour)
 
void set_shininess (float shininess)
 
void set_diffuse_map (TexturePtr texture)
 
void set_light_map (TexturePtr texture)
 
void set_specular_map (TexturePtr texture)
 
void set_normal_map (TexturePtr texture)
 
const Mat4diffuse_map_matrix () const
 
const Mat4light_map_matrix () const
 
const Mat4normal_map_matrix () const
 
const Mat4specular_map_matrix () const
 
void set_diffuse_map_matrix (const Mat4 &mat)
 
void set_light_map_matrix (const Mat4 &mat)
 
void set_normal_map_matrix (const Mat4 &mat)
 
void set_specular_map_matrix (const Mat4 &mat)
 
const TexturePtr & diffuse_map () const
 
const TexturePtr & light_map () const
 
const TexturePtr & normal_map () const
 
const TexturePtr & specular_map () const
 
void set_fog_density (float density)
 
void set_fog_start (float start)
 
void set_fog_end (float end)
 
void set_fog_mode (FogMode mode)
 
void set_fog_colour (const Colour &colour)
 
float fog_density () const
 
float fog_start () const
 
float fog_end () const
 
FogMode fog_mode () const
 
const Colourfog_colour () const
 
const Colourspecular () const
 
const Colourambient () const
 
const Colouremission () const
 
const Colourdiffuse () const
 
float shininess () const
 
bool is_blending_enabled () const
 
void set_blend_func (BlendType b)
 
BlendType blend_func () const
 
void set_depth_func (DepthFunc b)
 
DepthFunc depth_func () const
 
void set_depth_write_enabled (bool v)
 
bool is_depth_write_enabled () const
 
void set_cull_mode (CullMode mode)
 
CullMode cull_mode () const
 
void set_depth_test_enabled (bool v)
 
bool is_depth_test_enabled () const
 
void set_lighting_enabled (bool v)
 
bool is_lighting_enabled () const
 
void set_textures_enabled (EnabledTextureMask v)
 
int32_t textures_enabled () const
 
float point_size () const
 
void set_polygon_mode (PolygonMode mode)
 
PolygonMode polygon_mode () const
 
void set_shade_model (ShadeModel model)
 
ShadeModel shade_model () const
 
ColourMaterial colour_material () const
 
void set_colour_material (ColourMaterial cm)
 
const MaterialObjectparent_material_object () const
 
- Public Member Functions inherited from smlt::MaterialPropertyOverrider
 MaterialPropertyOverrider (const MaterialPropertyOverrider *parent)
 
template<typename T >
bool set_property_value (MaterialPropertyNameHash hsh, const char *name, const T &value)
 
template<typename T >
bool set_property_value (const char *name, const T &value)
 
bool set_property_value (const char *name, const Colour &value)
 
template<typename T >
bool property_value (const MaterialPropertyNameHash hsh, const T *&out) const
 
template<typename T >
void set_property_value (const std::string &str, const T &v)
 
template<typename T >
bool property_value (const std::string &str, const T *&out) const
 
template<typename T >
bool property_value (const char *name, const T *&out) const
 
bool clear_override (const char *name)
 
bool property_type (const char *property_name, MaterialPropertyType *type) const
 

Friends

class Material
 

Additional Inherited Members

- Protected Types inherited from smlt::MaterialPropertyOverrider
typedef BasePropertyValue MaterialPropertyOverrider::* PropertyValueMemberPtr
 
- Protected Member Functions inherited from smlt::MaterialPropertyOverrider
BasePropertyValuefind_core_property_value (const MaterialPropertyNameHash &hsh)
 
PropertyValueMemberPtr find_core_property (const MaterialPropertyNameHash &hsh) const
 
const BasePropertyValuefind_core_property_value (const MaterialPropertyNameHash &hsh) const
 
virtual void on_override (MaterialPropertyNameHash hsh, const char *name, MaterialPropertyType type)
 
virtual void on_clear_override (MaterialPropertyNameHash hsh)
 
bool check_existance (const MaterialPropertyNameHash hsh) const
 
bool check_existance (const char *property_name) const
 
bool clear_override (const unsigned hsh)
 
- Protected Attributes inherited from smlt::MaterialPropertyOverrider
PropertyValue< Vec4diffuse_property_
 
PropertyValue< Vec4ambient_property_
 
PropertyValue< Vec4emission_property_
 
PropertyValue< Vec4specular_property_
 
PropertyValue< float > shininess_property_
 
PropertyValue< float > point_size_property_
 
PropertyValue< bool > depth_write_enabled_property_
 
PropertyValue< bool > depth_test_enabled_property_
 
PropertyValue< bool > lighting_enabled_property_
 
PropertyValue< int32_t > textures_enabled_property_
 
PropertyValue< TexturePtr > diffuse_map_property_
 
PropertyValue< TexturePtr > specular_map_property_
 
PropertyValue< TexturePtr > light_map_property_
 
PropertyValue< TexturePtr > normal_map_property_
 
PropertyValue< Mat4diffuse_map_matrix_property_
 
PropertyValue< Mat4specular_map_matrix_property_
 
PropertyValue< Mat4light_map_matrix_property_
 
PropertyValue< Mat4normal_map_matrix_property_
 
PropertyValue< int32_t > blend_func_property_
 
PropertyValue< int32_t > polygon_mode_property_
 
PropertyValue< int32_t > shade_model_property_
 
PropertyValue< bool > colour_material_property_
 
PropertyValue< int32_t > cull_mode_property_
 
PropertyValue< Vec4fog_colour_property_
 
PropertyValue< float > fog_density_property_
 
PropertyValue< float > fog_start_property_
 
PropertyValue< float > fog_end_property_
 
PropertyValue< int32_t > fog_mode_property_
 
const MaterialPropertyOverriderparent_ = nullptr
 
std::unordered_map< MaterialPropertyNameHash, PropertyValue< void > > properties_
 

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