-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcamera.js
49 lines (43 loc) · 1.16 KB
/
camera.js
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
//camera
let [Yaw,Pitch,XAcc,YAcc] = [-25,25,-.075,.05];
let [YawV,PitchV,XOld,YOld] = [0,0,0,0];
let start = true;
let start2 = false;
const el = document.querySelector('#canvas');
el.addEventListener('touchstart', touchStart);
el.addEventListener('touchmove',touchMove);
el.addEventListener('mousedown', mouseStart);
el.addEventListener('mousemove', mouseMove);
el.addEventListener('mouseup', mouseEnd);
function touchStart() {
var XOld = event.touches[0].clientX;
var YOld = event.touches[0].clientY;
start = true;
}
function touchMove() {
YawV = ((event.touches[0].clientX - XOld) * XAcc) + YawV/4;
PitchV = ((event.touches[0].clientY - YOld) * YAcc) + PitchV/4;
if (start == true) {
XOld = event.touches[0].clientX;
YOld = event.touches[0].clientY;
start = false;
}
}
function mouseStart() {
var XOld = event.clientX;
var YOld = event.clientY;
start2 = true;
}
function mouseMove() {
if (start2 == true) {
YawV = ((event.clientX - XOld) * XAcc) + YawV/4;
PitchV = ((event.clientY - YOld) * YAcc) + PitchV/4;
}
if (start2 == false) {
XOld = event.clientX;
YOld = event.clientY;
}
}
function mouseEnd() {
start2 = false;
}