diff --git a/intern/cycles/kernel/geom/shader_data.h b/intern/cycles/kernel/geom/shader_data.h index fbaa169b7ad..b8c65856d1a 100644 --- a/intern/cycles/kernel/geom/shader_data.h +++ b/intern/cycles/kernel/geom/shader_data.h @@ -155,12 +155,15 @@ ccl_device_inline void shader_setup_from_sample(KernelGlobals kg, sd->Ng = Ng; sd->wi = I; sd->shader = shader; - if (prim != PRIM_NONE) - sd->type = PRIMITIVE_TRIANGLE; - else if (lamp != LAMP_NONE) + if (lamp != LAMP_NONE) { sd->type = PRIMITIVE_LAMP; - else + } + else if (prim != PRIM_NONE) { + sd->type = PRIMITIVE_TRIANGLE; + } + else { sd->type = PRIMITIVE_NONE; + } /* primitive */ sd->object = object;