Motion graphics

Procedural Systems

Use procedural systems in Oraphim with a production-safe workflow, practical example, verification steps, and common failure checks.

Updated August 27, 2026

Procedural Systems

In traditional animation, an artist manually draws every frame. In computer animation, an artist manually sets keyframes to dictate movement. In Procedural Animation, the artist simply sets the mathematical rules, and the software generates the animation automatically.

Oraphim excels at procedural systems, allowing you to create infinitely complex graphics that would take years to keyframe by hand.

Expressions

The most fundamental procedural tool is the Expression. This is a snippet of code (written in Lua or Python) that you type directly into a parameter to control its value.

  • Example: If you want a gear to spin constantly forever, you don't need keyframes. Right-click the Angle parameter, select Expression, and type time * 5. The gear will spin exactly 5 degrees every frame.
  • Example: If you want a light to flicker chaotically, type sin(time * 10) * noise(time).

Modifiers

If you don't want to write code, you can use Modifiers. Modifiers are pre-built mathematical operators you attach to parameters.

  1. Right-click the Center X/Y parameter of a shape.
  2. Select Modify With > Perturb.
  3. A new "Modifiers" tab appears at the top of the Inspector.
  4. Adjust the Strength and Speed sliders. The shape will now wander around the screen randomly like a buzzing fly. No keyframes required.

The Replicate Node

If you want to create a kaleidoscope, a high-tech HUD grid, or a trail of echoing ghosts, you use the Replicate node (sometimes called a Duplicate node).

  1. Add your base graphic (e.g., a single triangle).
  2. Pipe it into a Replicate node.
  3. In the Inspector, set Copies to 10.
  4. If you leave the settings alone, you won't see anything change (the 10 copies are stacked perfectly on top of each other).
  5. Adjust the Center X parameter inside the Replicate node. The copies will spread out horizontally.
  6. Adjust the Angle parameter. The copies will spiral out like a staircase.
  7. Animate the Time Offset parameter, and the copies will delay their animation, creating a cascading wave effect (like a line of dominoes falling).

By combining Expressions, Modifiers, and Replicators, you can build living, breathing motion graphics that react dynamically to the length of the timeline or the beat of the audio.

Use Procedural Systems in a production project

  1. Open Composition workspace and select the intended text, shape, layer, animation property, or procedural system.
  2. Establish the correct input state first—timing, media link, layer/node enable state, project settings, or source selection as relevant.
  3. Apply or adjust Procedural Systems with one clear goal. Change the smallest set of controls needed to reach that goal so the result remains understandable and reversible.
  4. Review the complete affected range in context. Scrub difficult frames and also play at normal speed when motion or audio is involved.
  5. Save a named milestone before moving into another major operation, especially after graph changes, tracking, AI processing, relinking, simulation, or delivery setup.

Practical guidance

Build procedural systems from a visible source/output path, validate after each major node, and raise simulation/render cost only after motion and structure are approved.

A useful test is a short 5–10 second section containing both an easy case and a difficult case for this feature. Tune against the difficult moment without breaking the easy one. If two approaches are plausible, duplicate/version the project state and compare them rather than stacking both together blindly.

Verify the result

  • Preview the full animation and compare the rendered output with the interactive viewer.
  • Toggle/bypass the operation where possible and make sure the change you intended is actually responsible for the result.
  • Check selection, visibility/mute/solo state, node connections, track locks, range, and source identity when the result appears missing.
  • Save and reopen before treating a complex setup as reusable.
  • If this feature changes final pixels or audio, render a short review and inspect the file outside Oraphim.