0
$\begingroup$

I have a scene which must appear as if it's lit by a very small mesh lamp. To optimize performance, what I'm trying to do is place a point lamp inside of the mesh lamp, and have the point lamp shine through the mesh lamp by having the mesh lamp's back faces be transparent. However, in the reflection of the lamp on a glossy material, the point lamp shines through the mesh lamp:

Point lamp shines through

I've tried making the point lamp invisible to glossy surfaces via Ray Visibility, and having the mesh lamp only be visible to glossy surfaces and the camera. While this works, it makes rough glossy surfaces quite noisy, partially defeating the purpose of using a point lamp instead of a mesh lamp in the first place:

Noisy glossy surface

Are there any other solutions?

.blend file

$\endgroup$
2
  • $\begingroup$ Why don't you simply use the sphere with no lamp ? $\endgroup$
    – lemon
    Aug 7, 2016 at 16:37
  • $\begingroup$ @lemon Small mesh lights are extremely noisy. $\endgroup$
    – adroitwhiz
    Aug 7, 2016 at 17:18

2 Answers 2

3
$\begingroup$

Two possibilities:

  • Remove the glossy ray visibility of the lamp :

enter image description here

  • Or you can set up the sphere nodes like this :

enter image description here

  • OK, this is what you said in your question... but it works...

$\endgroup$
1
$\begingroup$

I figured it out, with help from @lemon.

What I needed to do was prevent the mesh lamp from casting shadows, by either:

  1. Having a simple emission shader (no trickery in the material whatsoever, just an Emission node connected directly to the Output node) as the mesh lamp's material, but also disabling shadow ray visibility on the mesh lamp.

  2. Using this node setup on the mesh lamp: Mesh lamp node setup

$\endgroup$

You must log in to answer this question.

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