oculus1
diff src/main.cc @ 10:b2abb08c8f94
proper FPS-style vr tracking
author | John Tsiombikas <nuclear@member.fsf.org> |
---|---|
date | Fri, 20 Sep 2013 06:49:39 +0300 |
parents | b66b54a68dfd |
children | 39ec672a5158 |
line diff
1.1 --- a/src/main.cc Thu Sep 19 06:36:48 2013 +0300 1.2 +++ b/src/main.cc Fri Sep 20 06:49:39 2013 +0300 1.3 @@ -20,7 +20,7 @@ 1.4 static void sball_rotate(int rx, int ry, int rz); 1.5 static bool parse_args(int argc, char **argv); 1.6 1.7 -static FpsCamera cam; 1.8 +static VRFpsCamera cam; 1.9 static int width, height; 1.10 static bool use_vr = false; 1.11 static bool mouselook = false; 1.12 @@ -90,21 +90,6 @@ 1.13 { 1.14 unsigned int msec = glutGet(GLUT_ELAPSED_TIME); 1.15 1.16 - // test rift sensor 1.17 - float quat[4], euler[3]; 1.18 - 1.19 - vr_get_rotation(quat); 1.20 - vr_get_rotation_euler(euler); 1.21 - 1.22 - Quaternion qrot(quat[3], quat[0], quat[1], quat[2]); 1.23 - 1.24 - static unsigned int prev_print; 1.25 - if(msec - prev_print > 1000) { 1.26 - printf("q(%.3f + %.3fi + %.3fj + %.3fk)", quat[3], quat[0], quat[1], quat[2]); 1.27 - printf(" - euler(%.3f %.3f %.3f)\n", euler[0], euler[1], euler[2]); 1.28 - prev_print = msec; 1.29 - } 1.30 - 1.31 glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); 1.32 1.33 glMatrixMode(GL_PROJECTION); 1.34 @@ -114,9 +99,7 @@ 1.35 glMatrixMode(GL_MODELVIEW); 1.36 glLoadIdentity(); 1.37 1.38 - Matrix4x4 mat = qrot.inverse().get_rotation_matrix(); 1.39 - load_matrix(mat); 1.40 - 1.41 + cam.track_vr(); 1.42 cam.use_inverse(); 1.43 1.44 draw_scene();