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):
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
August 26th, 2012 at 4:48 pm
Interesting… Could really imagine this making life easier.
December 20th, 2012 at 5:11 am
Really nice work! Reminds me of the old Luminance Attenuation Maps work.
http://www.cs.unc.edu/Research/stc/publications/Majumder_VRST02.pdf
May 1st, 2013 at 7:39 am
Thanks for the link Brett! similar thinking right down to the nomenclature.
Will check it out