Fix #127240: Deforming motion blurred point clouds do not render under certain conditions

Deforming motion blurred point clouds do not render in Cycles
HIP-RT when BVH timesteps != 0 if Blender is launched with
debug memory.

The root cause is that the size of allocated memory for the
bounding boxes is reported to HIP-RT not the number of valid
bounding boxes.

Pull Request: https://projects.blender.org/blender/blender/pulls/127432
This commit is contained in:
salipourto
2024-09-12 16:47:13 +02:00
committed by Sergey Sharybin
parent 0e36107433
commit 17ddca5017

View File

@@ -452,7 +452,7 @@ hiprtGeometryBuildInput HIPRTDevice::prepare_triangle_blas(BVHHIPRT *bvh, Mesh *
}
}
bvh->custom_prim_aabb.aabbCount = bvh->custom_primitive_bound.size();
bvh->custom_prim_aabb.aabbCount = num_bounds;
bvh->custom_prim_aabb.aabbStride = sizeof(BoundBox);
bvh->custom_primitive_bound.copy_to_device();
bvh->custom_prim_aabb.aabbs = (void *)bvh->custom_primitive_bound.device_pointer;
@@ -726,7 +726,7 @@ hiprtGeometryBuildInput HIPRTDevice::prepare_point_blas(BVHHIPRT *bvh, PointClou
}
}
bvh->custom_prim_aabb.aabbCount = bvh->custom_primitive_bound.size();
bvh->custom_prim_aabb.aabbCount = num_bounds;
bvh->custom_prim_aabb.aabbStride = sizeof(BoundBox);
bvh->custom_primitive_bound.copy_to_device();
bvh->custom_prim_aabb.aabbs = (void *)bvh->custom_primitive_bound.device_pointer;