## class OSGFX_EXPORT osgFX::SpecularHighlights

> 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 &copy, const osg::CopyOp &copyop = 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 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)

### Public Members

enum TechniqueSelection

## 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 &copy, const osg::CopyOp &copyop = 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++.