diff options
author | RĂ©mi Verschelde <rverschelde@gmail.com> | 2018-02-13 13:10:33 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-02-13 13:10:33 +0100 |
commit | 448076edb6d7898954f2379c7f719becedc3c0a3 (patch) | |
tree | 3330b267fba6207a4e788f88c0c9bd3ab9444af9 | |
parent | d0a3bd82c175bcee4e7dbeb82c525ab075a872cc (diff) | |
parent | 0d7d293889edaf12cc3cc4205b5450dee2203cbd (diff) |
Merge pull request #16402 from Calinou/fix-camera-gizmo
Draw the Camera gizmo more accurately
-rw-r--r-- | editor/spatial_editor_gizmos.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/editor/spatial_editor_gizmos.cpp b/editor/spatial_editor_gizmos.cpp index aa7bfab2a5..8c90d86b9e 100644 --- a/editor/spatial_editor_gizmos.cpp +++ b/editor/spatial_editor_gizmos.cpp @@ -1121,7 +1121,7 @@ void CameraSpatialGizmo::set_handle(int p_idx, Camera *p_camera, const Point2 &p if (camera->get_projection() == Camera::PROJECTION_PERSPECTIVE) { Transform gt = camera->get_global_transform(); float a = _find_closest_angle_to_half_pi_arc(s[0], s[1], 1.0, gt); - camera->set("fov", a); + camera->set("fov", a * 2.0); } else { Vector3 ra, rb; @@ -1178,7 +1178,8 @@ void CameraSpatialGizmo::redraw() { case Camera::PROJECTION_PERSPECTIVE: { - float fov = camera->get_fov(); + // The real FOV is halved for accurate representation + float fov = camera->get_fov() / 2.0; Vector3 side = Vector3(Math::sin(Math::deg2rad(fov)), 0, -Math::cos(Math::deg2rad(fov))); Vector3 nside = side; |