pub fn project_onto_plane(v: Vec3, plane_normal: Vec3) -> Vec3
Project a vector onto a plane defined by its normal.