Apr 16, 2014

Mattepaint camera setup for multiple shots

Hi, so it lasted for a little while I managed to really post a new one! :) Sorry for that!
So in our current project we have a few sequences where we are using background mattepaints. Nothing new at this point. But I really like the way I create the camera and the framing for the mattepaint, from the existing shot cameras. The concept is that we should give the painter the least possible work :) (Not because he is slow) The less number of paintings and less area to paint, is the better. So I exported the cameras from maya to nuke, all animated of course. I make an environment sphere, using an uv grid as a texture, just to see where are the cameras heading. I really like the camera projection in nuke, because I can project from every shotcamera a constant color onto this sphere, using mergemat node, and then scrubbing in the timeline I can see all cameras animating the projection in realtime. Then I use a checkerboard texture projection (see the second and third image below) for a newly created mattecamera. The purpose it should cover all the area covered by the other cameras (those are projecting different constant color). I usually duplicate one of the shotcameras (usually the one with the biggest field of view) that will be the new mattecamera. Then I lower the focal length, to make the fov bigger, and rotate as needed. If there are cameras facing completely different directions, then more than one mattepaint is needed, and we should group the cameras based on facing direction. These cameras I pass back to maya, and render a basic lit environment, that the painter uses as base for his mattepaint. When the paint is ready, I save layers as images from that, and project back onto proxy geometries of the original scene geometry. Or just onto cards, if further away. Using of course the same mattepaint camera as projector camera.


Node setup, the main thing is the projection using mergemat nodes to the sphere.





Projection in 3d view




As you can see here the checkerboard texture of the mattepaint camera should cover  the whole colorful area of the shotcameras . Of course an  important thing should be also considered when setting up painting area: what objects are blocking the shotcameras' view? For example if a shot is an extreme close-up, and 95% is blocked by an actor, that camera should not considered in the setup at all. Ground can be also blocking a big area, that should not be painted, if it would be later rendered in 3d properly. Good idea to check that with mixing a shot playblast onto the render from the mattecamera. So the painter can be given instructions of which which areas should be carefully painted and which needed only rough painting. (because of DOF, motionblur, blocked view etc.)





Hope this tip is useful for someone. I try to post new tips as soon as I can. :)
Bye,
Gabor

3 comments:

  1. Cool, interesting stuff, I've done something similar while reframing gs plates. Quick question though, I've not found a robust way of ensuring all the solved cameras exist in the correct 'real world' space. Do you just manually offset the tracked cameras in maya so they roughly point where they should be or is there a correct workflow for this.

    ReplyDelete
  2. Hi, this workflow is safe for full cg animation, when all cameras are in the correct "real world" space. This is what I used for. For live action maybe you can compare the orientation based on the generated point clouds from tracking. But I'm just guessing.

    ReplyDelete
  3. Just stumbled upon your blog, and I have to say I'm quite glad, because I had this exact same situation to deal with, came up with basically the same idea but forgot it, and this tip reminded me how to tackle this issue very efficiently.
    My old setup was to paint with two mattecameras (one at the first frame, the other one at the last one) and then combine them with a mergeMat and doing nasty masking to see the best parts of both in the renderCam. It would work but you can imagine the headache...

    So, many thanks, and looking forward to read your future posts !

    Cheers !

    ReplyDelete