ManimCommunity / ManimCommunity/manim

What about adding a whiteboard animation?

Open
#3,381 10 comments 0 reactions 0 assignees View on GitHub
new feature
Dominant language
Python
Stars
40.9k
Forks
3.1k
Avg merge
3d 12h
Merged PRs (30d)
25

Description

## Description of proposed feature
Given the popularity of whiteboard explainer videos (see e.g. [this](https://www.youtube.com/watch?v=jDm6lvxjAp0)), I was thinking that it may be a low-hanging fruit to add this kind of animation.

## Possible implementation directions (?)
It should be enough to add a new "creation" and "un-creation" classes like Write, Create, etc.

- The creation class (e.g. HandwriteCreate) should make the writing hand to follow the Bezier curve of the MObject that is being unveiled. The MObject could be for example unveiled with .get_subcurve(0, dalpha) where the updater dalpha belongs to [0,1]. The tip of the pen can follow the get_end() point of the returned subcurve.
- The un-creation class (e.g. HandwriteUncreate) should just randomly move the hand holding the eraser around the Bezier curve resulting from .get_subcurve(0, dalpha) - in this case dalpha go from 1 to 0.

Of course this are just implementation ideas that came on top of my head, perhaps things are way more difficult.

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the existing Write and Create animation classes, along with MObject.get_subcurve() and get_end(). Clarify the intended hand-drawn creation and erasure behavior, then determine how a complete implementation should demonstrate both animations following an object's Bézier curve.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
computer-graphics
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.