pub trait Project<T: Sized + Copy> { // Required method fn project(&self, v3: &Vec3<T>) -> Option<Vec2<T>>; }