This effect applies additive specular highlights at fragment level (instead of OpenGL's vertex-level lighting) by using a cube map and reflective texgen.
Inheritance:
Public Methods
-
SpecularHighlights()
-
SpecularHighlights(const SpecularHighlights ©, const osg::CopyOp ©op = osg::CopyOp::SHALLOW_COPY)
-
META_Effect(osgFX, SpecularHighlights, "Specular Highlights", "This effect applies additive specular highlights at fragment level (instead " "of OpenGL's vertex-level lighting) by using a cube map and reflective texgen. " "A texture matrix is computed to rotate the cube map automatically; this makes " "the specular effect consistent with respect to view direction and light position. " "The user can choose which light should be used to compute the texture matrix.\n" "This effect requires the GL_ARB_texture_env_add extension and one of the cube map " "extensions (GL_EXT_texture_cube_map, GL_ARB_texture_cube_map or OpenGL v1.3).", "Marco Jez")
-
inline int getLightNumber() const
- get the OpenGL light number
-
inline void setLightNumber(int n)
- set the OpenGL light number that will be used in lighting computations
-
inline int getTextureUnit() const
- get the texture unit number
-
inline void setTextureUnit(int n)
- set the texture unit that will be used to apply the cube map
-
inline const osg::Vec4& getSpecularColor() const
- get the specular color
-
inline void setSpecularColor(const osg::Vec4 &color)
- set the specular color
-
inline float getSpecularExponent() const
- get the specular exponent
-
inline void setSpecularExponent(float e)
- set the specular exponent
Protected Methods
-
virtual ~SpecularHighlights()
-
SpecularHighlights& operator=(const SpecularHighlights &)
-
bool define_techniques()
Inherited from Effect:
Public Classes
-
enum TechniqueSelection
Public Methods
-
virtual inline bool isSameKindAs(const osg::Object* obj) const
-
virtual inline const char* libraryName() const
-
virtual inline const char* className() const
-
virtual const char* effectName() const
-
virtual const char* effectDescription() const
-
virtual const char* effectAuthor() const
-
inline virtual void setUpDemo()
-
virtual void traverse(osg::NodeVisitor &nv)
-
inline bool getEnabled() const
-
inline void setEnabled(bool v)
-
inline int getNumTechniques() const
-
inline Technique* getTechnique(int i)
-
inline const Technique* getTechnique(int i) const
-
inline int getSelectedTechnique() const
-
inline void selectTechnique(int i)
-
inline void addTechnique(Technique* tech)
-
inline void dirtyTechniques()
-
inline void inherited_traverse(osg::NodeVisitor &nv)
Documentation
This effect applies additive specular highlights at fragment level (instead
of OpenGL's vertex-level lighting) by using a cube map and reflective texgen.
A texture matrix is computed to rotate the cube map automatically; this makes
the specular effect consistent with respect to view direction and light position.
The user can choose which light should be used to compute the texture matrix.
This effect requires the GL_ARB_texture_env_add extension and one of the cube map
extensions (GL_EXT_texture_cube_map, GL_ARB_texture_cube_map or OpenGL v1.3).
- SpecularHighlights()
- SpecularHighlights(const SpecularHighlights ©, const osg::CopyOp ©op = osg::CopyOp::SHALLOW_COPY)
- META_Effect(osgFX, SpecularHighlights, "Specular Highlights", "This effect applies additive specular highlights at fragment level (instead " "of OpenGL's vertex-level lighting) by using a cube map and reflective texgen. " "A texture matrix is computed to rotate the cube map automatically; this makes " "the specular effect consistent with respect to view direction and light position. " "The user can choose which light should be used to compute the texture matrix.\n" "This effect requires the GL_ARB_texture_env_add extension and one of the cube map " "extensions (GL_EXT_texture_cube_map, GL_ARB_texture_cube_map or OpenGL v1.3).", "Marco Jez")
- virtual ~SpecularHighlights()
- SpecularHighlights& operator=(const SpecularHighlights &)
- bool define_techniques()
- inline int getLightNumber() const
- get the OpenGL light number
- inline void setLightNumber(int n)
- set the OpenGL light number that will be used in lighting computations
- inline int getTextureUnit() const
- get the texture unit number
- inline void setTextureUnit(int n)
- set the texture unit that will be used to apply the cube map
- inline const osg::Vec4& getSpecularColor() const
- get the specular color
- inline void setSpecularColor(const osg::Vec4 &color)
- set the specular color
- inline float getSpecularExponent() const
- get the specular exponent
- inline void setSpecularExponent(float e)
- set the specular exponent
- This class has no child classes.
Alphabetic index HTML hierarchy of classes or Java
This page was generated with the help of DOC++.