BAM Maps – Introduction

A general problem with projecting onto objects (i.e. non-planar scenes) is the correct assignment of pixel brightness to every surface section on the object.

Here’s a short presentation regarding a technical idea we are experimenting with to automatically manage this scenario (Suggest pausing the video on longer slides):

YouTube Preview Image

The BAM map render pass finds the total available brightness for each surface element, allowing us to normalise how much brightness is actually presented to each surface element by modulating the brightness sent from each projector for that surface element.

Features include:

  • Automatic edge blending (handover between 2 or more projectors)
  • Tearing reduction (kill projector areas that are tearing, fill in with projectors that are not tearing)
  • Shadow filling (where projectors are blocked from covering a region, other projectors fill in the shadow)
  • Lighting model (rationally amplify light sent to obtuse normals and far away surfaces)
BAM stands for ‘Brightness Assignment Map’, however currently it’s more of a ‘Brightness Availability Map’. The next development step (following more testing and refining of the existing model) is to perform projector assignments for each pixel at the BAM render pass (for example, using an output bit mask). This would allow for more active projector prioritisation (e.g. more active assignment of brightness between projectors when 1 is markedly better than the other for a given surface element).

Elliot

3 Responses to “BAM Maps – Introduction”

  1. Kyle McLean Says:

    Interesting… Could really imagine this making life easier.

  2. Brett Jones Says:

    Really nice work! Reminds me of the old Luminance Attenuation Maps work.
    http://www.cs.unc.edu/Research/stc/publications/Majumder_VRST02.pdf

  3. elliot Says:

    Thanks for the link Brett! similar thinking right down to the nomenclature.
    Will check it out

Leave a Reply