Projectors


A projector is a camera view plus an image to project on the scene. It can colorize whatever geometry is “lighted” by the projector allowing also to see occlusions if shadow mapping is supported.


The specific commands are:

Load projector: to load (light on) the image on the 3D model.

Set projector image: to set the desired image to project

Edit projector image: edit the projector’s image to set the transparent pixels in order to produce better blending among the projectors


The specific editable properties are:

Activate: the image is loaded and projected on the scene


Shadow mapping

This technique works only for triangle meshes. To compute the occlusions from the view point of the projector, a depth buffer of the scene is created. Unfortunately the accuracy of the shadows depends on the sampling of this depth buffer, thus its width and height and depth range. Ideally the size should be infinite, but this cannot fit in the memory so the resolution must be tuned. It's recommended to use at least the width and height of the projected image and to keep the clip near and far planes as close as possible to the desired scene depth range. Because of this coarse resolution, the resulting depth buffer is affected by quantization noise. To compensate for this, an epsilon term is used as a tolerance for the depth comparisons. For each depth point, the epsilon formula (known as polygon offset) is: ShadowScale∙Depth + ShadowBias. If some random black points are visible when casting the shadows, try to increase the scale and bias, but pay attention that excessive values produce less shadows.

Shadow bias: additive term for polygon offset during the depth buffer generation (default is 16)

Shadow scale: multiplicative factor for polygon offset during the depth buffer generation (default is 2.5)

Shadow width/height: size of depth buffer used to compute the occlusions from the view point of the projector. It's recommended to use at least the same size of the projected image, displayed in the tooltip of the projector.