Tapioca Engine 1.0
Motor de videojuegos creado por Bubble Studios
|
Guarda la posicion, rotacion y escala del objeto, ademas de la interfaz del nodo. Este componente esta en todos los objetos, y si se intenta borrar, se borrara todo el objeto. Más...
#include <Transform.h>
Métodos públicos | |
Transform () | |
Inicializa con posicion 0, rotacion 0 y escala 1. | |
~Transform () | |
Elimina la relacion de parentesco y se eliminan los hijos. | |
bool | initComponent (const CompMap &variables) override |
Recibe los parametros iniciales y se inicializan los atributos. No garantiza que todos los componentes iniciales esten creados. | |
void | start () override |
Manda eventos de cambio de transform. | |
void | handleEvent (std::string const &id, void *info) override |
Procesa un evento recibido. | |
Vector3 | getPosition () const |
Devuelve la posicion local del transform. | |
Vector3 | getGlobalPositionWithoutRotation () const |
Devuelve la posicion global del transform. | |
Vector3 | getGlobalPosition () const |
Devuelve la posicion global del transform. | |
Quaternion | getRotation () const |
Devuelve la rotacion local del transform. | |
Quaternion | getGlobalRotation () const |
Devuelve la rotacion global del transform. | |
Vector3 | getScale () const |
Devuelve la escala local del transform. | |
Vector3 | getGlobalScale () const |
Devuelve la escala global del transform. | |
void | setPosition (const Vector3 &p, bool rb=false) |
Cambia la posicion del transform. Genera el evento "posChanged". | |
void | setGlobalPosition (const Vector3 &p, bool rb=false) |
Cambia la posicion del transform. Genera el evento "posChanged". | |
void | setRotation (const Vector3 &r, bool rb=false) |
Cambia la rotacion del transform. Genera el evento "posChanged" y "rotChanged". | |
void | setRotation (const Quaternion &q, bool rb=false) |
Cambia la rotacion del transform. Genera el evento "posChanged" y "rotChanged". | |
void | setScale (const Vector3 &s) |
Cambia la escala del transform. Genera el evento "posChanged" y "scaleChanged". | |
void | translate (const Vector3 &p) |
Mueve el objeto tanto como el vector dado indica. | |
void | rotate (const Vector3 &r) |
Rota el objeto sobre los ejes tanto como el vector dado indica. | |
void | rotate (const Quaternion &r) |
Rota el objeto sobre los ejes tanto como el vector dado indica. | |
Vector3 | right () const |
Devuelve el eje X de coordenadas locales en coordenadas globales, inicialmente su eje X es 1,0,0. | |
Vector3 | up () const |
Devuelve el eje Y de coordenadas locales en coordenadas globales, inicialmente su eje Y es 0,1,0. | |
Vector3 | forward () const |
Devuelve el eje Z de coordenadas locales en coordenadas globales, inicialmente su eje Z es 0,0,1. | |
void | setParent (Transform *const transform) |
Establece el transform dado como el padre de este. | |
Transform * | getParent () const |
Devuelve el padre de este transform. | |
std::vector< Transform * > | getChildren () const |
Devuelve los hijos directos de este transform. | |
std::vector< Transform * > | getAllChildren () const |
Devuelve tanto los hijos directos como los indirectos de este transform. | |
Métodos públicos heredados de Tapioca::Component | |
Component () | |
Constructor de la clase Component. | |
virtual | ~Component () |
Destructor de la clase Component. | |
virtual void | awake () |
Inicializa el componente. Se ejecuta antes que el start Garantiza que todos los componentes iniciales esten creados. | |
virtual void | update (const uint64_t deltaTime) |
Actualiza el estado de un componente. Se llama todas las veces posibles. | |
virtual void | fixedUpdate () |
Actualiza el estado de un componente Se llama cada cierto tiempo fijo (Game::FIXED_DELTA_TIME),. | |
virtual void | render () const |
Renderizado de un componente. | |
virtual void | updateUI () |
Actualiza la interfaz de usuario. | |
void | pushEvent (std::string const &id, void *info, const bool global=true, const bool delay=false) |
Envia un evento. | |
template<typename T > | |
bool | setValueFromMap (T &var, std::string const &varName, const CompMap &map) |
Da valor a una variable declarada en un CompMap. | |
GameObject * | getObject () const |
Devuelve el objeto al que esta adjunto este componente. | |
bool | isAlive () const |
Devuelve si el componente esta "vivo" (si se actualizan update, handleEvents, ...) | |
bool | isActive () const |
Devuelve si el componente esta activo (si es 'false' no se llama a ningun metodo excepto 'receiveEvent') | |
void | die () |
Borra el componente. | |
virtual void | setActive (const bool b) |
Activa o desactiva el componente (si es 'false' no se llama a ningun metodo excepto 'receiveEvent') | |
Otros miembros heredados | |
Atributos protegidos heredados de Tapioca::Component | |
GameObject * | object |
bool | alive |
bool | active |
Guarda la posicion, rotacion y escala del objeto, ademas de la interfaz del nodo. Este componente esta en todos los objetos, y si se intenta borrar, se borrara todo el objeto.
Tapioca::Transform::Transform | ( | ) |
Inicializa con posicion 0, rotacion 0 y escala 1.
Tapioca::Transform::~Transform | ( | ) |
Elimina la relacion de parentesco y se eliminan los hijos.
Vector3 Tapioca::Transform::forward | ( | ) | const |
Devuelve el eje Z de coordenadas locales en coordenadas globales, inicialmente su eje Z es 0,0,1.
std::vector< Transform * > Tapioca::Transform::getAllChildren | ( | ) | const |
Devuelve tanto los hijos directos como los indirectos de este transform.
std::vector< Transform * > Tapioca::Transform::getChildren | ( | ) | const |
Devuelve los hijos directos de este transform.
Vector3 Tapioca::Transform::getGlobalPosition | ( | ) | const |
Devuelve la posicion global del transform.
Vector3 Tapioca::Transform::getGlobalPositionWithoutRotation | ( | ) | const |
Devuelve la posicion global del transform.
Quaternion Tapioca::Transform::getGlobalRotation | ( | ) | const |
Devuelve la rotacion global del transform.
Vector3 Tapioca::Transform::getGlobalScale | ( | ) | const |
Devuelve la escala global del transform.
Transform * Tapioca::Transform::getParent | ( | ) | const |
Devuelve el padre de este transform.
|
inline |
Devuelve la posicion local del transform.
|
inline |
Devuelve la rotacion local del transform.
|
inline |
Devuelve la escala local del transform.
|
overridevirtual |
Procesa un evento recibido.
id | Indica el tipo de evento |
info | Parametros del mensaje, cada evento gestiona sus propios parametros |
Reimplementado de Tapioca::Component.
|
overridevirtual |
Recibe los parametros iniciales y se inicializan los atributos. No garantiza que todos los componentes iniciales esten creados.
variables | unordered_map con los parametros iniciales |
Reimplementado de Tapioca::Component.
Vector3 Tapioca::Transform::right | ( | ) | const |
Devuelve el eje X de coordenadas locales en coordenadas globales, inicialmente su eje X es 1,0,0.
void Tapioca::Transform::rotate | ( | const Quaternion & | r | ) |
Rota el objeto sobre los ejes tanto como el vector dado indica.
r | rotacion que se quiere aplicar sobre el transform |
void Tapioca::Transform::rotate | ( | const Vector3 & | r | ) |
Rota el objeto sobre los ejes tanto como el vector dado indica.
r | rotacion que se quiere aplicar sobre el transform |
void Tapioca::Transform::setGlobalPosition | ( | const Vector3 & | p, |
bool | rb = false ) |
Cambia la posicion del transform. Genera el evento "posChanged".
p | Posicion en coordenadas global a la que se quiere mover el transform |
rb | Indica si es movido por fisicas |
void Tapioca::Transform::setParent | ( | Transform *const | transform | ) |
Establece el transform dado como el padre de este.
transform | Transform al que se quiere hacer padre de este |
void Tapioca::Transform::setPosition | ( | const Vector3 & | p, |
bool | rb = false ) |
Cambia la posicion del transform. Genera el evento "posChanged".
p | Posicion a la que se quiere mover el transform |
rb | Indica si es movido por f�sicas |
void Tapioca::Transform::setRotation | ( | const Quaternion & | q, |
bool | rb = false ) |
Cambia la rotacion del transform. Genera el evento "posChanged" y "rotChanged".
q | Rotacion en Quaterniones a la que se quiere rotar el transform |
rb | Indica si es movido por fisicas |
void Tapioca::Transform::setRotation | ( | const Vector3 & | r, |
bool | rb = false ) |
Cambia la rotacion del transform. Genera el evento "posChanged" y "rotChanged".
r | Rotacion a la que se quiere rotar el transform |
rb | Indica si es movido por fisicas |
void Tapioca::Transform::setScale | ( | const Vector3 & | s | ) |
Cambia la escala del transform. Genera el evento "posChanged" y "scaleChanged".
s | Tamano al que se quiere escalar el transform |
|
overridevirtual |
Manda eventos de cambio de transform.
Reimplementado de Tapioca::Component.
void Tapioca::Transform::translate | ( | const Vector3 & | p | ) |
Mueve el objeto tanto como el vector dado indica.
p | distancia que se quiere mover el transform |
Vector3 Tapioca::Transform::up | ( | ) | const |
Devuelve el eje Y de coordenadas locales en coordenadas globales, inicialmente su eje Y es 0,1,0.