Accessible Real-Time Animation in the Game Creator Application

🎮 Bringing 2D Characters to Life: Advanced Animation Techniques! 🚀

In this project, users can animate characters by pointing to any part of the character in the main animation scene and selecting an animation type from a button palette at the top of the screen.

🔹 How It Works:
✅ Users select a part of the character to animate 🎭
✅ The system generates an underlying triangle mesh using the sprite as a texture 🖼️
✅ Animations are applied using mesh deformations and vertex shader effects 🎨

🔬 Animation Process:
🟢 Step 1: The 2D image is imported into the system. Using the Marching Squares algorithm, the character’s outline is extracted.
🟢 Step 2: Using the ear-clipping method, a primary triangulation of the character is created.
🟢 Step 3: A final triangulation is applied to regularize the mesh.
🟢 Step 4: Weights are assigned to triangle vertices using breadth-first propagation. The nearest vertex to the user’s selection gets weight 0, and other vertices receive values based on distance and neighboring connections.
🟢 Step 5: In the vertex shader, animation effects are applied using a Gaussian kernel function of weight and time. Users select animation styles via buttons in the UI.

🎨 This method allows smooth and dynamic animation while maintaining a lightweight computational cost—bringing 2D characters to life!

🙏 Special Thanks:
A huge thanks to ETH Game Technology Center for having me as an intern during Summer 2019! Your support and mentorship were invaluable.

#2DAnimation #GameDevelopment #VertexShader #MarchingSquares #EarClipping #MeshDeformation #ComputerGraphics #InteractiveAnimation 🚀🎮