Tapioca Engine 1.0
Motor de videojuegos creado por Bubble Studios
|
Wrapper de la clase LightSpotlight de Ogre. Más...
#include <LightSpotlight.h>
Métodos públicos | |
void | setInnerAngle (float degrees) |
Cambia el tamano de la zona interior de la luz a partir de su angulo. | |
void | setOuterAngle (float degrees) |
Cambia el tamano de la zona exterior de la luz a partir de su angulo. | |
void | setFalloff (float falloff) |
Caida de la intensidad de la luz desde la zona interior hasta la exterior. | |
void | setNearClipDistance (float distance) |
Desde que punto comienza a emitir la luz. Por ejemplo, si emite desde el punto de origen o si se recorta la parte principal, de modo que quedaria como un cono truncado. | |
void | setAttenuation (float maximumRange, float constant, float linear, float quadratic) |
Cambia la atenuacion de la luz, es decir, como disminuye con la distancia. | |
void | setDirection (Vector3 direction) |
Cambia la direccion de la luz. | |
Métodos públicos heredados de Tapioca::Light | |
virtual | ~Light () |
Destructor vacio. | |
void | setColor (const Vector4 color) |
Establece el color de la luz. | |
void | setPowerScale (const float power) |
Cambia la potencia de la luz. Por defecto es 1.0f. | |
Métodos públicos heredados de Tapioca::RenderObject | |
virtual | ~RenderObject () |
Se libera del nodo al que pertenecia y se destruye el objeto. | |
void | setVisible (const bool enable) |
Cambia la visibilidad del objeto. | |
bool | isVisible () const |
Devuelve la visibilidad del objeto. | |
Otros miembros heredados | |
Métodos protegidos heredados de Tapioca::Light | |
Light (Ogre::SceneManager *const scnMngr, RenderNode *const node, const Vector4 color) | |
Constructor de la clase Light. | |
Métodos protegidos heredados de Tapioca::RenderObject | |
Ogre::MovableObject * | getMovObject () const |
Devuelve el movable object. | |
RenderObject (RenderNode *const node, Ogre::SceneManager *const scnMngr) | |
Constructor de la clase RenderObject. | |
void | init (Ogre::MovableObject *const movObject) |
Inicializa el movableObject. | |
void | detachFromNode () |
Quita este objeto del nodo. | |
Atributos protegidos heredados de Tapioca::Light | |
Ogre::Light * | mLight |
Vector4 | mColor |
Atributos protegidos heredados de Tapioca::RenderObject | |
Ogre::SceneManager * | sceneManager |
RenderNode * | node |
Wrapper de la clase LightSpotlight de Ogre.
Simula un cono de luz desde una posicion que apunta en una direccion
(por lo tanto, requiere de una posicion y una direccion)
Un cono de luz esta definido por dos angulos:
Existe el parametro falloff, que indica la caida de la intensidad desde la zona interior hasta la exterior
Por ejemplo, un valor de 1.0f corresponde con que esta caida es lineal
void Tapioca::LightSpotlight::setAttenuation | ( | float | maximumRange, |
float | constant, | ||
float | linear, | ||
float | quadratic ) |
Cambia la atenuacion de la luz, es decir, como disminuye con la distancia.
Attenuation = Constant + Linear * Distance + Quadratic * Distance^2
Por ejemplo, si constant es 0,5 quiere decir que es la mitad de brillante en todas las distancias
maximumRange | Distancia maxima a la que luz tiene efecto (en unidades de mundo) |
constant | Nivel base de la atenuacion de la luz (no varia con la distancia) (0-1) |
linear | Factor lineal en la atenuacion (0-1) |
quadratic | Factor cuadratico en la atenuacion (0-1) |
void Tapioca::LightSpotlight::setDirection | ( | Vector3 | direction | ) |
Cambia la direccion de la luz.
direction | Nueva direccion de la luz |
void Tapioca::LightSpotlight::setFalloff | ( | float | falloff | ) |
Caida de la intensidad de la luz desde la zona interior hasta la exterior.
falloff | Define como es la caida. De forma predeterminda es 1.0f (lineal) |
void Tapioca::LightSpotlight::setInnerAngle | ( | float | degrees | ) |
Cambia el tamano de la zona interior de la luz a partir de su angulo.
degrees | Grados del angulo |
void Tapioca::LightSpotlight::setNearClipDistance | ( | float | distance | ) |
Desde que punto comienza a emitir la luz. Por ejemplo, si emite desde el punto de origen o si se recorta la parte principal, de modo que quedaria como un cono truncado.
distance | Distancia desde la que comienza a emitir. De forma predeterminada es 0.0f |
void Tapioca::LightSpotlight::setOuterAngle | ( | float | degrees | ) |
Cambia el tamano de la zona exterior de la luz a partir de su angulo.
degrees | Grados del angulo |