2D character animation
Animate characters frame-by-frame, with tweens or puppet rigs, to timing and pose specs.
20 project-authored proposals · taxonomy v1.1 · 0 new benchmark runs. Verifiers and partial-credit rules below are designs, not executed results.
- Typical applications
- Toon Boom Harmony · Adobe Animate · OpenToonz · Character Animator
- Class GUI-need label
G3· GUI-only
Task proposals · 20
Expand to inspect the complete original wording and proposed checks. Original proposal text remains English in both interfaces.
R06.03.01.03-T01 Hand-drawn walk cycle on twos with planted feet
Original instruction
In Adobe Animate open input/walker.fla (character design and blank timeline at 24 fps). Draw an 8-drawing walk cycle on twos (16 frames), loop it 6 times while the character symbol crosses the 1920 px stage left-to-right in 4 s, with contact feet staying planted on the ground line. Export walk.mp4 and save walk.fla.
- Platforms
mac· macOSwin· Windows- Applications
- Adobe Animate
- Interfaces
desk· Desktop GUI- GUI need · task setting
G3· GUI-only- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
path· Continuous pathdrag· Drag & dropvis· Visual judgmentav· Audio/video over time- Work product
WP05· Time-based media- Conditions
licensed· Licensed pro app- Proposed difficulty
- 5 / 5
Proposed verifier
walk.mp4: 96 frames, 1920x1080, 24 fps; grader tracks the foot marker colors baked into the design: during each contact phase foot slide <= 3 px in stage space; cycle period 16 frames (autocorrelation); 8 unique drawings in the .fla (XFL export). JSFL Commands are disabled and .fla provenance (Animate process) checked; a generated XFL is detected.
Proposed partial credit
25% timing and duration spec; 25% 8-drawing cycle on twos; 35% planted feet; 15% stage crossing
R06.03.01.03-T02 Cutout rig pivots and peg hierarchy in Harmony
Original instruction
In Toon Boom Harmony Premium open input/cutout_kid.xstage (12 drawing layers, no rig). Set each part's pivot at its anatomical joint, build a peg hierarchy (hips > torso > upper arm > forearm > hand, etc.), and pose the 3 test poses in input/poses.pdf on frames 1, 12, 24 so no joint opens a gap.
- Platforms
mac· macOSwin· Windows- Applications
- Toon Boom Harmony
- Interfaces
desk· Desktop GUI- GUI need · task setting
G3· GUI-only- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
drag· Drag & dropgeom· Precise geometryclick· Point & clickvis· Visual judgment- Work product
WP05· Time-based media- Conditions
licensed· Licensed pro app- Proposed difficulty
- 4 / 5
Proposed verifier
Grader renders frames 1/12/24 with Harmony's CLI renderer: joint gaps (distance between paired joint markers) <= 2 px; pose silhouettes IoU >= 0.85 vs poses.pdf; node graph shows the peg hierarchy. Harmony script editor and -batch script runs are disabled (scripts folder read-only), and .xstage provenance is checked.
Proposed partial credit
30% pivots at joints; 25% peg hierarchy; 30% three poses match; 15% no joint gaps
R06.03.01.03-T03 Bouncing ball with squash, stretch and decaying bounces
Original instruction
In OpenToonz animate a ball (input/ball.tnz) bouncing 3 times across a 1920x1080 frame at 24 fps: apex heights 400, 250 and 120 px above the floor, floor contacts on frames 12, 30 and 42, squash to 1.3x width on contact frames and stretch 1.2x height on the frames before/after contact. Render bounce.mp4.
- Platforms
win· Windowsmac· macOSlin· Linux- Applications
- OpenToonz
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
drag· Drag & dropgeom· Precise geometryvis· Visual judgment- Work product
WP05· Time-based media- Conditions
- None declared
- Proposed difficulty
- 3 / 5
Proposed verifier
Grader segments the ball per frame: contact frames exact; apex heights within 10 px; width/height ratios on contact and adjacent frames within 0.05; ease (slow-in at apex) via velocity profile. The script console is disabled and .tnz provenance (OpenToonz process) checked; XML-edited scenes detected.
Proposed partial credit
30% contact timing; 25% apex heights; 30% squash and stretch; 15% easing
R06.03.01.03-T04 Lip sync a puppet to dialogue in Character Animator
Original instruction
In Adobe Character Animator use puppet input/Host.puppet and dialogue input/line_04.wav (8 s). Compute lip sync from scene audio, then fix visemes so the 'M/B/P' closures and 'Oh' shapes land on the phonemes in input/line_04_phones.json. Export host_line04.mov (ProRes 4444 with alpha).
- Platforms
mac· macOSwin· Windows- Applications
- Character Animator
- Interfaces
desk· Desktop GUI- GUI need · task setting
G3· GUI-only- GUI need · ordinary access
G3· GUI-only- Interaction primitives
click· Point & clickav· Audio/video over timedrag· Drag & drop- Work product
WP05· Time-based media- Conditions
licensed· Licensed pro app- Proposed difficulty
- 3 / 5
Proposed verifier
Grader classifies the mouth region per frame with a viseme template matcher: agreement with phone timings >= 0.85 frames, all 9 M/B/P closures within 1 frame; alpha channel present; duration 8 s. Character Animator lacks a scripting API (GUI-only property); the project file's provenance is checked.
Proposed partial credit
40% viseme agreement; 35% bilabial closures exact; 25% export spec
R06.03.01.03-T05 Arm wave with custom eases and a motion guide
Original instruction
In Adobe Animate, in input/greeter.fla animate the rigged arm symbols to wave 3 times over 36 frames (24 fps) using classic tweens with a custom ease (slow-out, fast-in), and move the hat symbol along the guide path drawn on layer 'Guide' over the same frames, orienting to path.
- Platforms
mac· macOSwin· Windows- Applications
- Adobe Animate
- Interfaces
desk· Desktop GUI- GUI need · task setting
G3· GUI-only- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
drag· Drag & droppath· Continuous pathgeom· Precise geometry- Work product
WP05· Time-based media- Conditions
licensed· Licensed pro app- Proposed difficulty
- 3 / 5
Proposed verifier
Grader exports XFL from the saved .fla in its own Animate instance and renders frames: forearm angle has 3 peaks within 36 frames, easing curve matches custom ease shape; hat center within 3 px of the guide path every frame and rotation follows tangent. JSFL Commands disabled; .fla provenance checked.
Proposed partial credit
35% three-wave timing; 25% custom ease; 40% hat follows and orients to guide
R06.03.01.03-T06 Mouth-chart substitutions from an exposure sheet in Harmony
Original instruction
In Harmony, input/dialog_scene.xstage has a mouth drawing layer with chart drawings A-H. Expose them on frames 1-96 exactly per input/xsheet_dialog.csv (frame, drawing), and hold the eyes-blink drawings per the second column. Render the scene to PNGs.
- Platforms
mac· macOSwin· Windows- Applications
- Toon Boom Harmony
- Interfaces
desk· Desktop GUI- GUI need · task setting
G3· GUI-only- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
click· Point & clicktype· Text & formsnav· Pan/zoom/scroll- Work product
WP05· Time-based media- Conditions
licensed· Licensed pro app- Proposed difficulty
- 3 / 5
Proposed verifier
Grader reads the exposure from the saved scene via Harmony's own render plus drawing-ID markers: each frame's mouth and eye drawing equals the CSV (96/96). Harmony scripting is disabled (scripts folder read-only, -batch blocked) and .xstage provenance checked, so XML edits are detected.
Proposed partial credit
60% mouth exposures exact; 30% blink holds exact; 10% render complete
R06.03.01.03-T07 Draw inbetweens on an arc with an ease chart
Original instruction
In OpenToonz, input/leap.tnz has pencil key drawings of a leaping cat at frames 1, 9 and 17. Draw the 7 inbetweens in each gap following the spacing chart on each key (ease in toward 9, ease out after), keeping the nose on the arc in input/arc.svg and volumes consistent. Render leap.mp4.
- Platforms
win· Windowsmac· macOSlin· Linux- Applications
- OpenToonz
- Interfaces
desk· Desktop GUI- GUI need · task setting
G3· GUI-only- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
path· Continuous pathvis· Visual judgment- Work product
WP05· Time-based media- Conditions
- None declared
- Proposed difficulty
- 5 / 5
Proposed verifier
Grader tracks the nose marker: positions within 4 px of the arc and spacing ratios within 10 pct of the chart; silhouette area per drawing within 8 pct of keys; 14 new drawings exist. Drawing strokes are produced only by the canvas tools: the script console is disabled and .pli provenance checked.
Proposed partial credit
30% 14 inbetweens drawn; 30% arc followed; 25% spacing chart honored; 15% volume consistency
R06.03.01.03-T08 Bone-tool rig for a snake with three key poses
Original instruction
In Adobe Animate, rig the snake shape in input/snake.fla with the Bone tool (6 bones along the spine), then pose it in the armature layer at frames 1, 12 and 24 to match the silhouettes in input/snake_poses.png and play it back as an S-curve slither. Export snake.mp4.
- Platforms
mac· macOSwin· Windows- Applications
- Adobe Animate
- Interfaces
desk· Desktop GUI- GUI need · task setting
G3· GUI-only- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
drag· Drag & dropgeom· Precise geometryvis· Visual judgment- Work product
WP05· Time-based media- Conditions
licensed· Licensed pro app- Proposed difficulty
- 4 / 5
Proposed verifier
XFL export shows an armature with 6 bones; rendered frames 1/12/24 silhouette IoU >= 0.85 vs poses; intermediate frames have no shape tearing (connected component = 1). JSFL Commands disabled; .fla provenance checked.
Proposed partial credit
30% 6-bone armature; 45% three poses match; 25% clean interpolation
R06.03.01.03-T09 Swap-set triggers and a timed take in Character Animator
Original instruction
In Character Animator set up the puppet input/Presenter.puppet with a swap set 'Hands' (open, point, thumbs) on keys 1-3 and a latch trigger 'Wave' on W. Record one take on scene 'Intro' (10 s) with point at 2.0 s, thumbs at 5.0 s and Wave at 7.0 s (+/- 0.25 s). Export intro.mp4.
- Platforms
mac· macOSwin· Windows- Applications
- Character Animator
- Interfaces
desk· Desktop GUI- GUI need · task setting
G3· GUI-only- GUI need · ordinary access
G3· GUI-only- Interaction primitives
key· Shortcutsclick· Point & clickrt· Real-time control- Work product
WP05· Time-based media- Conditions
licensed· Licensed pro app- Proposed difficulty
- 3 / 5
Proposed verifier
Grader classifies hand state per frame in intro.mp4 by template matching: state changes at the required times within 0.25 s; wave motion present from 7.0 s. Puppet triggers read from the exported puppet file. Character Animator lacks a scripting API; take recording is GUI-only, and project provenance checked.
Proposed partial credit
35% swap set and triggers configured; 45% timed changes in take; 20% export
R06.03.01.03-T10 Tail swish with a Harmony deformation chain
Original instruction
In Harmony add a 4-point bone deformation chain to the fox tail in input/fox.xstage and animate a swish over 48 frames so the tail tip follows the curve in input/tip_path.svg (tip marker), with follow-through: each segment lags the previous by 2 frames.
- Platforms
mac· macOSwin· Windows- Applications
- Toon Boom Harmony
- Interfaces
desk· Desktop GUI- GUI need · task setting
G3· GUI-only- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
drag· Drag & dropgeom· Precise geometrypath· Continuous path- Work product
WP05· Time-based media- Conditions
licensed· Licensed pro app- Proposed difficulty
- 4 / 5
Proposed verifier
Grader render: tip marker within 6 px of the path on all 48 frames; cross-correlation of segment angles shows 2 +/-1 frame lag; deformation node with 4 bones in the saved scene. Harmony scripting disabled (read-only scripts folder); .xstage provenance checked.
Proposed partial credit
25% deformation chain built; 45% tip follows path; 30% overlapping lag
R06.03.01.03-T11 Correct six wrong visemes after auto lip sync in Animate
Original instruction
In Adobe Animate, input/narrator.fla uses Auto Lip-Sync on the mouth graphic symbol for audio vo.wav. Six visemes are wrong per input/phones.json. Fix them by swapping the frame picker poses on those frames only, keeping the rest unchanged. Export narrator.mp4.
- Platforms
mac· macOSwin· Windows- Applications
- Adobe Animate
- Interfaces
desk· Desktop GUI- GUI need · task setting
G3· GUI-only- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
click· Point & clickav· Audio/video over timevis· Visual judgment- Work product
WP05· Time-based media- Conditions
licensed· Licensed pro app- Proposed difficulty
- 2 / 5
Proposed verifier
Grader reads mouth first-frame per frame from the XFL export: the 6 target frames equal gold, all other frames unchanged vs original. JSFL Commands disabled; .fla provenance checked so XFL hand edits are detected.
Proposed partial credit
70% six visemes fixed; 30% no other frames changed
R06.03.01.03-T12 Retime an action from ones to a mixed timing chart
Original instruction
In OpenToonz, input/punch.tnz has a 48-frame punch animated on ones. Retime it per input/timing.txt (anticipation on twos, strike on ones, recovery on threes) using the Xsheet, keeping total duration exactly 2 s at 24 fps and keeping all key drawings.
- Platforms
win· Windowsmac· macOSlin· Linux- Applications
- OpenToonz
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
click· Point & clickdrag· Drag & dropnav· Pan/zoom/scroll- Work product
WP05· Time-based media- Conditions
- None declared
- Proposed difficulty
- 2 / 5
Proposed verifier
Grader reads the Xsheet from a render with drawing-ID markers: hold lengths per section equal the chart, 48 frames total, all key drawings (12) present. Script console disabled; .tnz provenance (OpenToonz process) checked.
Proposed partial credit
60% section timings exact; 25% duration exact; 15% keys retained
R06.03.01.03-T13 Staggered blink cycles via graphic-symbol first frames
Original instruction
In Adobe Animate, input/crowd.fla has 5 instances of graphic symbol 'Blink' (24-frame loop). Set each instance's Looping first frame so blinks are staggered at 0, 5, 9, 14 and 19 frames from left to right, and make instance 3 play once then hold.
- Platforms
mac· macOSwin· Windows- Applications
- Adobe Animate
- Interfaces
desk· Desktop GUI- GUI need · task setting
G3· GUI-only- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
click· Point & clicktype· Text & forms- Work product
WP05· Time-based media- Conditions
licensed· Licensed pro app- Proposed difficulty
- 2 / 5
Proposed verifier
XFL export: 5 instances with firstFrame offsets exact and loop modes (instance 3 'play once'); grader render confirms blink frames per character. JSFL Commands disabled; .fla provenance checked.
Proposed partial credit
60% offsets exact; 25% play-once instance; 15% render matches
R06.03.01.03-T14 Multiplane camera truck-in with parallax in Harmony
Original instruction
In Harmony, input/forest.xstage has 3 background layers. Place them at Z depths -2, -6 and -12 fields, then animate the camera trucking in 20 pct between frames 24 and 72 with ease-in/ease-out so the near layer moves faster than the far one. Render forest.mp4 (1920x1080).
- Platforms
mac· macOSwin· Windows- Applications
- Toon Boom Harmony
- Interfaces
desk· Desktop GUI- GUI need · task setting
G3· GUI-only- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
drag· Drag & dropgeom· Precise geometryclick· Point & click- Work product
WP05· Time-based media- Conditions
licensed· Licensed pro app- Proposed difficulty
- 3 / 5
Proposed verifier
Grader optical flow on the render: per-layer scale rates ordered near > mid > far consistent with the Z depths; overall zoom 1.20 +/-0.02 between 24 and 72; ease profile (zero velocity at ends). Saved scene layer Z values exact. Harmony scripting disabled; .xstage provenance checked.
Proposed partial credit
30% layer depths; 35% truck amount and timing; 20% ease; 15% render spec
R06.03.01.03-T15 Rig a layered puppet with draggers and record an arm wave
Original instruction
In Character Animator, rig input/Robot.psd: tag eyes and mouth for face tracking, add sticks to both arms, add draggers on both hands, then record a take of the right hand waved by mouse drag 4 times within 6 s while the left hand stays still. Export robot_wave.mp4.
- Platforms
mac· macOSwin· Windows- Applications
- Character Animator
- Interfaces
desk· Desktop GUI- GUI need · task setting
G3· GUI-only- GUI need · ordinary access
G3· GUI-only- Interaction primitives
drag· Drag & droprt· Real-time controlclick· Point & click- Work product
WP05· Time-based media- Conditions
licensed· Licensed pro app- Proposed difficulty
- 4 / 5
Proposed verifier
Grader tracks hand markers: right hand x-position shows 4 oscillations in 6 s, amplitude >= 80 px; left hand displacement <= 5 px; arms bend without stretching (stick lengths constant +/-3 px). Draggers/sticks read from the puppet. Character Animator lacks a scripting API; project provenance checked.
Proposed partial credit
35% rig tags, sticks and draggers; 45% four-wave take; 20% left hand still
R06.03.01.03-T16 Fix audio-sync drift and export to delivery spec in Animate
Original instruction
In Adobe Animate, input/promo.fla has 4 sound cues (stream sync) whose matching visual hits are late by 2-5 frames. Shift the visual keys to land on the cues in input/cues.csv, set the document to 1920x1080 at 24 fps, and export a 10.000 s H.264 MP4 with AAC audio.
- Platforms
mac· macOSwin· Windows- Applications
- Adobe Animate
- Interfaces
desk· Desktop GUI- GUI need · task setting
G3· GUI-only- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
drag· Drag & dropav· Audio/video over timenav· Pan/zoom/scroll- Work product
WP05· Time-based media- Conditions
licensed· Licensed pro app- Proposed difficulty
- 3 / 5
Proposed verifier
Grader detects visual hit frames (marker flash) vs audio onsets: all 4 within 1 frame; ffprobe 1920x1080, 24 fps, 240 frames, AAC track, A/V start offset 0. JSFL Commands disabled; .fla provenance checked.
Proposed partial credit
50% four hits synced; 30% export spec exact; 20% no other timing changed
R06.03.01.03-T17 Ink and paint 48 frames to a color model
Original instruction
In Harmony, paint all 48 line-art drawings of input/runner.xstage using the palette in input/runner.plt per the model sheet input/color_model.png: close gaps with the Close Gap tool, no unpainted pixels inside closed regions, shadows on the tone lines.
- Platforms
mac· macOSwin· Windows- Applications
- Toon Boom Harmony
- Interfaces
desk· Desktop GUI- GUI need · task setting
G3· GUI-only- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
click· Point & clickvis· Visual judgmentpath· Continuous path- Work product
WP05· Time-based media- Conditions
licensed· Licensed pro applong· Long-horizon- Proposed difficulty
- 4 / 5
Proposed verifier
Grader renders all frames: region colors equal palette swatches (ΔE2000 <= 1) per model-sheet mapping (region classifier), unpainted interior pixels = 0, shadow regions use shadow swatches. Harmony scripting disabled; drawing (.tvg) provenance checked.
Proposed partial credit
45% correct colors per region; 35% no unpainted pixels; 20% shadow tones
R06.03.01.03-T18 Plastic-tool jump animation from a single image
Original instruction
In OpenToonz, rig the single-image character input/hopper.png with a Plastic skeleton (spine, 2 legs, 2 arms), then animate a 24-frame jump: crouch frames 1-6, take-off 7, apex at 14 (body 300 px up), landing 20 with squash, settle by 24.
- Platforms
win· Windowsmac· macOSlin· Linux- Applications
- OpenToonz
- Interfaces
desk· Desktop GUI- GUI need · task setting
G3· GUI-only- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
drag· Drag & dropgeom· Precise geometryvis· Visual judgment- Work product
WP05· Time-based media- Conditions
- None declared
- Proposed difficulty
- 4 / 5
Proposed verifier
Grader tracks body centroid: crouch dip, take-off at 7, apex 300 +/-15 px at 14, contact at 20, rest by 24; mesh deformation without tearing; plastic skeleton with >= 5 bones in the saved scene. Script console disabled; .tnz provenance checked.
Proposed partial credit
25% skeleton rig; 45% jump timing and height; 30% crouch, squash and settle
R06.03.01.03-T19 Ten-second three-character scene from an animatic
Original instruction
In Harmony, animate the 10 s scene in input/sc012_animatic.mov with the 3 rigged cutout characters in input/sc012.xstage: follow the dialogue X-sheet and storyboard poses, match key-pose silhouettes at the 9 marked frames, and keep feet planted during walks. Render sc012.mov.
- Platforms
mac· macOSwin· Windows- Applications
- Toon Boom Harmony
- Interfaces
desk· Desktop GUI- GUI need · task setting
G3· GUI-only- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
drag· Drag & dropgeom· Precise geometryav· Audio/video over timevis· Visual judgment- Work product
WP05· Time-based media- Conditions
licensed· Licensed pro applong· Long-horizon- Proposed difficulty
- 5 / 5
Proposed verifier
Grader: key-pose silhouette IoU >= 0.8 at the 9 frames per character; lip-sync exposure matches X-sheet >= 0.9; foot slide <= 3 px during contacts; motion smoothness via jerk metric; overall acting judged by VLM rubric only for 20 pct of score. Harmony scripting disabled; .xstage provenance checked.
Proposed partial credit
40% key poses; 20% lip sync; 20% planted feet and smoothness; 20% rubric acting
R06.03.01.03-T20 Head turn with shape tweens and shape hints
Original instruction
In Adobe Animate, input/head_turn.fla has front and 3/4 head drawings on frames 1 and 12. Create shape tweens for the face shape, nose and eyes with shape hints (at least 3 per shape) so the turn interpolates without self-intersection or flipping, then ease-in 50. Export head_turn.mp4.
- Platforms
mac· macOSwin· Windows- Applications
- Adobe Animate
- Interfaces
desk· Desktop GUI- GUI need · task setting
G3· GUI-only- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
drag· Drag & dropgeom· Precise geometryvis· Visual judgment- Work product
WP05· Time-based media- Conditions
licensed· Licensed pro app- Proposed difficulty
- 4 / 5
Proposed verifier
XFL export: shape tweens on frames 1-12 with >= 3 hints per shape and ease 50; grader renders frames: each shape stays a single connected, non-self-intersecting region and feature centroids move monotonically. JSFL Commands disabled; .fla provenance checked.
Proposed partial credit
30% tweens with hints; 45% clean interpolation; 25% ease and export
Mapped research references
No benchmark reference is assigned to this class in the current mapping.