-
Notifications
You must be signed in to change notification settings - Fork 0
/
vars.pde
68 lines (54 loc) · 2.25 KB
/
vars.pde
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
boolean[] keys = new boolean[255]; //saber que keys estão a ser primidas (isto premite saber se estão a ser primidas ao mesmo tempo)
boolean showPredios = true; //para debug (mostrar e não mostrar os prédios)
float vox = 10; //unidade base do projeto
float renderDistance = 1000 * vox;
float incPY = 0.01f, incYLook = 3;
float py = -500, yLookAt = -200; //variavel posição y camera e posição y para onde olha
float upX = 0, upZ = 0; //variaveis para criar uma rotação da câmera perante o eixo de observação (tilt)
float[] limitesUp = {0, 0.5}; //limites relativos ao tilt (upX e upZ)
float escala = 1; //ao escalar (dar zoom) (matrixEscala)
float multiEscala = 1.2; // definir o incremento (multiplicador) de escala
float[] limitesEscala = {0.3, 5}; //limites de escala
float psi = 0, theta = 0, phi = 0; //ângulos Eulerianos (x:psi y:theta z:phi)
PMatrix3D matrixRy = new PMatrix3D(
1, 0, 0, 0,
0, 1, 0, 0,
0, 0, 1, 0,
0, 0, 0, 1
);
PMatrix3D matrixEscala = new PMatrix3D(
1, 0, 0, 0,
0, 1, 0, 0,
0, 0, 1, 0,
0, 0, 0, 1
);
PImage[] mao = new PImage[2];
/*
SistemaCor é uma class que foi criada com o intuito de guardar esquemas de cor
para os prédios desde de elementos básicos de preenchimento (fill) para as paredes
e janelas, como também componentes de reação perante as luzes, emissive e specular
OBSERVAÇÃO: esta construção desta classe encontra-se na zona das variáveis para se entender
quais as componentes da mesma, visto que não ocupa tanto espaço
*/
class SistemaCor {
color ambient, emissive, specular, diffuse;
float shininess;
SistemaCor(color ambient, color emissive, color specular, color diffuse, float shininess){
this.ambient = ambient;
this.emissive = emissive;
this.specular = specular;
this.diffuse = diffuse;
this.shininess = shininess;
}
}
//criação dos sistemas de cor utilizados no projeto
SistemaCor[] sistemaP = new SistemaCor[2];
SistemaCor[] sistemaJ = new SistemaCor[2];
SistemaCor[] sistemaC = new SistemaCor[2];
SistemaCor[] sistemaJC = new SistemaCor[2];
PImage[] matte = new PImage[2];
PImage vidro;
Carro popo0, popo1;
PImage estradaTextura, estradaCantoTextura;
Estrada estrada;
boolean candeeiros = true;