Fix T94142, T94182: Cycles metal broken after pointcloud changes

Missing ccl_private form an older patch.

Differential Revision: https://developer.blender.org/D13612
This commit is contained in:
Michael 2021-12-17 14:39:20 +01:00 committed by Brecht Van Lommel
parent f3c1d0e3a3
commit 67734d1853
Notes: blender-bot 2023-02-14 07:25:46 +01:00
Referenced by issue #94182, Cycles: Rendering the default scene or switching to rendered view with M1 Max GPU crashes Blender
Referenced by issue #94142, Cycles Metal crash with simultaneous viewport and final render
2 changed files with 17 additions and 8 deletions

View File

@ -46,8 +46,11 @@ ccl_device float point_attribute_float(KernelGlobals kg,
}
}
ccl_device float2 point_attribute_float2(
KernelGlobals kg, const ShaderData *sd, const AttributeDescriptor desc, float2 *dx, float2 *dy)
ccl_device float2 point_attribute_float2(KernelGlobals kg,
ccl_private const ShaderData *sd,
const AttributeDescriptor desc,
ccl_private float2 *dx,
ccl_private float2 *dy)
{
# ifdef __RAY_DIFFERENTIALS__
if (dx)
@ -64,8 +67,11 @@ ccl_device float2 point_attribute_float2(
}
}
ccl_device float3 point_attribute_float3(
KernelGlobals kg, const ShaderData *sd, const AttributeDescriptor desc, float3 *dx, float3 *dy)
ccl_device float3 point_attribute_float3(KernelGlobals kg,
ccl_private const ShaderData *sd,
const AttributeDescriptor desc,
ccl_private float3 *dx,
ccl_private float3 *dy)
{
# ifdef __RAY_DIFFERENTIALS__
if (dx)
@ -82,8 +88,11 @@ ccl_device float3 point_attribute_float3(
}
}
ccl_device float4 point_attribute_float4(
KernelGlobals kg, const ShaderData *sd, const AttributeDescriptor desc, float4 *dx, float4 *dy)
ccl_device float4 point_attribute_float4(KernelGlobals kg,
ccl_private const ShaderData *sd,
const AttributeDescriptor desc,
ccl_private float4 *dx,
ccl_private float4 *dy)
{
# ifdef __RAY_DIFFERENTIALS__
if (dx)

View File

@ -23,7 +23,7 @@ CCL_NAMESPACE_BEGIN
#ifdef __POINTCLOUD__
ccl_device_forceinline bool point_intersect_test(
const float4 point, const float3 P, const float3 dir, const float tmax, float *t)
const float4 point, const float3 P, const float3 dir, const float tmax, ccl_private float *t)
{
const float3 center = float4_to_float3(point);
const float radius = point.w;
@ -93,7 +93,7 @@ ccl_device_forceinline bool point_intersect(KernelGlobals kg,
ccl_device_inline void point_shader_setup(KernelGlobals kg,
ccl_private ShaderData *sd,
ccl_private const Intersection *isect,
const Ray *ray)
ccl_private const Ray *ray)
{
sd->shader = kernel_tex_fetch(__points_shader, isect->prim);
sd->P = ray->P + ray->D * isect->t;