ivo3d FX

Video Tutorials

One video per plug-in, each following the shot list at the end of the plug-in's own manual, so a video and its written guide always tell the same story.

Videos are being recorded. Until a video lands, the shot list is the tutorial — every step is reproducible from the numbered shots.

GIF Dither

video goes heresite/imgs/tutorials/gifdither.pnga poster image with a link, or paste an embed into content/tutorials.md

A shooting order for the video guide. Each shot answers one question, and shot 1 is the one everything else rests on.

  1. What dithering actually is. A smooth gradient, Cell Size 8, zoomed to 800 %. You can count the dots and see that there is no grey anywhere — only ink and paper. Pull back out and the grey returns. The grey is in the eye, not in the file; twenty seconds spent here saves every later explanation.
  2. Ordered vs. error diffusion. The same frame, Method from Bayer 4×4 to Floyd-Steinberg and back. Bayer is a repeating weave locked to the layer; FS is organic grain that follows the picture. Then Atkinson to show highlights and shadows blowing out on purpose, and Corner Mode for the clumped Bayer variant.
  3. The worms, and how to stop them. Play a moving shot on Floyd-Steinberg: the texture crawls. Stability 0 → 80 % pins it down. Then Crawl Speed 30 % brings the crawl back on purpose, on a completely still frame. This is the most-asked question about error diffusion, and both answers sit in one group.
  4. The grid, and why Relative exists. Cell Size 1 → 8 in Pixel mode. Then show the same comp at 720p and at 4K: the texture is not the same picture any more. Switch Grid to Relative and it is. Finish with Grid Origin: Center on a symmetric frame, and Average Fill on noisy footage.
  5. Colour, five looks in one shot. Duotone → Levels + Use Mid (risograph) → RGB Levels (the 1998 web GIF) → Preset Palette (Game Boy, C64) → Custom Palette, with the colours eyedropped off the footage itself. End on the fact that only the palette changed — the raster underneath never moved.
  6. The two things that are not dithering. QR Style: Size Modulation 300 % turns brightness into cell size, so dark areas collapse into big blocks. And Dither Alpha with a feathered mask: the logo crumbles into the raster instead of fading. Close on the audio-reactive recipe, so the last shot of the tutorial moves to the music.

Quadtree

video goes heresite/imgs/tutorials/quadtree.pnga poster image with a link, or paste an embed into content/tutorials.md

A shooting order for the video guide — structure first, styling second. Shot 1 is the one that makes every other control make sense.

  1. What a quadtree is. Fill Mode: Original Pixels with a 1 px white stroke, on a face. No styling at all — just the structure: small cells where the detail lives, one big cell over the flat wall. Now raise Detail Threshold slowly and watch the picture give up region by region. That single move explains the whole plugin.
  2. How it decides. Metric: Variance vs. Edge (Gradient) on the same frame — variance splits on texture, edge splits on outlines. Then Min Levels and Max Levels as the floor and the ceiling of the subdivision, and Luma Bias to make the dark or the bright end break down first.
  3. The boil, and what actually cures it. Play a grainy moving shot: the structure crawls frame to frame. Switch Cell Sampling to an averaged metric mode and it settles — and say why Stability goes quiet there: the averaging is the smoothing, so the old anti-flicker control has nothing left to do. Pair this with Grid Origin: Center on symmetric footage.
  4. The three fills. Flat Cell Color → Original Pixels (blueprint, with a thin stroke) → Gradient Map with Thermal and Nightlight. Then Custom (4 Colors) and build a lookup from your own four stops, dark to bright.
  5. Standing it up. Extrude Height 0 → 60. Extrude Mode: Directional with the angle dial for the axonometric city, then Radial (From Center) and drag the Center around. Then the height sources one at a time — Luma, Invert Luma ("the crowd comes out of the wall, the DJ stays flat"), Color Match on a costume colour, Detail — and finish on a Height Map Layer precomp with an animated Fractal Noise, which gives a stepping block-wave. Mention Side Shading as the control that sells the depth.
  6. The wireframe, and a moving finish. Stroke Only + Stroke Walls on a duplicate above the untouched footage: a see-through wire model you can glow, offset and blend independently. Close on Beat-shatter, so the last shot moves to the music.

PixelRun

video goes heresite/imgs/tutorials/pixelrun.pnga poster image with a link, or paste an embed into content/tutorials.md

A shooting order for the video guide. The plugin has a lot of panel, so the order matters: each shot answers exactly one question, and shot 1 is the one that prevents every later misunderstanding.

  1. What a pixel sorter is — and what it is not. Apply the Highlights sorter recipe and zoom in on one run. The same pixels are there, in a different order: nothing is added, nothing is blurred, nothing is invented. Then toggle the effect off and on over an area with no runs to show that the rest of the frame is bit for bit the original. Say the word permutation once, on camera; it explains why a one-pixel run cannot change and why Extrude and Spaced Out later have to be called out as the two honest exceptions.
  2. Where the runs are. Driven By, Threshold, Upper Threshold, Affect. Do this whole shot in Output Mode: Matte so the audience sees the selection instead of guessing at it from the result — then switch back and the same settings suddenly make sense. Add Angle, Band Width and the radial spokes at the end.
  3. How long they are allowed to get. Limit Length + Max Length, then Max Length Random, then Absolute Length (every run the same length, short ones stretched up to it), then Break Noise as cuts per 100 px. This is the group that decides whether the frame reads as a sorter or as a texture, and it is where most people give up — which is exactly why it deserves its own shot.
  4. What "sorted" means. Sort By Luma → Hue → Saturation → XOR (past glitch, into corruption), with Order and Mirror in between. Then Block Width / Block Height for the datamosh reading: the picture re-shuffled in recognisable fragments rather than combed.
  5. Moving the runs. Shift Mode in order: Sort (in place)Float (with Offset Random, the floating-particles look) → Stretch (the bacon curtain) → Spaced OutExtrude. ☠ Be explicit at the last two: Spaced Out is the one mode that discards the unselected pixels, and Extrude is the one that is not a permutation at all — it gives pixels a height instead of an order. Everything before them leaves the rest of the frame untouched, and the audience should know exactly where that stops being true.
  6. Making it move. Anim Growth 0 → 100 % across two seconds: the effect grows out of nothing, short runs finishing first, and at 0 the frame is the untouched source. Then the loop: Mirror on, two Linear keyframes on Cycle, 0° → 360° — the material flows along every run and the last frame joins the first exactly (measured: 0°, 360°, 720° and 1080° render byte for byte identically). Then Break Drift + Break Evolution for the travelling glitch. Close on the audio-reactive recipe with Anim Growth driven by the track, so the tutorial ends on the beat.

RuttEtra

video goes heresite/imgs/tutorials/ruttetra.pnga poster image with a link, or paste an embed into content/tutorials.md
  1. The carrier alone. Black frame, Path Wave 20, FM Depth 0. A pure ripple; Wavelength sets its pitch, an animated Phase makes it travel.
  2. The image takes over the frequency. Bring in a picture and sweep FM Depth from 0 to 4 on camera. Same wave, now dense on the highlights. That sweep is FM.
  3. One phase, two readings. Add Intensity Wave next to Path Wave — the stripes land on the crests. Then take Path Wave to 0: the shape is gone, the signal is not.
  4. Accumulating vs. in place. One long line across a single bright blob, first with FM Depth alone (everything downstream is dragged along), then with Phase by Luma alone (only the blob's own rim kinks). This is the fastest way to show what an accumulator is.
  5. The chain, dry. Wavelength 8, Demodulate 100 %, Carrier Lowpass 0. Nothing changes — the identity. The empty shot is what makes the next one land.
  6. The artifact. Walk Carrier Lowpass from 0 to 16 px: the terrain starts overshooting the highlights and ringing off the edges. Then Filter Order 1 → 4, then Demod Smooth 0 → 24 px (line-like → painted), and finish on Signal Path (trailing → symmetric → radial). Put a Fast Box Blur beside it at any radius for the punchline: the blur can only flatten, the demodulator overshoots.