Video Mapping (Projection Mapping), with audience point of view (INITIATIVE)

I’m not a video mapper, I just participate in one day Video Mapping basic lessons. And, I wanted to know if I could do with BGE… and it is possible.


I made a basic scene to show how it works. To understand, maybe you have to understand some video mapping technics, specially “audience point of view”. Anyway, I’ll try to explain as someone who never made a video mapping… but has an idea.

First, you have to take measures of the real projected wall or building facade. In this case… just a cube. Then, build in 3D space (“virtual_wall”), respecting all the measures, and put a camera where the audience will be (“cam_audience”). Then, duplicate this cube (but planar, as the wall, named “projected_wall”) far away from the first and put a camera where the projector display will be (“cam_projector”). This new cube or, rather, the front plane, will have a UV mapping, using the “audience point of view camera”, using “Project from view”.

And now, using “bge.texture.ImageRender(scene, camera)”, this plane will be textured with “cam_audience”, ergo, where the audience point of view will be.

Why using ImageRender from the audience point of view camera? To correct the perspective.

If you load the .blend, you can see the cameras, the objects and you can check “projected_wall” UVs (using a reference image taked from “cam_audience” to show how it fits). Just press “P” key and you will see an animation in the “virtual_wall” (something with shape keys) and how it is rendered in the “projected_wall”. Then, only to show the complete scene, the camera will fly a bit and came back.

WHAT IS NECESSARY TO TAKE THIS TO A PROFESSIONAL LEVEL:
The size of the rendered image is not fixed. It depends on it needings, it can be 256x256 or 512x512 or 1024x512… but, to make it works properly, we need more resolution and fixed. For example: 2048x2048… or more. Why? Becase, as the UV is mapped distorted, the pixels are not vertical and horizontal. So… with low resolution, it looks very ugly (Dalai?).

Also, I don’t know if it is a graphic card of mine problem, but, sometimes, the ImageRender() is not working well. Sometimes is right, sometimes, it makes the image distorted and, sometimes, the colors too.

Any tester? Some day, I will test this with my projector display in my wall… I’ll record it and upload it somewhere.

EDIT: Also, we can use BLAM for project calibration: https://vimeo.com/56955831

Attachments

wall_mapping.blend (1.51 MB)

This looks great, congratulations and thanks for share!

The idea is to acchive something like this:

I’m curious if you ever got around to doing this ?

I have a project I’d love to use this for , but still haveing issues workingout the logistics

No, I have a projector and I didn’t ever try this blend with it. It was only an initiative, because I think Blender as a good future VJ program.

Very good work! I advise you to see a collection of Video Mapping Store! I hope you will enjoy!