# MayoFlux Pixel Stretcher 1.1

Native Windows x64 effect for After Effects 2026 (26.5+ in the 26.x family). Adds radial streams, particles with trails, forces and size over life. The original horizontal/vertical sorting and mask stretching remain available under **Classic Lines**. Existing Pixel Stretcher 1.0 projects retain their parameter IDs and defaults.

## Make a particle emitter

1. Apply **Effect > MayoFlux > Pixel Stretcher** to your image or artwork precomp.
2. Create a mask precomp with the same dimensions. Put white shapes or text over transparency inside it; add it to the main composition and turn its visibility off.
3. In **Mask Source**, choose **Stretch From Mask**, your **Mask Layer**, and **Alpha**. For white shapes over an opaque black background, choose **Luminance**. Use **Show Mask** to check alignment.
4. Under **Streams and Particles**, choose **Particles**. The image supplies the color; selected mask regions supply emission positions. Choose **Streams Only** to place the result over another background, or **Over Original** to keep the image beneath it.
5. Start with 1,500 particles, a 2.5-second lifespan, 260 px/sec launch speed, 1.2-second trails and 3 px stream size. Set **Random Force** to 300 and **Random Scale** to 180 for curling paths. Increase Launch Spread for a wider spray.
6. Set **Birth Size** and **End Size** to control width over life. Try 200% to 0% for shrinking trails, or 5% to 300% for growing ones. **Growth Curve** 1 is linear; higher values delay the change, lower values change size earlier.

All numeric controls can be keyframed. **Amount = 0%** exactly restores the input. Completed Clear Away sweeps and both ends of Pass Through also restore it.

## Three render modes

- **Classic Lines**: the original horizontal/vertical renderer, including threshold sorting, Sort Inside Mask, Stretch From Mask, reverse direction and sweeps. New force/particle controls do not alter it.
- **Force Lines**: continuous color-sampled paths. Stretch From Mask uses outgoing mask edges; Sort Inside Mask seeds paths throughout the selection. Streak Length sets nominal travel before forces; Launch Speed sets the traversal time. Emitter Spacing controls line density. Birth/End Size apply from the root to the tip. Random Evolution animates the field automatically.
- **Particles**: a deterministic population of moving colored particles. Trail Length sets how much of each path remains behind its head; zero gives dots. Lifespan controls age and regeneration. Particle Count is the target number of live particles with pre-roll on. Turn pre-roll off to build emission from layer time zero.

**Direction** now includes **Radial Out** and **Radial In**. These use Center X/Y as the launch origin and work with force lines or particles. Selecting a radial direction in Classic Lines automatically uses the force-line renderer. Reverse Direction flips the launch direction. Horizontal travels right; Vertical travels down unless reversed.

## Combine forces

- **Attractor Strength** pulls toward **Center X/Y**. These coordinates also define the radial launch center.
- **Repeller Strength** pushes away from its separate **Repeller X/Y** position, so attraction and repulsion can act together.
- **Force Radius** sets the smooth influence range of both point forces.
- **Wind Strength / Direction** add a directional acceleration. Zero degrees is right; 90 is down.
- **Random Force** bends paths through a smooth seeded field. Random Scale controls curl size, Random Evolution controls field motion, and Random Seed changes the pattern.
- **Drag** damps motion. Force strengths are accelerations in source pixels per second squared; speed is source pixels per second. Centers are percentages of the original layer dimensions, so preview scaling does not move them.

## Mask and time behavior

The mask is fitted to the image's source dimensions. Move, scale, rotate, feather and animate shapes **inside the mask precomp**. Transforms on its outer layer are not a comp-space mask transform. Combine multiple regions in one precomp, or stack effect instances for independent emitters.

With Mask Mode off, the new modes emit from eligible nontransparent image pixels. Lower/Upper Brightness gate source pixels. Force lines select one color source per emitter cell; particles select among these cells. A missing selected mask bypasses the effect. An empty selection produces transparency in Streams Only, or the original image in Over Original.

This version uses procedural trajectories. Every requested frame reconstructs paths using that frame's image, mask and control values; moving a mask moves the current emission paths, and animated source colors are sampled again at the requested frame. It does not store each particle's historical image color or the previous positions of an animated emitter. Static emitters produce continuous moving particles and trails, with deterministic seeking and concurrent rendering. No cache needs warming after a timeline jump.

Particles and lines stay within the input canvas. Precompose small artwork into a larger canvas to provide space for outgoing trails. Disable Preserve Input Alpha when trails should extend beyond the original silhouette. Streams Only can be composited and treated with other AE effects.

## Performance and limits

CPU rendering, SmartFX, 8/16/32 bpc and concurrent rendering. Fixed 60 Hz trajectory integration with a partial final step. A 1080p, 32-bpc core test with 1,500 particles and trails measured 104 ms on THEBARD; this is a core benchmark, not a promise of real-time After Effects playback. Reduce particle count, trail duration, stream width or preview resolution for faster previews.

Limits: 12,000 particles, 6,000 force lines, approximately 65,536 emitter cells, 12 seconds of trajectory, 128-megapixel canvas. Increasing density past the line/cell budget does not create more paths. Force-line Streak Length is a nominal unforced distance; actual paths change with acceleration and drag, and traversal is capped at 12 seconds.

## Install and restore

Extract the complete Windows ZIP, close AE/aerender, then run **Install.cmd**. It verifies the binary and keeps a recoverable copy of the installed version. Restart AE. Windows x64 only; macOS and Premiere are not included. The installer is unsigned.

Keep PixelSort.aex for older projects that use the separate Pixel Sort effect. This update replaces PixelStretcher.aex, preserving v1 Pixel Stretcher projects. **Uninstall.cmd** removes this version; the included PowerShell uninstaller supports `-Rollback` using its installation receipt. Backups are outside Adobe's plug-in scan folders.

The editable **Force Play** project includes radial lines, random particle trails, attraction, repulsion, growth/shrink comparison and wind-driven lines. All stream geometry comes from the installed native plug-in. Original artwork is also composited underneath some shots for context; there is no substitute particle effect in the demo.
