Comp Foundations
Channels, alpha, premult, merge, grade and node vs layer in the mini compositor
- F1Channels and alphaAn image has 4 channels, and alpha is "where there is something"
- F2A double premult in a real graphOne node makes the dark edge: find it and switch it off
- F3Light adds up: plus vs screenWhy screen makes sparks look flat
- F4Grading a premultiplied imageOne lift, and the whole frame lights up
- F5Layers vs nodesOne shot, two ways of thinking: After Effects/Photoshop vs Nuke/Fusion/Natron/Blender
- F6PlaygroundWire up anything and try everything so far
Color
Linear vs display, sRGB ≠ gamma 2.2, log, stops, gamut, view transforms
- C1Linear vs what the screen showsWhy 18% grey shows as 0.46
- C2sRGB is not gamma 2.2Two curves that agree, except in the shadows
- C3Stops and exposure+1 stop = twice the light = ×2
- C4Log: why footage looks flatMany stops packed into 0–1
- C5Gamut: same numbers, different colourssRGB, P3, Rec.2020 and ACEScg on one diagram
- C6View transforms: display, not the imageValues above 1 are real data the screen can’t show
- C7Saturation and lumaRemove colour without changing brightness
- C8White balance with a colour multiplyA blue-tinted plate, fixed with per-channel multiplies
- C9Where negative values come fromSharpen, despill and image subtraction (minus) can go negative
Color Systems in 3D
The RGB cube, 3D gamuts, ACES/OCIO, white point and HDR vs SDR
- CS1The RGB cube: every pixel is a dotWatch a grade move the whole cloud in 3D
- CS2Linear vs sRGB inside the cubeSame pixels, different coordinates: watch the darks stretch
- CS3Gamuts are volumes, not trianglessRGB, P3, Rec.2020 and ACEScg in xyY
- CS4The ACES/OCIO colour pipelineIn → work in ACEScg → out. Fix the broken steps
- CS5White point and chromatic adaptationNeutralise a grey card under tungsten with Bradford
- CS6HDR vs SDR: where does a 62 go on screen?Scene values vs the nits a screen puts out
Camera & Lens Lab
Sensors and lenses: FOV, perspective, DOF/bokeh (with real Blender renders), distortion, motion blur
- L1Focal length and sensor size35 mm on Super 35 is not 35 mm on full frame
- L2Perspective comes from distance, not the lensZoom in and back off: the background "grows"
- L3Depth of field and bokehHow big a blur disc gets is computable
- L4Lens distortionStraight in the world, curved in the plate
- L5Shutter angle and motion blurBlur length = speed × shutter
- L6Vignette: darker cornersReal lenses deliver less light to the corners
- L7LensDistort on a straight gridWhat k1 and k2 do to lines
Camera Lab 3D
Drive a camera in a 3D set: shot sizes, angles, lens vs distance, the frustum, exposure, camera moves, the 180° rule
- CL1Shot sizes: ECU to EWSMatch target shot sizes with camera distance and focal length
- CL2Camera height and angleLow, eye level, high, overhead: where the camera sits changes the feeling
- CL3Same size, different lensPerspective comes from camera distance, not from the lens
- CL4God view: the camera from outsideFrustum, sensor, focal length and FOV move together
- CL5The exposure triangle: aperture, shutter, ISOEvery control speaks in stops, and each one has a side effect
- CL6Camera moves and parallaxPan, dolly, zoom, orbit, crane: which ones have parallax
- CL7The 180° ruleStay on one side of the line and screen direction holds
Tracking & Matchmove
2D tracks, stabilise, planar, 3D camera solves, lens distortion and checking a matchmove
- TR1Pick a feature to trackGood features, pattern and search boxes, reading the error curve
- TR2Stabilise vs match-moveOne track, two directions
- TR3Planar track: replace a screenA flat surface follows a four-corner pin
- TR4Parallax and the camera solveDepth comes from seeing one point from two places
- TR5Lens distortion: undistort, then redistort only the CGStraighten the lens, then send the CG through the same lens as the plate
- TR6Reading solve errorError is in plate pixels: look at the worst, not just the average
- TR7Check a matchmove for slidePut CG on the ground, near and far, and play the whole shot
- TR8Object track vs camera solveTake the drone out of the camera solve, then give it a solve of its own
Keying Lab
Key a green screen in the browser, scored against the true Blender matte: keyer, edges and fine wires, despill
- K1How a keyer worksscreen = g − max(r, b), flipped into alpha
- K2A hard key eats fine detailThe thin antennas vanish because the clip is too hard
- K3Despill: average vs maxGreen light bounced onto the robot
- K4Erode: shrinking the matteLast, and only a little
- K5Fixing edges with alpha gammaThe first edge fix after despill
Roto & Masks
Shapes, feather, Keymix, matte merges and holdouts
Transform & Filtering
Move, scale, rotate, pivots, resampling and concatenation
Integration
Make CG sit in the plate: blacks by depth, haze, light wrap, grain, QC, AOV rebuilds
- I1Black matching by depthFar blacks are lifted and tinted by haze
- I2Haze by depthHaze is a coloured layer masked by depth, not a lift
- I3Light wrapLet a little background light bleed onto the CG edge
- I4Grain once, at the endFix a graph that grains every element
- I5QC with the viewerGain up, gamma up, then find the faults
- I6Rebuilding the beauty from AOVsHere: diffuse + glossy + emission = beauty
CG Multipass & Relighting
Light groups, Cryptomatte, P and N passes, depth defocus, motion vectors, shadow/AO and holdouts on our CG robot
- CG1Light groupsRebalance each light in stops to match the plate’s light
- CG2Isolate with CryptomattePick the visor in the right layer and push it 1 stop, touching nothing else
- CG3Position mattes from the P passSelect by real 3D distance, not by screen position
- CG4Relighting with the normal passLet the sparks light the robot with N·L, albedo and plus
- CG5Depth defocus by layerDefocus each depth layer, then merge
- CG6Vector blurMotion-blur the CG from its motion vectors, matched to the plate’s shutter
- CG7Shadows and contact AOMeasure a real plate shadow and give the robot’s shadow the same colour and density
- CG8Holdouts and merge orderWhatever is nearer the camera goes on later
2.5D & Projection
Split a plate into depth cards, project it onto geometry, nodal pan vs translation, parallax and the gaps you must paint
- P12D pan vs 2.5D cardsSplit the plate by depth so near things move faster than far ones
- P2Camera projection and the safe moveProject the plate from its own camera onto simple geometry and see how far you can move before it falls apart
- P3Nodal pan vs camera translationRotating in place has no parallax, so 2D is enough; once the camera travels you need 3D
- P4Reading depth from parallaxPosition in frame can lie; how far a point slides tells you its depth
- P5Why 2.5D breaks: the revealed gapsMove the camera and you see behind the rocks, which the plate never filmed: paint it in advance
Paint & Cleanup
Clone brush, wire and rig removal, tracked patches over markers, clean plates from many frames, degrain and regrain, QC with difference views and the flip-book, and when to project instead of paint
- PC1Clone brushPick the right source, use a soft edge, and paint the shadow too
- PC2Wire removalFill, clone or split frequencies so the wire goes without leaving a smooth line
- PC3Tracked patchPaint one frame, let the track carry it
- PC4Clean plate with a medianCombine many frames so only the background stays and what moves drops out
- PC5Degrain and regrainPaint on a grain-free plate, then add new grain that moves every frame
- PC6Cleanup QCUse two difference views, then play every frame
- PC7Paint or projectPick the cheapest method whose patch doesn’t slide
Finishing & Optics
Defocus, glow, sharpen, chromatic aberration and the finishing order
- O1Blur is not defocusPoints of light become discs (bokeh), not soft haze
- O2How a glow worksTake the bright part, blur at several sizes, add
- O3Sharpen makes halosSharper by pushing edges past reality
- O4Chromatic aberrationRed and blue drift apart towards the frame edge
- O5The finishing order, like a real cameraGlow → CA → vignette → grain
Lens Artifacts (Advanced)
Flare ghosts, anamorphic, halation, glow vs diffusion, rolling shutter, overscan and the lens stack order
- LA1Lens flare ghostsGhosts line up from the light, through the centre, to the far side
- LA2The anamorphic lookVertical oval bokeh, horizontal streaks and distortion
- LA3Halation: add only what spreadsmax(0, spread − original), and roto out red lights
- LA4Diffusion, glow, veiling glare and the energy testThree different looks, and measuring a glow on a flat field
- LA5Rolling shutterRows read one at a time: fast pans skew, vibration wobbles
- LA6Overscan for redistortRender CG with spare edges, or the corners come out empty
- LA7Lens order and focus breathingDiffusion → flares → glints → shake → CA → halation → grain
FX Elements: fire, smoke, explosions
Fire is light, smoke is matter, interactive light, heat distortion, explosion timing, retiming by scale and element QC
- FE1Fire is lightPlus the fire onto the plate, keep the core above 1, check the element’s black
- FE2Smoke is matterOver with its own alpha, graded without lifting the empty area
- FE3Interactive lightMultiply the light by the plate, then plus it; never add light straight on
- FE4Heat distortionHeat shimmers in place, above the fire, and very gently
- FE5Explosion timingFlash first, shake when the shockwave lands
- FE6Retime by scaleBig things move slowly: scale an element up, slow it down too
- FE7Element QCPush the viewer, check alpha and grain, then fix the right thing
Motion Basics
Keyframes, graph editor, timing and spacing, springs, overlap, camera shake and retiming for comp
- M1Keyframes and interpolationSame two keys, very different frames in between
- M2The graph editor: handles and speedDrag a handle and watch the speed curve change
- M3Timing and spacingHow many frames, and how far apart: two different things
- M4Overshoot and settleA spring that overshoots once, then settles
- M5Follow-through and overlapping actionThe robot’s antenna: the tip arrives after the root
- M6Camera shake for VFXA blast’s shake starts when the shockwave arrives, not on the flash
- M7Retiming: slow motion without stutterNearest frame, frame blend or motion vectors
AI in Comp: CopyCat concepts
Train tiny models in the browser: input/target pairs, choosing frames, overfitting, marker cleanup, is it worth it, and QC of results
- AI1What a model learns: input → target pairsLearn a colour grade from 3 before/after patches, then apply it to the whole frame
- AI2Choosing training data: coverageTrain on the darks only and the model breaks on the sky
- AI3Loss curves, epochs and overfittingToo big memorises noise, too small misses the shape
- AI4Patch-based cleanup: removing a markerFix a few frames by hand and let the model do the rest
- AI5When ML is worth it, and when to work by handCount artist time from your own estimates
- AI6Reading results: difference views, flicker and QCA good loss doesn’t mean every frame is good
Case Files: real comp problems
Real cases, detective style: symptom → cause → fix → prevention
- CF1Case 1: the CG looks pasted on, because its blacks are deeperMatch the black of things at the same distance, not the darkest pixel in frame
- CF2Case 2: a light rim round the key, though the matte didn’t changeBefore touching the matte, check the colour at the edge
- CF3Case 3: the empty element that darkened the whole frameAlpha-0 pixels carrying negative colour from a log black
- CF4Case 4: flat sparks and grey bokehLight clipped at 1 before the defocus, then screened on top
- CF5Case 5: light from behind lands on the robotLight plussed after the foreground went over, so it covers the foreground
- CF6Case 6: the sparks vanished and the robot’s edge went darkA Premult kills everything outside the alpha
- CF7Case 7: grain on top of grainRegrain only what changed, but the mask was inverted
- CF8Case 8: the CG is sharper than the plateFind the culprit among three suspects