Back to all instances

Loading

Benchmark instance 045
Input static SVG
Input static SVG for Loading
Source Lottie animation
Motion edit prompt

From the provided SVG, hide all seven letters and three dots so the animation begins with only the cursor visible. Keep the vertical cursor fixed in place at the right end of the text line, blinking 20 times throughout the animation by dimming first and then brightening back up in a quick pulse each time. Animate the “LOADING...” text as a right-aligned typing sequence against that stationary cursor: begin with no letters visible, then reveal the characters in order, “L”, “O”, “A”, “D”, “I”, “N”, “G”, followed by the three dots from left to right, with each new character popping in immediately to the left of the cursor while the existing text shifts left to make room. Hold briefly when the full “LOADING...” text returns to its appearance and position in the provided SVG, then reverse the process by instantly hiding the three dots one by one from right to left and then instantly hiding the seven letters one by one from the right end, so the remaining text steps back toward the cursor until only the blinking cursor remains.

Example model outputs

Human-approved

Gemini 3.5 Flash

Reasoning effort: high

Verification report: 6 passed · 0 failed
Result Check
PASS ver_character_sequence

Visible states build and erase the specified prefixes one character at a time

Measured values
{
  "states": [
    "",
    "L",
    "LO",
    "LOA",
    "LOAD",
    "LOADI",
    "LOADIN",
    "LOADING",
    "LOADING.",
    "LOADING..",
    "LOADING...",
    "LOADING..",
    "LOADING.",
    "LOADING",
    "LOADIN",
    "LOADI",
    "LOAD",
    "LOA",
    "LO",
    "L",
    ""
  ]
}
PASS ver_full_pose_and_artwork

Full word holds at its supplied pose and its visible artwork stays unchanged

Measured values
{
  "hold": [
    47,
    73
  ],
  "largest_shape_error_beyond_sampling": 0.0
}
PASS ver_instant_characters

Character paint switches in complete, unfaded steps

Measured values
{
  "largest_partial_paint": 0.0
}
PASS ver_right_aligned_steps

Text stays in cursor-aligned rigid prefix layouts, not sliding between steps

Measured values
{
  "largest_layout_error": 0.0003
}
PASS ver_stationary_cursor

Cursor remains the fixed complete vertical bar, with only its brightness changing

Measured values
{
  "ink_residual_rgb": 0.0,
  "largest_geometry_error": 0.0,
  "partial_bar": 0.0
}
PASS ver_twenty_cursor_pulses

Cursor makes twenty dim-first, brighten-back pulses over the complete timeline

Measured values
{
  "dim_first_and_return": true,
  "pulses": 20,
  "trough_frames": [
    4,
    10,
    16,
    22,
    28,
    34,
    40,
    46,
    52,
    58,
    64,
    70,
    76,
    82,
    88,
    94,
    100,
    106,
    112,
    118
  ]
}

Human-rejected

GPT-5.6 Terra

Reasoning effort: maximum

Verification report: 2 passed · 4 failed
Result Check
FAIL ver_character_sequence

Visible states build and erase the specified prefixes one character at a time

Measured values
{
  "states": [
    "",
    ".DNIAOLG",
    "DN.IAOLG",
    "DNIAO.LG",
    ".DNIAO.LG",
    "DN.IAO.LG",
    "DNIAO..LG",
    ".DNIAO..LG",
    "DNIAO...LG",
    "DNIAO..LG",
    "DNIAO.LG",
    ""
  ]
}
FAIL ver_full_pose_and_artwork

Full word holds at its supplied pose and its visible artwork stays unchanged

Measured values
{
  "anchored_samples": 0,
  "closest_geometry_error": null,
  "paint_mismatch": null
}
FAIL ver_instant_characters

Character paint switches in complete, unfaded steps

Measured values

                                    
FAIL ver_right_aligned_steps

Text stays in cursor-aligned rigid prefix layouts, not sliding between steps

Measured values

                                    
PASS ver_stationary_cursor

Cursor remains the fixed complete vertical bar, with only its brightness changing

Measured values
{
  "ink_residual_rgb": 0.0,
  "largest_geometry_error": 0.0,
  "partial_bar": 0.0
}
PASS ver_twenty_cursor_pulses

Cursor makes twenty dim-first, brighten-back pulses over the complete timeline

Measured values
{
  "dim_first_and_return": true,
  "pulses": 20,
  "trough_frames": [
    3,
    9,
    15,
    21,
    27,
    33,
    39,
    45,
    51,
    57,
    63,
    69,
    75,
    81,
    87,
    93,
    99,
    105,
    111,
    117
  ]
}