Fix uv_coordinates_at_position when position is behind the camera
@@ -286,7 +286,10 @@ impl Camera {
///
pub fn uv_coordinates_at_position(&self, position: Vec3) -> (f32, f32) {
let proj = self.projection() * self.view() * position.extend(1.0);
- (0.5 * (proj.x / proj.w + 1.0), 0.5 * (proj.y / proj.w + 1.0))
+ (
+ 0.5 * (proj.x / proj.w.abs() + 1.0),
+ 0.5 * (proj.y / proj.w.abs() + 1.0),
+ )
}
pub(super) fn projection_type(&self) -> &ProjectionType {
