90 likes | 254 Views
Notes. More papers to read: T. Duff, "Compositing 3-D rendered images", SIGGRAPH 1985 R. Cook, "Distributed ray tracing", SIGGRAPH 1984 R. Cook, L. Carpenter, E. Catmull, "The Reyes image rendering architecture", SIGGRAPH 1987. Gauss-Newton. For nonlinear least-squares…
E N D
Notes • More papers to read: • T. Duff, "Compositing 3-D rendered images", SIGGRAPH 1985 • R. Cook, "Distributed ray tracing", SIGGRAPH 1984 • R. Cook, L. Carpenter, E. Catmull,"The Reyes image rendering architecture", SIGGRAPH 1987 cs426-winter-2008
Gauss-Newton • For nonlinear least-squares… • Can approximate the nonlinear term with a linear function (Taylor series with the Jacobian!) and get a linear least squares problem:Gauss-Newton • Much more efficient, though we need to solve a (small) linear system to get the direction cs426-winter-2008
Evaluating Jacobians • Simplest approach in code:numerically approximate with a finite difference • Can also work out derivative analytically by hand (a little painful) cs426-winter-2008
When to stop • In our case, absolute minimum of f(.) is zero: stop when it’s smaller than some tolerance • It might be impossible to get to zero, but at the minimum f=0: stop when |f| is small enough • Or give up when maximum number of iterations reached cs426-winter-2008
Character Rigging • A “rig” is a model together with a UI for posing it • At its simplest, a skeleton with joint angles available for motion curves • May simplify DOF by enforcing relationships between joints • E.g. hand and fingers • May define standard poses (especially for facial expressions!) that can be mixed together • Then can set sliders to, say, 70% happy, 20% surprised, … • Take weighted linear combination of pose angles cs426-winter-2008
What’s left? • We now have the basics of animation • Plan for rest of course: • Rendering animations • (Semi-)automatic animation • Dynamics for rigid bodies • Particle systems • Skinning, morphing, blending • Motion capture • Motion control cs426-winter-2008
Compositing • Visual effects work usually involves combining real footage with CGI: compositing • In fact, even in pure CG shots, films break down each frame into a number of layers that are assembled • More flexibility to quickly change the look of a shot • Better division of labour cs426-winter-2008
Atop • The simplest (useful) and most common form of compositing: put one image “atop” another • Image 1 (RGB) on top of image 2 (RGB) • For each pixel in the final composite, need to know what RGB value to take • Where image 1 is opaque, choose RGB1 • Where image 1 is “empty”, choose RGB2 • Where image 1 is partly transparent, or where image 1 only covers part of the pixel? cs426-winter-2008
Alpha • We add another channel, alpha: RGBA • Encodes whether the pixel of the image is empty (alpha=0) or opaque (alpha=1) or something in between (0<alpha<1) • Most important case: at the edges of objects • When we render a layer, we compute and save alpha along with RGB • Or if it’s real action, use a “blue screen” behind the actors, estimate alpha • Premultiplied alpha: instead of storing regular RGB + alpha, storergb=alpha*R, alpha*G, alpha*B and alpha • Simplifies formulas to come cs426-winter-2008