Mercurial > hg > Members > e105716
comparison fps/resources/keyboard.js @ 1:6b217e0f301c
add rotate
author | Syusaku Morita <e105716@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 15 May 2012 13:32:56 +0900 |
parents | fbb6f4f89f76 |
children | aa7abf13d3f5 |
comparison
equal
deleted
inserted
replaced
0:fbb6f4f89f76 | 1:6b217e0f301c |
---|---|
1 var x = 0; | |
2 var z = 0; | |
3 | |
1 function keyboardDown() | 4 function keyboardDown() |
2 { | 5 { |
6 //var d=-Z/20; | |
7 | |
3 switch(String.fromCharCode(event.keyCode)) { | 8 switch(String.fromCharCode(event.keyCode)) { |
4 case 'w': | 9 case 'w': |
10 //Z+=d; | |
5 speedZ = 0.006; | 11 speedZ = 0.006; |
6 break; | 12 break; |
7 case 'a': | 13 case 'a': |
14 //X-=d; | |
8 speedX = -0.006; | 15 speedX = -0.006; |
9 break; | 16 break; |
10 case 's': | 17 case 's': |
18 //Z-=d; | |
11 speedZ = -0.006; | 19 speedZ = -0.006; |
12 break; | 20 break; |
13 case 'd': | 21 case 'd': |
22 //X+=d; | |
14 speedX = 0.006; | 23 speedX = 0.006; |
15 break; | 24 break; |
16 | 25 |
17 case 'i': | 26 case 'i': |
18 rotateY = 0.006; | 27 |
19 break; | 28 break; |
20 case 'j': | 29 case 'j': |
21 rotateX = -0.006; | 30 yawRate = -0.1; |
22 break; | 31 break; |
23 case 'k': | 32 case 'k': |
24 rotateY = -0.006; | 33 |
25 break; | 34 break; |
26 case 'l': | 35 case 'l': |
27 rotateX = 0.006; | 36 yawRate = 0.1; |
28 break; | 37 break; |
29 default: | 38 default: |
30 break; | 39 break; |
31 } | 40 } |
32 } | 41 } |
33 | 42 |
34 function keyboardUp() | 43 function keyboardUp() |
35 { | 44 { |
36 | |
37 xPos = 0; | 45 xPos = 0; |
38 zPos = 0; | 46 zPos = 0; |
39 xEye = 0; | 47 |
40 yEye = 0; | 48 xRool = 0; |
41 speedX = 0; | 49 speedX = 0; |
42 speedZ = 0; | 50 speedZ = 0; |
43 rotateX = 0; | 51 |
44 rotateY = 0; | 52 yawRate = 0; |
53 //rotateX = 0; | |
54 //rotateY = 0; | |
45 } | 55 } |
46 | 56 |
47 function keyboardPress() | 57 function keyboardPress() |
48 { | 58 { |
59 //var d=-Z/20; | |
49 switch(String.fromCharCode(event.keyCode)) { | 60 switch(String.fromCharCode(event.keyCode)) { |
50 case 'w': | 61 case 'w': |
62 //Z+=d; | |
51 speedZ = 0.006; | 63 speedZ = 0.006; |
52 break; | 64 break; |
53 case 'a': | 65 case 'a': |
66 //X-=d; | |
54 speedX = -0.006; | 67 speedX = -0.006; |
55 break; | 68 break; |
56 case 's': | 69 case 's': |
70 //Z-=d; | |
57 speedZ = -0.006; | 71 speedZ = -0.006; |
58 break; | 72 break; |
59 case 'd': | 73 case 'd': |
74 //X+=d; | |
60 speedX = 0.006; | 75 speedX = 0.006; |
61 break; | 76 break; |
62 | 77 |
63 case 'i': | 78 case 'i': |
64 rotateY = 0.006; | |
65 break; | 79 break; |
66 case 'j': | 80 case 'j': |
67 rotateX = -0.006; | 81 yawRate = -0.1; |
68 break; | 82 break; |
69 case 'k': | 83 case 'k': |
70 rotateY = -0.006; | |
71 break; | 84 break; |
72 case 'l': | 85 case 'l': |
73 rotateX = 0.006; | 86 yawRate = 0.1; |
74 break; | 87 break; |
75 default: | 88 default: |
76 break; | 89 break; |
77 } | 90 } |
78 } | 91 } |
92 | |
93 function move(){ | |
94 //if(speedX != 0) xPos += speedX; | |
95 //if(speedZ != 0) zPos -= speedZ; | |
96 console.log(xRool); | |
97 /* | |
98 if(speedX != 0) xPos += Math.sin(degToRad(yaw)) * speedX; | |
99 if(speedZ != 0) zPos -= Math.cos(degToRad(yaw)) * speedZ; | |
100 if(yawRate != 0) xRool += degToRad(yaw); | |
101 | |
102 if(speedX != 0 || speedZ != 0) yaw += yawRate; | |
103 //if(rotateY != 0) yRool -= degToRad(yaw); | |
104 */ | |
105 | |
106 | |
107 if(speedX != 0) xPos += Math.sin(degToRad(yaw)) * speedX; | |
108 if(speedZ != 0) zPos -= Math.cos(degToRad(yaw)) * speedZ; | |
109 if(yawRate != 0) xRool = degToRad(yaw); | |
110 | |
111 yaw += yawRate; | |
112 } | |
113 | |
114 function degToRad(degrees) { | |
115 return degrees * Math.PI / 180; | |
116 } | |
117 | |
118 |