diff --git a/source/blender/gpu/shaders/gpu_shader_smoke_frag.glsl b/source/blender/gpu/shaders/gpu_shader_smoke_frag.glsl index 7bee7ef47a7..4d1feb5c83e 100644 --- a/source/blender/gpu/shaders/gpu_shader_smoke_frag.glsl +++ b/source/blender/gpu/shaders/gpu_shader_smoke_frag.glsl @@ -17,7 +17,13 @@ void main() { /* compute color and density from volume texture */ vec4 soot = texture3D(soot_texture, coords); - vec3 soot_color = active_color * soot.rgb / soot.a; + vec3 soot_color; + if (soot.a != 0) { + soot_color = active_color * soot.rgb / soot.a; + } + else { + soot_color = vec3(0, 0, 0); + } float soot_density = density_scale * soot.a; /* compute transmittance and alpha */