Animación Vulkan 1.0
Animación de tiro libre baloncesto con motor gráfico desarrollado en clase
Cargando...
Buscando...
Nada coincide
GECamera.h
Ir a la documentación de este archivo.
1
5
6#pragma once
7
8#include <glm/glm.hpp>
9
14class GECamera {
15public:
19 GECamera();
20
25 glm::mat4 getViewMatrix();
26
31 void setPosition(glm::vec3 pos);
32
38 void setDirection(glm::vec3 dir, glm::vec3 up);
39
44 void setMoveStep(float step);
45
50 void setTurnStep(float step);
51
56 glm::vec3 getPosition();
57
62 glm::vec3 getDirection();
63
68 glm::vec3 getUpDirection();
69
74 float getMoveStep();
75
80 float getTurnStep();
81
85 void update();
86
91 void setTurnLeft(bool flag);
92 void setTurnRight(bool flag);
93 void setTurnUp(bool flag);
94 void setTurnDown(bool flag);
95 void setTurnCW(bool flag);
96 void setTurnCCW(bool flag);
97 void setMoveLeft(bool flag);
98 void setMoveRight(bool flag);
99 void setMoveUp(bool flag);
100 void setMoveDown(bool flag);
101
102private:
103 glm::vec3 Pos;
104 glm::vec3 Dir;
105 glm::vec3 Up;
106 glm::vec3 Right;
107
108 float moveStep;
109 float turnStep;
110 float cosAngle;
111 float sinAngle;
112
123
127 void turnRight();
128
132 void turnLeft();
133
137 void turnUp();
138
142 void turnDown();
143
147 void turnCW();
148
152 void turnCCW();
153
157 void moveLeft();
158
162 void moveRight();
163
167 void moveUp();
168
172 void moveDown();
173
177 void moveFront();
178
182 void moveBack();
183};
184
void setTurnCW(bool flag)
Activa o desactiva el giro horario.
Definition GECamera.cpp:328
glm::vec3 Pos
Posición de la cámara en coordenadas del mundo.
Definition GECamera.h:103
bool moveLeftPressed
Flag de desplazamiento a la izquierda.
Definition GECamera.h:119
void setMoveStep(float step)
Asigna el avance en cada paso.
Definition GECamera.cpp:77
void moveLeft()
Mueve el observador un paso hacia la izquierda.
Definition GECamera.cpp:177
glm::vec3 getDirection()
Obtiene la dirección (eje Z) de la cámara.
Definition GECamera.cpp:106
float getTurnStep()
Obtiene el ángulo de giro en cada paso.
Definition GECamera.cpp:133
bool turnLeftPressed
Flag de giro a la izquierda.
Definition GECamera.h:113
bool turnUpPressed
Flag de giro hacia arriba.
Definition GECamera.h:115
void setTurnCCW(bool flag)
Activa o desactiva el giro antihorario.
Definition GECamera.cpp:337
glm::vec3 Dir
Vector dirección (eje Z) de la cámara.
Definition GECamera.h:104
void setMoveLeft(bool flag)
Activa o desactiva el desplazamiento a la izquierda.
Definition GECamera.cpp:346
float cosAngle
Coseno del ángulo de giro (cache).
Definition GECamera.h:110
glm::vec3 getPosition()
Obtiene la posición de la cámara.
Definition GECamera.cpp:97
void setTurnStep(float step)
Asigna el ángulo de giro en cada paso.
Definition GECamera.cpp:86
void setTurnUp(bool flag)
Activa o desactiva el giro hacia arriba.
Definition GECamera.cpp:310
float getMoveStep()
Obtiene el avance en cada paso.
Definition GECamera.cpp:124
bool turnCWPressed
Flag de giro horario.
Definition GECamera.h:117
void moveRight()
Mueve el observador un paso hacia la derecha.
Definition GECamera.cpp:186
bool turnRightPressed
Flag de giro a la derecha.
Definition GECamera.h:114
void turnCW()
Rota el observador un paso en sentido horario.
Definition GECamera.cpp:265
void moveFront()
Mueve el observador un paso hacia adelante (dirección -Dir).
Definition GECamera.cpp:160
void moveUp()
Mueve el observador un paso hacia arriba.
Definition GECamera.cpp:195
bool moveUpPressed
Flag de desplazamiento hacia arriba.
Definition GECamera.h:121
void setTurnRight(bool flag)
Activa o desactiva el giro a la derecha.
Definition GECamera.cpp:301
void setTurnLeft(bool flag)
Activa o desactiva el giro a la izquierda.
Definition GECamera.cpp:292
void update()
Actualiza la posición y orientación según entradas.
Definition GECamera.cpp:141
void setTurnDown(bool flag)
Activa o desactiva el giro hacia abajo.
Definition GECamera.cpp:319
void setMoveUp(bool flag)
Activa o desactiva el desplazamiento hacia arriba.
Definition GECamera.cpp:364
glm::mat4 getViewMatrix()
Obtiene la matriz View para situar la cámara.
Definition GECamera.cpp:47
void turnRight()
Rota el observador un paso hacia su derecha.
Definition GECamera.cpp:213
bool turnDownPressed
Flag de giro hacia abajo.
Definition GECamera.h:116
GECamera()
Constructor por defecto.
Definition GECamera.cpp:19
bool moveRightPressed
Flag de desplazamiento a la derecha.
Definition GECamera.h:120
void moveBack()
Mueve el observador un paso hacia atrás (dirección Dir).
Definition GECamera.cpp:169
void moveDown()
Mueve el observador un paso hacia abajo.
Definition GECamera.cpp:204
void setMoveDown(bool flag)
Activa o desactiva el desplazamiento hacia abajo.
Definition GECamera.cpp:373
void turnCCW()
Rota el observador un paso en sentido antihorario.
Definition GECamera.cpp:278
void turnDown()
Rota el observador un paso hacia abajo.
Definition GECamera.cpp:252
void setDirection(glm::vec3 dir, glm::vec3 up)
Asigna la orientación de la cámara.
Definition GECamera.cpp:66
void setPosition(glm::vec3 pos)
Asigna la posición de la cámara.
Definition GECamera.cpp:56
glm::vec3 Up
Vector 'arriba' (eje Y) de la cámara.
Definition GECamera.h:105
float moveStep
Tamaño del paso para movimientos.
Definition GECamera.h:108
float turnStep
Ángulo de giro en grados.
Definition GECamera.h:109
glm::vec3 Right
Vector derecho (eje X) de la cámara.
Definition GECamera.h:106
void turnUp()
Rota el observador un paso hacia arriba.
Definition GECamera.cpp:239
float sinAngle
Seno del ángulo de giro (cache).
Definition GECamera.h:111
bool turnCCWPressed
Flag de giro antihorario.
Definition GECamera.h:118
bool moveDownPressed
Flag de desplazamiento hacia abajo.
Definition GECamera.h:122
glm::vec3 getUpDirection()
Obtiene el vector arriba (eje Y) de la cámara.
Definition GECamera.cpp:115
void setMoveRight(bool flag)
Activa o desactiva el desplazamiento a la derecha.
Definition GECamera.cpp:355
void turnLeft()
Rota el observador un paso hacia su izquierda.
Definition GECamera.cpp:226