CG Car model

This section describes the approach that was taken to creating the CG car that falls into the chasm. Since it's quite small in the shot, (and because time was tight!) I needed to produce a model as easily as possible, with just enough detail to be convincing in the shot.

First attempt

I originally tried to be really lazy and to use a van from the original footage as a camera map onto some very simple geometry. The geometry was pretty much just two cubes stuck together. In fact, this was part of the reason why I chose a rather boxy van...

From the front, it looked like this. This is extracted from a frame of the original footage.


Note that it's quite fuzzy because this is enlarged significantly from the original footage. Looks OK, but not great, and the matte around the wheels isn't very good. Since this was for a first test I didn't worry too much about that.

Now this is what it looks like as seen from the side (as it would need to be as it rolls over into the hole). Oh dear. Not good at all. Terrible, in fact. You can see that the side of the van is very fuzzy and lacking detail, and in fact a large chunk of it doesn't have any detail at all and is effectively missing.


The problem is that the detail that needs to go into this area simply doesn't exist in the original footage,

Since it was now clear that using the original footage to provide a decent map for a vehicle wasn't going to work, I had to take a different approach.

Second attempt

This time I decided to do it properly...
I took front and side photos of my car, and used them as reference for making a fairly simple HyperNURBs model of the car. I then (after some tweaking in Gimp) used these images as projection maps for the car.

The only complication with this is that I needed the material to blend between the two photos, depending upon position on the model.

For this I created a mask channel with intensity dependent upon the surface normal direction. The closer the surface normal is to pointing towards the 'front' or 'back', the brighter the mask, and the closer to the side the darker. A colourised version of this can be seen here (the actual mask is greyscale).

As you can see below, the car model is quite simple. The only details are the wing mirrors, since they stick out enough that it's noticeable if they aren't there. the rest of the car is just a simple HyperNURBs model (Subdivision Surfaces). Note that the surface colour in this image is determined by the mask channel based on the surface normal.



Projecting the front photo onto the model without the mask:



This looks fine from the front, but on the sides it has the same problems as the van had, due to the absence of detail in the photo for the side surfaces.

Using the side map only gave the following:


This time the sides are fine, but the front and back aren't.


Finally, this is what the model looked like with both maps applied and using the normal dependent mask to selectively fade between them depending upon which part of the model is being considered.


And that's the final model as used in the shot. It doesn't stand up to close scrutiny, but it's good enough for the shot that it was made for.  

The addition of a third photo taken from above would remove the remaining texture stretching that you can see around the top and bottom of the windscreen, since in that case none of the photos would be projected as the main texture at an angle worse than 45 degrees. The next most obvious defect in the model (I think) is that the seat headrests are projected onto the windscreen because the model is solid and has no internal detail.


If anybody is reading this stuff and finding it useful, then let me know, and I'll try to write more.