Bbop-Library 0.4.1-alpha
Opengl library to build 2d apps and game that implement a light system named Lumop
 
All Classes Files Functions Variables Enumerations Enumerator Friends Macros Pages
Loading...
Searching...
No Matches
Light Class Reference

Gère un point de lumière en fonction de son Intensité, sa couleur et son attenuation. More...

#include <lightClass.h>

Public Member Functions

 Light (Vector2f nPos, float nIntensity, Vector3i nRGB, float nConstantAttenuation, float nLinearAttenuation, float nQuadraticAttenuation)
 Constructeur de light.
 
 Light ()
 Constructeur par défault de Light.
 
Vector3i getColor ()
 Renvoie la couleur de Light.
 
void setColor (Vector3i nRGB)
 Change la couleur de Light.
 
Vector2f getPosistion ()
 Renvoie la position de Light.
 
void setPosition (Vector2f nPos)
 Change la position de Light.
 
float getIntensity ()
 Renvoie l'Intensité de Light.
 
void setIntensity (float nIntensity)
 Change l'Intensité de Light.
 
float getConstant ()
 Renvoie l'attenuation constante de Light.
 
void setConstant (float nConstant)
 Change l'attenuation constante de Light.
 
float getLinear ()
 Renvoie l'attenuation linéaire de Light.
 
void setLinear (float nLinear)
 Change l'attenuation linéaire de Light.
 
float getQuadratic ()
 Renvoie l'attenuation quadratique de Light.
 
void setQuadratic (float nQuadratic)
 Change l'attenuation quadratique de Light.
 
void setOpenAngle (float nOpenAngle)
 change l'angle d'ouverture de la light
 
float getOpenAngle ()
 Renvoie l'angle d'ouverture.
 
void setRotationAngle (float nRotationAngle)
 change l'angle de rotation de la light
 
float getRotationAngle ()
 Renvoie l'angle de rotation.
 

Detailed Description

Gère un point de lumière en fonction de son Intensité, sa couleur et son attenuation.

Todo

Créer une class DirectionnalLight pour différentier certaine lumière

Ajouter la gestion d'une shadowMap pour empêcher le passage de la lumière

Ajouter la gestion d'une lightMap sur Texture pour gérer l'éclairage des textures

Constructor & Destructor Documentation

◆ Light() [1/2]

Light::Light ( Vector2f nPos,
float nIntensity,
Vector3i nRGB,
float nConstantAttenuation,
float nLinearAttenuation,
float nQuadraticAttenuation )

Constructeur de light.

Parameters
[in]nPosPosition
[in]nIntensityIntensité
[in]nRGBcouleur
[in]nConstantAttenuationattenuation constante
[in]nLinearAttenuationattenuation linéaire
[in]nQuadraticAttenuationattenuation quadratique

◆ Light() [2/2]

Light::Light ( )

Constructeur par défault de Light.

Lumière blanche avec 0.2 d'intensité et 0.2 pour toute les attenuation

Member Function Documentation

◆ getColor()

Vector3i Light::getColor ( )

Renvoie la couleur de Light.

Returns
RGB

◆ getConstant()

float Light::getConstant ( )

Renvoie l'attenuation constante de Light.

Returns
constantAttenuation

◆ getIntensity()

float Light::getIntensity ( )

Renvoie l'Intensité de Light.

Returns
intensity

◆ getLinear()

float Light::getLinear ( )

Renvoie l'attenuation linéaire de Light.

Returns
linearAttenuation

◆ getOpenAngle()

float Light::getOpenAngle ( )

Renvoie l'angle d'ouverture.

Returns
openAngle

◆ getPosistion()

Vector2f Light::getPosistion ( )

Renvoie la position de Light.

Returns
pos

◆ getQuadratic()

float Light::getQuadratic ( )

Renvoie l'attenuation quadratique de Light.

Returns
quadraticAttenuation

◆ getRotationAngle()

float Light::getRotationAngle ( )

Renvoie l'angle de rotation.

Returns
rotationAngle

◆ setColor()

void Light::setColor ( Vector3i nRGB)

Change la couleur de Light.

Parameters
[in]nRGBCouleur

◆ setConstant()

void Light::setConstant ( float nConstant)

Change l'attenuation constante de Light.

Parameters
[in]nConstantattenuation constante

◆ setIntensity()

void Light::setIntensity ( float nIntensity)

Change l'Intensité de Light.

Parameters
[in]nIntensityIntensité

◆ setLinear()

void Light::setLinear ( float nLinear)

Change l'attenuation linéaire de Light.

Parameters
[in]nLinearattenuation linéaire

◆ setOpenAngle()

void Light::setOpenAngle ( float nOpenAngle)

change l'angle d'ouverture de la light

@parm[in] nOpenAngle Nouvelle angle d'ouverture

◆ setPosition()

void Light::setPosition ( Vector2f nPos)

Change la position de Light.

Parameters
[in]nPosPosition

◆ setQuadratic()

void Light::setQuadratic ( float nQuadratic)

Change l'attenuation quadratique de Light.

Parameters
[in]nQuadraticattenuation quadratique

◆ setRotationAngle()

void Light::setRotationAngle ( float nRotationAngle)

change l'angle de rotation de la light

@parm[in] nRotationAngle Nouvelle angle de rotation


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