static float mouse_speed = 0.5f;
static bool show_walk_mesh, noclip = false;
static float mouse_speed = 0.5f;
static bool show_walk_mesh, noclip = false;
should_swap = goatvr_should_swap() != 0;
user_eye_height = goatvr_get_eye_height();
have_headtracking = goatvr_have_headtracking();
should_swap = goatvr_should_swap() != 0;
user_eye_height = goatvr_get_eye_height();
have_headtracking = goatvr_have_headtracking();
glClearColor(1, 1, 1, 1);
glClearColor(1, 1, 1, 1);
dir.y = 0;
cam_theta = rad_to_deg(acos(dot(dir, Vec3(0, 0, 1))));
dir.y = 0;
cam_theta = rad_to_deg(acos(dot(dir, Vec3(0, 0, 1))));
}
mouse_view_matrix.pre_rotate_y(deg_to_rad(cam_theta));
mouse_view_matrix.pre_translate(-cam_pos.x, -cam_pos.y, -cam_pos.z);
}
mouse_view_matrix.pre_rotate_y(deg_to_rad(cam_theta));
mouse_view_matrix.pre_translate(-cam_pos.x, -cam_pos.y, -cam_pos.z);
set_light(1, lpos[1], Vec3(0.6, 0.7, 1.0) * 0.6);
set_light(2, lpos[2], Vec3(0.8, 1.0, 0.8) * 0.3);
set_light(1, lpos[1], Vec3(0.6, 0.7, 1.0) * 0.6);
set_light(2, lpos[2], Vec3(0.8, 1.0, 0.8) * 0.3);
show_blobs = !show_blobs;
show_message("blobs: %s\n", show_blobs ? "on" : "off");
break;
show_blobs = !show_blobs;
show_message("blobs: %s\n", show_blobs ? "on" : "off");
break;