Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Mours <pmours@nvidia.com>2019-08-21 13:03:32 +0300
committerBrecht Van Lommel <brechtvanlommel@gmail.com>2019-08-26 11:26:53 +0300
commitedbb755dfe54f929c08aa6ec77c134462581fbfe (patch)
tree9328ae9818f7d55f7e9f5a19a74187bde941784c /intern/cycles/kernel/kernel_volume.h
parentb05e7ea7197ca4b66f74359a8e43e6a0b419de2d (diff)
Cycles: tweaks for better GPU code generation
Uninitialized variables are harder to handle for the compiler. Ref D5363
Diffstat (limited to 'intern/cycles/kernel/kernel_volume.h')
-rw-r--r--intern/cycles/kernel/kernel_volume.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/intern/cycles/kernel/kernel_volume.h b/intern/cycles/kernel/kernel_volume.h
index 20914b0ee4d..b0b67efc7b2 100644
--- a/intern/cycles/kernel/kernel_volume.h
+++ b/intern/cycles/kernel/kernel_volume.h
@@ -187,7 +187,7 @@ ccl_device void kernel_volume_shadow_homogeneous(KernelGlobals *kg,
ShaderData *sd,
float3 *throughput)
{
- float3 sigma_t;
+ float3 sigma_t = make_float3(0.0f, 0.0f, 0.0f);
if (volume_shader_extinction_sample(kg, sd, state, ray->P, &sigma_t))
*throughput *= volume_color_transmittance(sigma_t, ray->t);
@@ -225,7 +225,7 @@ ccl_device void kernel_volume_shadow_heterogeneous(KernelGlobals *kg,
}
float3 new_P = ray->P + ray->D * (t + step_offset);
- float3 sigma_t;
+ float3 sigma_t = make_float3(0.0f, 0.0f, 0.0f);
/* compute attenuation over segment */
if (volume_shader_extinction_sample(kg, sd, state, new_P, &sigma_t)) {
@@ -621,6 +621,7 @@ kernel_volume_integrate_heterogeneous_distance(KernelGlobals *kg,
new_tp = tp * transmittance;
}
else {
+ transmittance = make_float3(0.0f, 0.0f, 0.0f);
new_tp = tp;
}