How can one set up a non-emitting environment map in cycles? If I set strength to 0, it is black. I tried doing something with Light Path node, but didn't succeed so far.
-
$\begingroup$ You can disable the 'diffuse' ray visibility in the world panel. $\endgroup$– lemonAug 9, 2016 at 16:32
-
$\begingroup$ somewhat related: blender.stackexchange.com/questions/49337/… and blender.stackexchange.com/questions/34532/… $\endgroup$– user1853Aug 9, 2016 at 17:08
2 Answers
Use a light path node, so that only the camera sees the environment texture but is not affecting the objects in the scene:
-
1$\begingroup$ just for information, is there a difference between this node setup and the diffuse ray visibility ? $\endgroup$– lemonAug 9, 2016 at 17:15
-
1$\begingroup$ @lemon Diffuse would only affect... diffuse. A glossy object would still reflect the environment $\endgroup$– user1853Aug 9, 2016 at 17:17
-
1$\begingroup$ ok... I meant in the principle if you keep only camera ray in the cycles world panel ? $\endgroup$– lemonAug 9, 2016 at 17:19
-
$\begingroup$ @lemon sorry I misread, but the answer is the same. If you disable diffuse only, it will still affect other rays: i.stack.imgur.com/m7CKi.jpg $\endgroup$– user1853Aug 9, 2016 at 17:26
-
2$\begingroup$ The result will be the same, but the way Cycles arrives at is slightly different. Using the ray visibility switches prevents secondary rays from being sent to the world background. This node setup will still spawn the ray, then cause it to return 0. So the ray visibility switches are more efficient, although in this case the difference is minimal. $\endgroup$ Aug 9, 2016 at 18:28
The above answer is way more complicated than it needs to be, just use compositing.
Just in render settings set Film to transparent and Color Management > View Transform to standard
Then in the compositing tab, use nodes and put an "Alpha Over" node between the two default nodes.
This video explains it perfectly: https://youtu.be/aegiN7XeLow?t=50