GlobeEngine
ge::Light Class Reference

#include <Light.h>

Inheritance diagram for ge::Light:
ge::DirectionalLight ge::PointLight ge::SpotLight

Public Member Functions

 Light ()
 
 ~Light ()
 
void clear ()
 
void create (vmml::Vector3d _position)
 
void create (vmml::Vector3d _position, vmml::Vector3f _diffuse)
 
void create (vmml::Vector3d _position, vmml::Vector3f _diffuse, vmml::Vector3f _ambient, vmml::Vector3f _specular)
 
vmml::Vector3d getPosition () const
 
void setPosition (vmml::Vector3d _pos)
 
vmml::Vector3f getDiffuseTerm () const
 
void setDiffuseTerm (vmml::Vector3f _in)
 
vmml::Vector3f getAmbientTerm () const
 
void setAmbientTerm (vmml::Vector3f _in)
 
vmml::Vector3f getSpecularTerm () const
 
void setSpecularTerm (vmml::Vector3f _in)
 
void setDiffuseAmbientSpecularTerm (vmml::Vector3f _diffuse, vmml::Vector3f _ambient, vmml::Vector3f _specular)
 
virtual void bindUniformStruct (const std::shared_ptr< ge::Shader > _shader) const
 
void printInfo ()
 

Protected Attributes

vmml::Vector3d position
 
PhongIlluminationProperties illumination
 

Constructor & Destructor Documentation

ge::Light::Light ( )
ge::Light::~Light ( )

Member Function Documentation

void ge::Light::bindUniformStruct ( const std::shared_ptr< ge::Shader _shader) const
virtual

Reimplemented in ge::DirectionalLight.

void ge::Light::clear ( )
void ge::Light::create ( vmml::Vector3d  _position)
void ge::Light::create ( vmml::Vector3d  _position,
vmml::Vector3f  _diffuse 
)
void ge::Light::create ( vmml::Vector3d  _position,
vmml::Vector3f  _diffuse,
vmml::Vector3f  _ambient,
vmml::Vector3f  _specular 
)
vmml::Vector3f ge::Light::getAmbientTerm ( ) const
vmml::Vector3f ge::Light::getDiffuseTerm ( ) const
vmml::Vector3d ge::Light::getPosition ( ) const
vmml::Vector3f ge::Light::getSpecularTerm ( ) const
void ge::Light::printInfo ( )
void ge::Light::setAmbientTerm ( vmml::Vector3f  _in)
void ge::Light::setDiffuseAmbientSpecularTerm ( vmml::Vector3f  _diffuse,
vmml::Vector3f  _ambient,
vmml::Vector3f  _specular 
)
void ge::Light::setDiffuseTerm ( vmml::Vector3f  _in)
void ge::Light::setPosition ( vmml::Vector3d  _pos)
void ge::Light::setSpecularTerm ( vmml::Vector3f  _in)

Member Data Documentation

PhongIlluminationProperties ge::Light::illumination
protected
vmml::Vector3d ge::Light::position
protected

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