In my scene it is required to position the lights close to the main object like this:
How I can make the light source invisible to the camera?
In the object properties, you can turn off Ray Visibility of the 'emission object' for the camera:
As of Blender 2.76 the Ray Visibility panel was renamed to Cycles Settings:
As of Blender 2.8x, Ray Visibility panel is now part of the new Visibility Panel:
You can also run this script to toggle the Camera Ray Visibility for selected objects (updated for 2.8x):
import bpy for obj in bpy.context.selected_objects: # toggle mesh lights if obj.type == 'MESH': for slot in obj.material_slots: if slot.material: for node in slot.material.node_tree.nodes: if node.type == "EMISSION": obj.cycles_visibility.camera = not obj.cycles_visibility.camera # toggle light types if obj.type == 'LIGHT': obj.cycles_visibility.camera = not obj.cycles_visibility.camera
You can setup the emission material in cylcles like this:
Note: @gandalf3 mentioned that disabling visibility is slightly more efficient performance wise than this node setup.