Table Of Contents
Introduction
This shader is used to project an image in camera space. It is generally used in conjunction with the Matte Shadow Catcher shader to generate input for the 'background', which will match the back-plate of the environment shader.
Image
Image Name
This is the texture map that is to be projected.
SRGB / Gamma / Exposure / Hue / Saturation
Common image adjustments.
Most non HDR textures require gamma correction during sampling. If your texture is SRGB compliant then you need to check the SRGB option.
Use Image Sequence
Toggles the ability to use an image sequence for your camera map.
Image Number
Controls the current frame number to use from your image sequence.
Frame Offset
Controls the offset for your image sequence.
Scaling
Match Render Size
This forces the texture projection to match one pixel to one texel.
For this to work correctly, the render frame must have the same dimensions (in pixels) as the texture you are projecting.
Aspect Ratio
This specifies what aspect ratio to use for the back-plate:
- Texture – Uses the texture dimensions to determine aspect ratio. Texture will not be warped.
- Render – Uses the render frame dimensions to determine the aspect ratio. Texture may be warped.
Apply Camera Exposure Compensation
When enabled, this disables the Photographic Exposure nodes effect on your camera map.
Alpha Channel Replace
Enable
This allows you to override the texture alpha values. This may be necessary if they are either non-existent or not correct.
Typically, for environment textures, the alpha value should always be 0.0, if you plan on compositing environment layers.
Alpha
This is the alpha value that will be used instead of the texture alpha values.
Reflection/Offscreen
Reflection is Environment
Bypasses the projected texture when seen through reflection rays and returns the environment map instead.
This is useful if the environment map does not match the projected back-plate texture very well.
Off-screen is Environment
When enabled, if a non-eye ray lands outside the camera frustum this bypasses the projected texture and returns the environment map instead.
This overrides the 'Off-screen Color'.
Off-screen Color
If a non-eye ray lands outside the camera frustum this bypasses the projected texture and returns this color instead.
Camera
Camera
This allows you to pick a camera to project from, bypassing the default 'render' camera. This option can be useful if you want to freeze a projection in a scene, while still being able to move the render camera.
When an alternative camera is used for the projection, the Scaling Aspect Ratio option is ignored and the texture aspect ratio is dictated by the camera projection aspect ratio.
Camera Map Example
Here is a simple scene that demonstrates the Camera Map shader in conjunction with an environment back-plate using the same image.
In this example you can see the environment back-plate image (courtesy of Jeff Patton), with a modeled magenta plane in the scene where the road should be.
The starting scene, a magenta ground plane with no Camera map.
Now with the Camera Map applied using the same imageas the backplate for the environment it matches seamlessly.
Now we create a fully reflective sphere, hovering just above the plane that has the Camera Map applied to it. The Environment map uses a back-plate for eye and rays spherical 'longitude-latitude' map for reflections / refractions/GI. Note how the sphere reflects part of the road perfectly – this is where the rays have landed inside the camera frustum. Since 'Off-screen is Environment' is enabled by default, the rest of the reflection in the sphere shows the environment map.
The discontinuity between the two reflected images looks strange, so enabling 'Reflection is Environment' produces a less accurate, but more consistent result.