Eidolon
Public Member Functions | List of all members
Light Class Reference

#include <RenderTypes.h>

Inheritance diagram for Light:
Inheritance graph
Collaboration diagram for Light:
Collaboration graph

Public Member Functions

 Light ()
 
virtual ~Light ()
 
virtual void setPosition (vec3 &v)
 Set the position for this light, only meaningful for point and spot lights. More...
 
virtual void setDirection (vec3 &v)
 Set the direction to emit light at, only meaningful for directional and spot lights. More...
 
virtual void setDiffuse (const color &c)
 Set the diffuse color to emit. More...
 
virtual void setSpecular (const color &c)
 Set the specular color to reflect. More...
 
virtual void setDirectional ()
 Make this a directional light, illuminating all scene objects in the set direction. More...
 
virtual void setPoint ()
 Make this a point light, illuminating all objects within range as defined by the attenuation settings. More...
 
virtual void setSpotlight (real radsInner, real radsOuter, real falloff=1.0f)
 Make this a spot light with the given beam angles and falloff values. More...
 
virtual void setAttenuation (real range, real constant=0.0f, real linear=1.0f, real quad=0.0f)
 Set the attenuation values for spot and point lights. More...
 
virtual void setVisible (bool isVisible)
 Set whether this light is currently illuminating or not. More...
 
virtual bool isVisible () const
 Returns true if this light is actively illuminating the scene. More...
 

Detailed Description

A light represents a point in space which emits light either in all directions or as a spotlight, or a directed light source which illuminates all objects in the scene from one direction.

Constructor & Destructor Documentation

◆ Light()

Light ( )
inline

◆ ~Light()

virtual ~Light ( )
inlinevirtual

Member Function Documentation

◆ isVisible()

virtual bool isVisible ( ) const
inlinevirtual

Returns true if this light is actively illuminating the scene.

Reimplemented in OgreLight.

Here is the caller graph for this function:

◆ setAttenuation()

virtual void setAttenuation ( real  range,
real  constant = 0.0f,
real  linear = 1.0f,
real  quad = 0.0f 
)
inlinevirtual

Set the attenuation values for spot and point lights.

Reimplemented in OgreLight.

Here is the caller graph for this function:

◆ setDiffuse()

virtual void setDiffuse ( const color c)
inlinevirtual

Set the diffuse color to emit.

Reimplemented in OgreLight.

◆ setDirection()

virtual void setDirection ( vec3 v)
inlinevirtual

Set the direction to emit light at, only meaningful for directional and spot lights.

Reimplemented in OgreLight.

Here is the caller graph for this function:

◆ setDirectional()

virtual void setDirectional ( )
inlinevirtual

Make this a directional light, illuminating all scene objects in the set direction.

Reimplemented in OgreLight.

◆ setPoint()

virtual void setPoint ( )
inlinevirtual

Make this a point light, illuminating all objects within range as defined by the attenuation settings.

Reimplemented in OgreLight.

◆ setPosition()

virtual void setPosition ( vec3 v)
inlinevirtual

Set the position for this light, only meaningful for point and spot lights.

Reimplemented in OgreLight.

Here is the caller graph for this function:

◆ setSpecular()

virtual void setSpecular ( const color c)
inlinevirtual

Set the specular color to reflect.

Reimplemented in OgreLight.

◆ setSpotlight()

virtual void setSpotlight ( real  radsInner,
real  radsOuter,
real  falloff = 1.0f 
)
inlinevirtual

Make this a spot light with the given beam angles and falloff values.

Reimplemented in OgreLight.

◆ setVisible()

virtual void setVisible ( bool  isVisible)
inlinevirtual

Set whether this light is currently illuminating or not.

Reimplemented in OgreLight.

Here is the caller graph for this function:

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