25 #ifndef GRAPHICS_SHADER_SHADERMATERIAL_H 26 #define GRAPHICS_SHADER_SHADERMATERIAL_H 113 #endif // GRAPHICS_SHADER_SHADERMATERIAL_H
A class holding an UTF-8 string.
bool isVariableOwned(uint32 index) const
Shader::ShaderVariableType getVariableType(uint32 index) const
Shader::ShaderObject * getFragmentShader() const
void * getVariableData(uint32 index) const
ShaderMaterial(Shader::ShaderObject *fragShader, const Common::UString &name="unnamed")
Render hint; material has no transparency.
Different to default blending. Maybe this should be extended one day.
void delMaterialVar(uint32 index)
void bindFade(Shader::ShaderProgram *program, float fade)
void setFlags(uint32 flags)
const Common::UString & getName() const
The global shader manager.
ShaderVariableType
Enum of all supported shader variable parsing and automatic binding.
Shader::ShaderObject * _fragShader
Material definitely has transparency.
uint32 getVariableCount() const
void recalcTextureUnits()
void * genMaterialVar(uint32 index)
void bindProgram(Shader::ShaderProgram *program)
Material definitely has transparency.
void bindProgramNoFade(Shader::ShaderProgram *program)
void setVariableExternal(uint32 index, void *loc, bool textureUnitRecalc=true)
const Common::UString & getVariableName(uint32 index) const
std::vector< ShaderMaterialVariable > _variableData
void setVariableInternal(uint32 index, bool textureUnitRecalc=true)
uint32 getVariableFlags(uint32 index) const