How can I have an object that emits light (using an emission shader) onto other objects, but when rendered appears to be diffuse (or any other shader for that matter)?

In essence, I want one object to emit light that shows on other objects, but that only itself receives light from other objects (not itself). Is this possible?

I tried doing this using Max/Add Shader nodes, but this just mixed in the "pure white" emission shader look with the diffuse shader I was using.


1 Answer 1


Use the Is Camera Ray output of the Light Path node to mix the shaders.

example node setup

  • 3
    $\begingroup$ How did you get the Light Path node to only show the Is Camera Ray output? $\endgroup$
    – gandalf3
    Jul 8, 2013 at 21:30
  • 5
    $\begingroup$ @gandalf3, Toggle Hidden Node Sockets: Ctrl+H. $\endgroup$
    – Aldrik
    Jul 8, 2013 at 23:16
  • $\begingroup$ Ah, thanks.. learn something new every day ;) $\endgroup$
    – gandalf3
    Jul 9, 2013 at 1:40

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .