Changeset View
Changeset View
Standalone View
Standalone View
intern/cycles/kernel/geom/patch.h
| Show First 20 Lines • Show All 374 Lines • ▼ Show 20 Lines | ccl_device float3 patch_eval_float3(KernelGlobals kg, | ||||
| float3 val = make_float3(0.0f, 0.0f, 0.0f); | float3 val = make_float3(0.0f, 0.0f, 0.0f); | ||||
| if (du) | if (du) | ||||
| *du = make_float3(0.0f, 0.0f, 0.0f); | *du = make_float3(0.0f, 0.0f, 0.0f); | ||||
| if (dv) | if (dv) | ||||
| *dv = make_float3(0.0f, 0.0f, 0.0f); | *dv = make_float3(0.0f, 0.0f, 0.0f); | ||||
| for (int i = 0; i < num_control; i++) { | for (int i = 0; i < num_control; i++) { | ||||
| float3 v = float4_to_float3(kernel_tex_fetch(__attributes_float3, offset + indices[i])); | float3 v = kernel_tex_fetch(__attributes_float3, offset + indices[i]); | ||||
| val += v * weights[i]; | val += v * weights[i]; | ||||
| if (du) | if (du) | ||||
| *du += v * weights_du[i]; | *du += v * weights_du[i]; | ||||
| if (dv) | if (dv) | ||||
| *dv += v * weights_dv[i]; | *dv += v * weights_dv[i]; | ||||
| } | } | ||||
| Show All 20 Lines | ccl_device float4 patch_eval_float4(KernelGlobals kg, | ||||
| float4 val = make_float4(0.0f, 0.0f, 0.0f, 0.0f); | float4 val = make_float4(0.0f, 0.0f, 0.0f, 0.0f); | ||||
| if (du) | if (du) | ||||
| *du = make_float4(0.0f, 0.0f, 0.0f, 0.0f); | *du = make_float4(0.0f, 0.0f, 0.0f, 0.0f); | ||||
| if (dv) | if (dv) | ||||
| *dv = make_float4(0.0f, 0.0f, 0.0f, 0.0f); | *dv = make_float4(0.0f, 0.0f, 0.0f, 0.0f); | ||||
| for (int i = 0; i < num_control; i++) { | for (int i = 0; i < num_control; i++) { | ||||
| float4 v = kernel_tex_fetch(__attributes_float3, offset + indices[i]); | float4 v = kernel_tex_fetch(__attributes_float4, offset + indices[i]); | ||||
| val += v * weights[i]; | val += v * weights[i]; | ||||
| if (du) | if (du) | ||||
| *du += v * weights_du[i]; | *du += v * weights_du[i]; | ||||
| if (dv) | if (dv) | ||||
| *dv += v * weights_dv[i]; | *dv += v * weights_dv[i]; | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 42 Lines • Show Last 20 Lines | |||||