Main MRPT website > C++ reference for MRPT 1.4.0
List of all members | Public Member Functions | Public Attributes
mrpt::opengl::CLight Struct Reference

Detailed Description

Each of the possible lights of a 3D scene.

See also
COpenGLViewport IMPORTANT NOTE: It's the user responsibility to define unique light IDs for each light. The OpenGL standard only assures that valid IDs are 0,1,..7 Refer to standard OpenGL literature and tutorials for the meaning of each field.

Definition at line 28 of file CLight.h.

#include <mrpt/opengl/CLight.h>

Public Member Functions

 CLight ()
 Default constructor, sets default values.
 
void setPosition (float x, float y, float z, float w)
 
void setDirection (float dx, float dy, float dz)
 
void writeToStream (mrpt::utils::CStream &out) const
 
void readFromStream (mrpt::utils::CStream &in)
 
void sendToOpenGL () const
 Define the light in the current OpenGL rendering context (users normally don't need to call this explicitly, it's done from within a.
 

Public Attributes

uint8_t light_ID
 OpenGL ID (typical range: 0-7)
 
float color_ambient [4]
 
float color_diffuse [4]
 
float color_specular [4]
 
float position [4]
 [x,y,z,w]: w=0 means directional light, w=1 means a light at a real 3D position.
 
float direction [3]
 [x,y,z]
 
float constant_attenuation
 
float linear_attenuation
 
float quadratic_attenuation
 
float spot_exponent
 
float spot_cutoff
 

Constructor & Destructor Documentation

◆ CLight()

mrpt::opengl::CLight::CLight ( )

Default constructor, sets default values.

Member Function Documentation

◆ readFromStream()

void mrpt::opengl::CLight::readFromStream ( mrpt::utils::CStream in)

◆ sendToOpenGL()

void mrpt::opengl::CLight::sendToOpenGL ( ) const

Define the light in the current OpenGL rendering context (users normally don't need to call this explicitly, it's done from within a.

See also
COpenGLViewport)

◆ setDirection()

void mrpt::opengl::CLight::setDirection ( float  dx,
float  dy,
float  dz 
)

◆ setPosition()

void mrpt::opengl::CLight::setPosition ( float  x,
float  y,
float  z,
float  w 
)

◆ writeToStream()

void mrpt::opengl::CLight::writeToStream ( mrpt::utils::CStream out) const

Member Data Documentation

◆ color_ambient

float mrpt::opengl::CLight::color_ambient[4]

Definition at line 37 of file CLight.h.

◆ color_diffuse

float mrpt::opengl::CLight::color_diffuse[4]

Definition at line 38 of file CLight.h.

◆ color_specular

float mrpt::opengl::CLight::color_specular[4]

Definition at line 39 of file CLight.h.

◆ constant_attenuation

float mrpt::opengl::CLight::constant_attenuation

Definition at line 43 of file CLight.h.

◆ direction

float mrpt::opengl::CLight::direction[3]

[x,y,z]

Definition at line 42 of file CLight.h.

◆ light_ID

uint8_t mrpt::opengl::CLight::light_ID

OpenGL ID (typical range: 0-7)

Definition at line 35 of file CLight.h.

◆ linear_attenuation

float mrpt::opengl::CLight::linear_attenuation

Definition at line 44 of file CLight.h.

◆ position

float mrpt::opengl::CLight::position[4]

[x,y,z,w]: w=0 means directional light, w=1 means a light at a real 3D position.

Definition at line 41 of file CLight.h.

◆ quadratic_attenuation

float mrpt::opengl::CLight::quadratic_attenuation

Definition at line 45 of file CLight.h.

◆ spot_cutoff

float mrpt::opengl::CLight::spot_cutoff

Definition at line 47 of file CLight.h.

◆ spot_exponent

float mrpt::opengl::CLight::spot_exponent

Definition at line 46 of file CLight.h.




Page generated by Doxygen 1.9.6 for MRPT 1.4.0 SVN: at Sat Jan 21 06:46:15 UTC 2023