Object animations

Each object can have an animation that plays in Present mode.

How to add

  1. Select an object in the Builder
  2. Click the Animations tab in the right panel
  3. Choose:
    • Type (28 entrances in groups — fade, motion, zoom, turn, reveal, bold)
    • Trigger (when it fires)
    • Duration (seconds)
    • Delay (seconds — the wait after the trigger fires)

Entrance types

In the Animations panel the effects are grouped — they look the same everywhere (editor, presenting, HTML export, MP4):

GroupEffects
BasicFade, Fade up, Fade down, Blur in
MotionSlide in from left / right / below / above, Rise up, Fly in from left / right
ZoomZoom in, Zoom from close, Pop, Stretch
TurnFlip (horizontal), Flip (vertical), Spin in, Roll in
RevealWipe right / left / up / down, Split open
BoldBounce, Drop in, Elastic, Swing

Exit

Below the entrance there is an Exit section — an object can also leave the slide (and then stays hidden):

GroupEffects
BasicFade out, Fade out down, Blur out
MotionSlide out left / right / up / down, Fly out left / right
ZoomShrink, Grow and fade, Pop out
TurnFlip out, Spin out
RevealWipe out right / left, Split close
BoldDrop out

An exit has its own trigger, delay and duration and sits in the same sequence as entrances — in the order list it has an “exit” badge and can be dragged between entrances (e.g. the title enters → exits on click → the chart enters). An object with only an exit is visible from the start.

Triggers

TriggerWhen it fires
On slide enter (onEnter)Right after the slide loads (with optional delay)
On click (onClick)After a viewer click — a new step of the sequence
After previous (afterPrevious)When the previous animation finishes (chaining)
With previous (withPrevious)Starts together with the previous animation — two objects arrive at once (like PowerPoint)

Timeline

The Timeline button (Tools menu, can be pinned to the toolbar; on mobile in the “⋯” menu) opens the slide’s animation timeline below the canvas:

  • One row per object — the entrance bar (coloured by trigger, effect name inside), a hatched exit bar, a faint extension = reading hold, a grey “playing” bar = X-element, video or HTML frame (holds the step until it finishes — that is why a click may start later).
  • Dashed vertical dividers “click 1”, “click 2”… = click steps; the timeline is continuous, steps follow each other.
  • Drag a bar → changes the delay (a bar cannot move before its trigger fires). Drag the right edge → changes the duration. Snaps to 0.1 s; one drag = one Undo step.
  • Playhead — tap or drag on the ruler: the canvas shows the slide exactly at that moment (same as the MP4 export). Play plays the timeline, Close preview (or Esc) returns to the canvas.
  • Clicking a row selects the object, double-click opens the Animations tab. Zoom −/+, on mobile the timeline scrolls with a finger.

Animation sequence (multi-step)

If multiple objects have trigger: onClick, a build sequence is created on the slide. You click (or arrow right) → object appears → next click → next object → etc.

For afterPrevious: times are chained automatically based on object order (animOrder or zIndex).

Animating several objects at once

Select multiple objects (Shift or Cmd/Ctrl + click, or lasso from an empty area) and switch the right-hand panel to the Animation tab. You can then set type, trigger, duration, delay and reading time for all of them at once.

🔴 Only what you touch is changed. If the selected objects have different animation types and you switch only the trigger, the types stay as they were. Where values differ the dropdown shows "— mixed —"; until you change it, nothing is overwritten. The whole bulk change is a single undo step.

An object that had no animation yet gets a complete one (fade, on slide enter, 0.5 s) — nothing half-configured is created.

Play one after another — the button that is usually the reason for selecting several objects. It leaves the first object in order as it is and gives all the others the "after previous" trigger, so they reveal one by one. The order follows the animation order list, not the order in which you clicked the objects.

⚠️ Bulk editing never touches animOrder. Objects with an explicit order sort before those without one, so assigning it to only part of a slide would reshuffle objects the selection does not even include. Change the order in the animation order list.

What each number is counted from

Each object has three times. The common mistake is assuming they all count from the start of the slide — they don't:

NumberWhat it meansCounted from
DelayHow long to wait before the animation startsThe moment the trigger fires — for "on enter" from the start of the slide, for "after previous" from the end of the previous animation (including its reading hold), for "on click" from the click
DurationHow long the animation runsIts own start
Reading holdThe pause the object holds after itselfThe end of its own animation

Chain example. A heading with "on enter", delay 1 s and duration 0.5 s → appears between 1.0 and 1.5 s. A subheading with "after previous" and delay 0.8 s starts at 2.3 s (1.0 + 0.5 + 0.8), not at 0.8 s.

If the heading also has a 2 s reading hold, the subheading starts at 4.3 s — the reading hold enters the chain before the next object's delay.

You don't have to work the final time out by hand: in the Animations panel, each row of the order list shows the computed start (2.3s dur 0.5s), and the trigger plus all three numbers can be set right there in the row.

Revealing an Expert chart gradually

A chart from the Expert menu can be revealed curve by curve — one brand first, then the next. It is not set up in the Animations panel, because splitting into layers is a split of the data: each curve is its own image, and those are created when the block is built.

Turn it on in Edit block → Reveal gradually (one after another / on click), plus the Axes and grid first, then data checkbox. With an Expert block selected, the Animations panel shows a pointer with a button that opens that dialog.

Revealing curve by curve only works when the chart has more than one brand. With a single one (the default "CELKEM") there are no parts to split — only the frame can be separated from the data. To reveal curve by curve, add more brands to the block.

Once the block is built this way, each layer behaves like an ordinary object: it gets its own row in the order list, and you fine-tune its times there like anything else.

Sequence overview — the animation order list lives in the Animations tab: with no object selected it fills the panel (including the playing preview); with an object selected it sits below that object's settings, with the edited row highlighted. Reorder by dragging the handle on the left; times can be typed straight into the row.

Reading hold (holdAfter)

In the animation panel, each object has a "Reading hold (s)" field. The value in seconds tells the system how long to wait after the animation finishes before:

  • Triggering the next afterPrevious animation, or
  • Auto-advancing the slide (when auto-advance is on)

Example: text with holdAfter = 2 appears → viewer gets 2 seconds to read → only then chaining or auto-advance continues.

"Apply to all" button next to the field — applies the same reading hold to all animated objects across the entire presentation in a single action (one undo reverts the whole batch). Manual per-object overrides remain respected.

Recommended duration

  • fade: 0.3–0.6 s
  • slideIn / zoom: 0.4–0.8 s
  • bounce: 0.6–1.0 s
  • For a short presentation (under 5 min): shorter animations
  • For a long one with emphasis: longer and combined

Tips

  • Too many animations distract. For 1 slide, recommend 2–5 animated objects max.
  • Important data — animate with fade or zoom (subtle), not bounce (jarring).
  • Same type across slides = consistent feel. Pick 1–2 types for the whole deck.
  • onClick + afterPrevious combo: 1st object onClick, next 2 onClick (own click) OR afterPrevious (chained with the first).
  • Preview — in Present mode, click right arrow → reveals next animation.

Animations in export

  • HTML export — animations play in the browser. With Auto-advance enabled, the system automatically steps through onClick animations too (waiting holdAfter between them) and moves on to the next slide. Without auto-advance it behaves like Present mode — the viewer clicks manually.
  • MP4 export burns animations into the video (frame-by-frame canvas render). Includes holdAfter pauses and onClick chain — everything rendered in real time.
  • PPTX export does not preserve PMG Club animations yet — it exports static slides. The other direction works: PPTX import takes over entrances, exits and “with previous” from PowerPoint.
  • PNG export (ZIP) bakes the final state of each slide after animations — static snapshots.

Known limitations

  • Path animations (along a curve) — none
  • Custom keyframes — none (only predefined)
  • Audio sync with animations — manual via the times (delay and reading hold)
  • Emphasis effects (flash, shake while visible) — not yet; entrances and exits are available