use super::OPENGL_TO_WGPU_MATRIX; pub struct Camera { pub eye: cgmath::Point3, pub target: cgmath::Point3, pub up: cgmath::Vector3, pub aspect: f32, pub fovy: f32, pub znear: f32, pub zfar: f32, } impl Camera { pub fn BuildViewProjectionMatrix(&self) -> cgmath::Matrix4 { let view = cgmath::Matrix4::look_at_rh(self.eye, self.target, self.up); let proj = cgmath::perspective(cgmath::Deg(self.fovy), self.aspect, self.znear, self.zfar); OPENGL_TO_WGPU_MATRIX * proj * view } }