Reflection/Environment Maps

While a reflectivity map determines where an object is reflective, a reflection map determines what it reflects. Reflection maps are also called environment maps.

You can use a reflection map to replace raytraced reflections and speed up rendering. Alternatively, you can use reflection maps to enhance raytraced reflections, for example, by providing a background in addition to the reflected objects in the scene.

You can use an environment to completely encompass the whole scene, or you can apply it to a specific object.



The illustration on the left shows an insect's eyes with its reflection property activated: notice the flower's reflection in the eyes — this is raytraced reflection.


Reflection and environment map

The illustration on the right has a reflection map (clouds) in addition to the reflection property (flower). The reflection map is an environment shader that reflects a texture (in this instance, clouds) in the surface's reflective areas.

Reflection Mapping and Raytraced Reflections

You can define whether reflections are Raytracing Enabled or Environment Only from the surface shader's property editor.

  1. Select the object whose reflective surface you want to modify.

  2. Choose Modify Shader and click the Transparency/Reflection tab.

  3. For the Reflection options, set the Reflection Mode:

    • Raytracing Enabled reflections are slower to render on the object's surface because they are actually computed for everything around them. This includes the environment map which is combined with the raytraced reflections.

    • Environment Only reflections are much faster to render on the object's surface because they are simulated based on a specified texture which is defined in an environment shader. There are no inter-object reflections calculated when this mode is active, only the reflection map appears on the object's surface.

Using Environment Map Shaders

Environment shaders are used mainly to create an environment that completely encompasses a scene. To simulate this environment, an environment shader can be applied to a geometric object, or to a scene's render pass so that all reflective objects are affected by the global environment map.

The Render Tree Usage shader [Shader Reference] can also be used to light scenes using High Dynamic Range (HDR) images. See Using Environment Maps to Light a Scene [Image-Based Lighting].

Creating a Global Background Environment

The most common use for an environment shader is to create a background that is visible from any camera angle at any distance and reflected on the surfaces of objects in your scene. To do this you apply an environment shader to a render pass.

To give a scene an environment map

  1. Select the pass for which you want to generate the background environment and open its Render Pass Property Editor [Properties Reference].

  2. Click the Pass Shaders tab.

  3. In the Environment stack window, click Add to select an environment shader from the shader library. See Environment [Shader Reference].

  4. Click OK when you have chosen a shader — it appears in the shader stack list.

  5. To give the shader a texture to use as an environment, select the shader from the stack window and click Inspect. This opens the shader's property editor. For more information on how to use a particular environment shader, click the ? icon in the shader's property editor.

Creating an Environment for an Object

Rather than create an environment that encompasses an entire scene, you can work on a smaller scale and create a specific environment for a single object. The object is usually reflective and is given its own environment map to speed up rendering.

To give an object an environment map

  1. Select the object to which you want to apply an environment shader. Make sure that you have applied a material to it.

  2. From the Render toolbar, choose GetShaderEnvironmentEnvironment Map or More... to open a list of environment shaders you can use. See Environment [Shader Reference].

  3. When you have chosen a shader — it is connected to the material node's environment input.

  4. The shader's property editor opens where you can give it a texture to use as an environment. For more information on a shader's parameters, refer to its help topic by clicking on the ? in the property editor.