subinium/3b1b-style-animation-skill
Overview
This skill creates 3Blue1Brown–style mathematical animations using ManimCE. It provides color, layout, animation and timing conventions so animations look consistent and cinematic. The patterns emphasize visual intuition, smooth transitions, and audio-synced segments for narrated explanations.
How this skill works
It supplies ready-to-use scene templates, color constants, and common animation patterns (cascading appears, highlights, coordinated plays). Scenes follow a strict background and spacing policy, group related mobjects with VGroup and dictionaries, and include an optional timing map to align animation segments to audio. Every scene ends with padding to ensure clean render timing.
When to use it
- When producing educational math videos that prioritize intuition and visual storytelling.
- When building audio-synced segments that must match narration timing precisely.
- When you need consistent styling across multiple scenes or episodes.
- When animating graphs, node-and-edge diagrams, or step-by-step derivations.
- When you want cinematic cascades, coordinated actions, and polished highlights.
Best practices
- Always set camera.background_color to #1c1c1c and avoid pure black.
- Use LaggedStartMap for cascading appearances; avoid sequential single-play calls.
- Group related elements in VGroup and keep a dictionary mapping for references.
- Keep NODE_GAP >= 1.5 to avoid clutter and maintain legibility.
- Place edge labels perpendicular to edges and use small offsets for clarity.
- End scenes with self.wait(2) to provide consistent render padding.
Example use cases
- Explain calculus concepts by building intuition first, then formalizing with MathTex.
- Animate a graph algorithm step-by-step with node circles, edge labels, and transforms.
- Create an audio-synced explainer using a TIMING map to run segments to narration.
- Visualize linear algebra concepts with coordinated transforms and highlight flashes.
- Produce a short series of pedagogical clips with consistent color, spacing, and camera work.
FAQ
Use a TIMING dictionary with segment start/end times and run each segment method while checking the renderer time; add waits to fill any remaining segment duration.
What color palette should I use?
Use the provided palette: background #1c1c1c, primary BLUE #3b82f6, YELLOW #fbbf24, GREEN #22c55e, RED #ef4444, and GRAY #9ca3af.