From f71ee5e00979f2d2db5f082fefed5b96cd9e18eb Mon Sep 17 00:00:00 2001 From: Dale Williams Date: Fri, 6 Mar 2026 09:23:30 +1000 Subject: [PATCH] Alter Camera3D FOV bounds error conditions from between 1 and 179 inclusive to between 0 and 180 exclusive. This is to allow for vertical viewing angles of less than one, for virtual broadcast productions and real world lens matching. Most 40x sports broadcast lenses have a sub one degree vertical viewing angle, as do most zoom lenses with extenders. At present Godot cannot be used for a good deal of virtual production / sports AR scenarios. Tested on 4.6, no attempt made to change the editor hint as it remains sensible for most use cases. --- scene/3d/camera_3d.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scene/3d/camera_3d.cpp b/scene/3d/camera_3d.cpp index a42abf59fb..75e9a2ae11 100644 --- a/scene/3d/camera_3d.cpp +++ b/scene/3d/camera_3d.cpp @@ -729,7 +729,7 @@ Camera3D::ProjectionType Camera3D::get_projection() const { } void Camera3D::set_fov(real_t p_fov) { - ERR_FAIL_COND(p_fov < 1 || p_fov > 179); + ERR_FAIL_COND(p_fov <= CMP_EPSILON || p_fov >= 180.0 - CMP_EPSILON); fov = p_fov; _update_camera_mode(); }