Fix axis layout and implement click raytracing
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
|
||||
use std::time::SystemTime;
|
||||
|
||||
use cgmath::{Deg, InnerSpace, Quaternion, Rotation3, vec3};
|
||||
use cgmath::{Deg, Euler, Quaternion, vec3};
|
||||
use winit::event::Event;
|
||||
|
||||
use level::{load_level, save_level};
|
||||
@@ -66,6 +66,8 @@ impl Game for TestGame {
|
||||
|
||||
if self.input.button_down("print_framerate") {
|
||||
println!("{:.0} ms / {:.0} FPS", frame_time * 1000.0, 1.0 / frame_time);
|
||||
print_quat_as_euler(self.player.camera.rotation);
|
||||
println!();
|
||||
}
|
||||
|
||||
if self.input.button_just_pressed("test") {
|
||||
@@ -77,7 +79,7 @@ impl Game for TestGame {
|
||||
if !self.paused {
|
||||
self.player.update(frame_time, &self.input, renderer);
|
||||
}
|
||||
self.game_objects[1].get_game_object_mut(renderer).unwrap().rotation = Quaternion::from_angle_y(Deg(time * -20.)).normalize();
|
||||
// self.game_objects[1].get_game_object_mut(renderer).unwrap().rotation = Quaternion::from_angle_y(Deg(time * -20.)).normalize();
|
||||
|
||||
// End frame
|
||||
self.last_time = time;
|
||||
@@ -171,3 +173,8 @@ impl TestGame {
|
||||
renderer.clear_all();
|
||||
}
|
||||
}
|
||||
|
||||
pub fn print_quat_as_euler(quat: Quaternion<f32>) {
|
||||
let euler = Euler::from(quat);
|
||||
print!("({:?},{:?},{:?})", Deg::from(euler.x), Deg::from(euler.y), Deg::from(euler.z));
|
||||
}
|
||||
Reference in New Issue
Block a user