Wednesday, January 31, 2007

Strutyourreel.com 10 second contest

Here's my entry to January's Strut your reel animation contest.



The animation was the easy part! The sync is a bit off on YouTube which I am blaming on the conversion process. The first version I uploaded was completely out-of-sync, I believe because I had animated it at 24 fps. I switched to 29.97 and then to 30 fps and it is better, but after uploading many different versions of 30 fps I realized that I could upload the same clip but the sync would be a bit different after the conversion. That said, the best results seemed to be with: 30fps source, converting the sound to mp3, exporting a .mp4 file using the MPEG-4 Codec (although uploading the same clip twice still resulted in slightly different audio synchronisation).

You can see all the entries at strutyourreel

Friday, January 12, 2007

fcurve madness

When fixing animation always remember to double check fcurves. Two things have recently driven me mad!

(a) on curves using spline interpolation if 2 keyframes are of the same value make sure that you use plateau slopes so that the value between the 2 keyframes does not exceed the 2 keyframes;

(b) if you retime animation make sure that there are no keyframes that are not on frames -- this can be achieved by selecting the keyframes and choosing "move keys to nearest frames". However, this may not work IF there is already a keyframe on the nearest frame and you may end up with a keyframe immediately before or after... if you're working in the dopesheet you won't see this stray keyframe

So the lesson of the day is, if you have movement where you don't expect there to be movement, double check the fcurves for the slope between frames and for extra keys between frames.

Thursday, January 04, 2007

RGBA Matte Pass - override ignored if color correction node exists in render tree

One of the comments I received regarding the film was that the carpet didn't have enough resolution. I was simply using a low res texture of a braided rug and had become used to it. Since I didn't have a high res texture I've been testing various methods of creating a higher resolution carpet and have tried a number of different ways (including modeling the braid and using skeletons to wrap it into a rug -- which was way too big of a model to actually use and didn't end up looking that good ;o). I also tried painting a photoshop image (with painted bump map) -- this method looked great in the small tests that I did but when I made the large final rug -- it didn't look so great. Finally I ended up using the fabric procedural shader and after lots of tweaking I have something that I think is acceptable, although I have to give up on the braided rag rug look and accept a rug look.

Now that I've got the rug geometry I thought I could just render it in a RGBA matte pass and composite it into the other renders. However, when I made the matte pass (using the preset) -- the characters appeared in the render in full RGB - while the rest of the objects were as expected rendered in black.

After a bit of searching I discovered that this was being caused by having extra nodes in the render trees -- on 2 of the characters I had a color correction and on another I had a intensity change. Removing these and recreating the pass gives me the pass as I would like it to be. However, this will cause a problem when/if I need to re-render any of the characters as they will no longer match the other frames.

For scenes 1 and 2, since I need to re-render the beauty pass anyway, I'll just add the new carpet to the beauty pass. Scene 3 will be a bit more of a problem.

I'm still using XSI 4.2 so this is possibly fixed in a more recent version.