Editor's Note: This file was selected as MATLAB Central Pick of the Week
This is a simple/fun stick-figure model of Megan (XKCD character).
A user-friendly GUI allows users to generate model movements, visualize the results in real-time, as well as create snapshots and videos. A variety of predefined (and somewhat silly) environments will have Megan dancing, jumping, painting, skating, and more (see accompanying video for an example).
Model highligts:
Pose can be controlled using PCA-based "natural" pose/articulatory dimensions
Model includes automatically-maintained state parameters and dynamic physics-based rules
Simple physics-based rules allow walking/jumping: while on the floor changes in pose will make Megan pivot over her standing foot -or other extremity- with perfect equilibrium; inertia/gravity modeling allows jumps, hair movement, wind effects, etc.
GUI highlights:
Define random trajectories in pose space and load/save trajectories from a mat file
Change movement speed/extent or manually browse through the pose trajectories at the desired pace
Choose among 5 pre-defined environments (none / little planet / pool skating / painting / wave riding) with more to come.
Fine-tune physics rules and environment look with a great variety of user-definable settings
Create snapshots or videos of your results
Visit this Trendy plot (http://www.mathworks.com/matlabcentral/trendy/plots/1547) for a one-painting-a-day display of Megan's artwork
Stay tuned for Cody challenges associated with this model, and have fun!
Cite As
Alfonso Nieto-Castanon (2024). Megan Simulator (XKCD) (https://www.mathworks.com/matlabcentral/fileexchange/51139-megan-simulator-xkcd), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
- MATLAB > Graphics > 2-D and 3-D Plots > Animation >
Tags
Acknowledgements
Inspired: Intuitive RGB color values from XKCD
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Megan/
Version | Published | Release Notes | |
---|---|---|---|
1.8.0.0 | . speed-up the display (~30fps real-time display on my laptop)
|
||
1.7.0.0 | added wind effects |
||
1.6.0.0 | physics model: added hair movement and angular momentum conservation (e.g. extend your arms to reduce spin velocity)
|
||
1.5.0.0 | fixed camera-tracking issue |
||
1.4.0.0 | simplified drawMegan calling syntax
|
||
1.3.0.0 | added angular control and angular momentum rules (spinning!) |
||
1.2.0.0 | no changes: just updating the file description info |
||
1.1.0.0 | added click-and-drag functionality on pose trajectory display |
||
1.0.0.0 |