Inheritance diagram for osg::Material:
Public Types | |
enum | Face { FRONT = GL_FRONT, BACK = GL_BACK, FRONT_AND_BACK = GL_FRONT_AND_BACK } |
enum | ColorMode { AMBIENT = GL_AMBIENT, DIFFUSE = GL_DIFFUSE, SPECULAR = GL_SPECULAR, EMISSION = GL_EMISSION, AMBIENT_AND_DIFFUSE = GL_AMBIENT_AND_DIFFUSE, OFF } |
Public Member Functions | |
Material () | |
Material (const Material &mat, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
META_StateAttribute (osg, Material, MATERIAL) | |
virtual int | compare (const StateAttribute &sa) const |
Material & | operator= (const Material &rhs) |
virtual bool | getModeUsage (ModeUsage &usage) const |
virtual void | apply (State &state) const |
void | setColorMode (ColorMode mode) |
ColorMode | getColorMode () const |
void | setAmbient (Face face, const Vec4 &ambient) |
const Vec4 & | getAmbient (Face face) const |
bool | getAmbientFrontAndBack () const |
void | setDiffuse (Face face, const Vec4 &diffuse) |
const Vec4 & | getDiffuse (Face face) const |
bool | getDiffuseFrontAndBack () const |
void | setSpecular (Face face, const Vec4 &specular) |
const Vec4 & | getSpecular (Face face) const |
bool | getSpecularFrontAndBack () const |
void | setEmission (Face face, const Vec4 &emission) |
const Vec4 & | getEmission (Face face) const |
bool | getEmissionFrontAndBack () const |
void | setShininess (Face face, float shininess) |
float | getShininess (Face face) const |
bool | getShininessFrontAndBack () const |
void | setTransparency (Face face, float trans) |
void | setAlpha (Face face, float alpha) |
Protected Member Functions | |
virtual | ~Material () |
Protected Attributes | |
ColorMode | _colorMode |
bool | _ambientFrontAndBack |
Vec4 | _ambientFront |
Vec4 | _ambientBack |
bool | _diffuseFrontAndBack |
Vec4 | _diffuseFront |
Vec4 | _diffuseBack |
bool | _specularFrontAndBack |
Vec4 | _specularFront |
Vec4 | _specularBack |
bool | _emissionFrontAndBack |
Vec4 | _emissionFront |
Vec4 | _emissionBack |
bool | _shininessFrontAndBack |
float | _shininessFront |
float | _shininessBack |
|
|
|
|
|
|
|
Copy constructor using CopyOp to manage deep vs shallow copy. |
|
|
|
apply the OpenGL state attributes. The global state for the current OpenGL context is passed in to allow the StateAttribute to obtain details on the the current context and state. Implements osg::StateAttribute. |
|
return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs. Implements osg::StateAttribute. |
|
|
|
|
|
|
|
|
|
|
|
Get the emission value for specified face. |
|
Return whether emission values are equal for front and back faces or not. |
|
|
|
Get the shininess value for specified face. |
|
Return whether shininess values are equal for front and back faces or not. |
|
Get the specular value for specified face. |
|
Return whether specular values are equal for front and back faces or not. |
|
|
|
|
|
Set the alpha value of ambient, diffuse, specular and emission colors. Valid transparency range is 0.0 to 1.0. |
|
|
|
|
|
|
|
Set emission value of specified face(s) of the material, valid emission[0..3] range is 0.0 to 1.0. |
|
Set shininess of specified face(s) of the material. valid shininess range is 0.0 to 128.0. |
|
Set specular value of specified face(s) of the material, valid specular[0..3] range is 0.0 to 1.0. |
|
Set the alpha value of ambient, diffuse, specular and emission colors of specified face, to 1-transparency. Valid transparency range is 0.0 to 1.0. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|