Merge pull request #98562 from Rudolph-B/Issue-98561

Fix Occlusion Culling not working for an orthogonal camera.
This commit is contained in:
Thaddeus Crews 2024-10-29 19:25:34 -05:00
commit 64b68192cc
No known key found for this signature in database
GPG Key ID: 62181B86FE9E5D84
2 changed files with 2 additions and 2 deletions

View File

@ -140,7 +140,7 @@ void RaycastOcclusionCull::RaycastHZBuffer::_generate_camera_rays(const CameraRa
Vector3 dir;
if (p_data->camera_orthogonal) {
dir = -p_data->camera_dir;
dir = p_data->camera_dir;
tile.ray.org_x[j] = pixel_pos.x - dir.x * p_data->z_near;
tile.ray.org_y[j] = pixel_pos.y - dir.y * p_data->z_near;
tile.ray.org_z[j] = pixel_pos.z - dir.z * p_data->z_near;

View File

@ -84,7 +84,7 @@ public:
Vector3 view = p_cam_inv_transform.xform(corner);
if (p_cam_projection.is_orthogonal()) {
min_depth = MIN(min_depth, view.z);
min_depth = MIN(min_depth, -view.z);
}
Plane vp = Plane(view, 1.0);