The Dancing Robot! (3D model animation)
Posted: Wed Oct 08, 2014 6:36 pm
EDIT: As of Magic 1.61, the Dancing Robot project is included in the main Magic installation as a sample project, but there is still some helpful information below.
---
I was inspired by Terry Payman's most recent video (http://magicmusicvisuals.com/forums/vie ... ?f=5&t=173) in which he used a 3D model. I haven't done any projects with 3D models in a while, so I decided to put something together.
What I ended up creating was something a bit silly, but also hopefully useful as a tutorial about animating 3D models.
I've uploaded my Magic project further below so you can play with it.
But first, here's a video: As you can see, the robot dances in a simple way according to the beat of the song. (I quickly composed the song from loops in Garage Band).
The movement of the robot is achieved by linking the volume of the drum beat to the rotation of the arm, leg, and head, as well as the vertical position of the entire body.
Here's the finished project. It contains only the robot; the backgrounds in the video were added by me afterwards just for fun. You will also need a 3D model file for the project, which is a rounded cube: Many thanks to the original author of the cube:
http://acceleroto.com/2013/08/game-prot ... -3d-model/
A few more details about the project:
1) The robot is a slightly complicated character, requiring lots of modules, so I split him up into several scenes. Every part of his body is created with the same cube object, but scaled and rotated in different ways. I created separate scenes for the head, arm, and leg. I then used the arm and leg scenes twice -- one for the left side, one for the right.
2) Every module parameter linked to Volume has a Smooth modifier. Otherwise I felt that the movement of the robot was too jerky. You can play with the Smooth values to see how it affects the movement. In general, higher values will create nicer movement, but will also reduce the responsiveness and thus create a bit of a lag.
3) 3D models tend to have jagged edges when Antialiasing isn't enabled. You can either use the Antialias module I put in the scene (bypassed by default) or you can enable GPU Antialiasing (Window > Magic Window Options > GPU Antialiasing). If you do the latter, make sure Antialiasing is also enabled in your graphics card control panel. Note that GPU Antialiasing doesn't work with exporting movies though. Also note that any kind of Antialiasing always lowers your frame rate.
4) The Garage Band soundtrack is composed of four separate loops (1 drum, 3 synth), and I imported each loop separately into Magic. This way, the song elements can be visualized much more cleanly. The robot's movement in particular looks much better when it's responding to the drums and nothing else.
Can't think of anything else for now, but please feel free to ask any questions. Also please feel free to use this project however you like, but be sure to credit the original author of the cube model when applicable.
Eric
---
I was inspired by Terry Payman's most recent video (http://magicmusicvisuals.com/forums/vie ... ?f=5&t=173) in which he used a 3D model. I haven't done any projects with 3D models in a while, so I decided to put something together.
What I ended up creating was something a bit silly, but also hopefully useful as a tutorial about animating 3D models.
I've uploaded my Magic project further below so you can play with it.
But first, here's a video: As you can see, the robot dances in a simple way according to the beat of the song. (I quickly composed the song from loops in Garage Band).
The movement of the robot is achieved by linking the volume of the drum beat to the rotation of the arm, leg, and head, as well as the vertical position of the entire body.
Here's the finished project. It contains only the robot; the backgrounds in the video were added by me afterwards just for fun. You will also need a 3D model file for the project, which is a rounded cube: Many thanks to the original author of the cube:
http://acceleroto.com/2013/08/game-prot ... -3d-model/
A few more details about the project:
1) The robot is a slightly complicated character, requiring lots of modules, so I split him up into several scenes. Every part of his body is created with the same cube object, but scaled and rotated in different ways. I created separate scenes for the head, arm, and leg. I then used the arm and leg scenes twice -- one for the left side, one for the right.
2) Every module parameter linked to Volume has a Smooth modifier. Otherwise I felt that the movement of the robot was too jerky. You can play with the Smooth values to see how it affects the movement. In general, higher values will create nicer movement, but will also reduce the responsiveness and thus create a bit of a lag.
3) 3D models tend to have jagged edges when Antialiasing isn't enabled. You can either use the Antialias module I put in the scene (bypassed by default) or you can enable GPU Antialiasing (Window > Magic Window Options > GPU Antialiasing). If you do the latter, make sure Antialiasing is also enabled in your graphics card control panel. Note that GPU Antialiasing doesn't work with exporting movies though. Also note that any kind of Antialiasing always lowers your frame rate.
4) The Garage Band soundtrack is composed of four separate loops (1 drum, 3 synth), and I imported each loop separately into Magic. This way, the song elements can be visualized much more cleanly. The robot's movement in particular looks much better when it's responding to the drums and nothing else.
Can't think of anything else for now, but please feel free to ask any questions. Also please feel free to use this project however you like, but be sure to credit the original author of the cube model when applicable.
Eric