top of page

Performance Animation

The Mocap Skeleton

For the first few weeks, I have implemented a mocap skeleton of my choosing to Maya. I have also taken the time learned my way around it as well as getting familiar with it – this simply served as a good practice for beginners such as myself when it comes to HIK retargeting.

​

When implementing the mocap skeleton, it always a good practice to position it in a “T Pose” the skeleton and the rig of your choosing before linking the two together, because once they have been connected, the rig’s arms will not follow the Mocap Skeleton.

​

I simply put the skeleton in a Tpose by selecting the hip of the Mocap skeleton, then I pressed and hold right click and scrolled down to “select hierarchy”. This will individually select all the pieces of the skeleton together. At this point, I opened the “Channel Box/Layer Editor”, and highlighted the Rotate X, Y and Z altogether, I then inputted “0” and the skeleton should now be on a “T Pose”. Stand the skeleton upright by selecting the hips once more and change the Rotate X to a value of “90”.

​

But before applying the 3D model onto the skeleton, I have to set the character definition up. I simply selected which body part correlates to the HIK definition. (Which can be found at Windows > Animation Editors > Human IK). This was simple and easy to do, once that is done, the skeleton should now be able to move accordingly.

DominantTpose.png

Practicing with the "Claudia Rig" and HIK Implementation

Using the same Mocap skeleton, I am now ready to implement the rig. For this particular exercise, I am using a third-party 3D model taken from one of the sites provided to us. I am using the “Claudia” rig for this scenario.

​

With that installed into my PC, I imported the rig onto Maya. I am now ready to implement the HIK onto the 3D model. Before implementing the mocap skeleton, the rig needs to undergo the Quick Rig Process. I opened up the HIK window, and selected the character as None, I selected the Quick Rig Tool and from here, it is integral that I follow the steps for this process, otherwise the animation will not work.

Selecting character and Geometry

From here, I pressed the “+” sign next to the Character tab and selected the step-by-step process for this animation, this open up 4 tabs, Geometry, Guides, User Adjustments of Guides, Skeleton and Rig Generation and finally, Skinning. These tabs are what creates the rig for the 3D model in order for the Mocap to be implemented. The first process for the Quick Rig is to select the mesh, it is important to do this as it will identify what the mocap skeleton needs to place itself in, I selected the Mesh and pressed the “+” key on the top left.

YummyPolySoup.png
Guidemetothelight!.png

Applying the Guides.

The second step involves placing the guides on the Mesh’s body parts, I changed the embed method from “imperfect mesh” to “polygon soup”, I then pressed Create/Update to continue. The third process is optional if the guides are misaligned, in this case, I didn’t have to as the guides were aligned perfectly onto the mesh. The Guides are represented by the green spheres inside the mesh.

YummyPolySoup.png

Rig Generation and Skinning

The second to last step is the rig generation, this connect all the guides together to create the rig for the mesh, I just left it as it is and pressed Create/Update to continue. I noticed that moving the rig’s body parts does not move the mesh, to remedy this, we move on to the final step, which is to skin the rig onto the mesh. I left the settings as they were and clicked Create/Update. The rig is now complete I am now able to apply the mocap onto the Mesh!

SkellyandControl!.png
MrSkinner.png
MrSkinner.png

The Stewart Rig: Clean Up and Time Editor

ITS STUUUUU.png
BakedPotato.png

Baking onto the Rig

For this next part, I am going to finally implement a walking animation to the Stewart Rig. The process is the same as the practice that I did with the previous rig, however this one is slightly different, the guides needed to be rearranged accordingly since it was misaligned when it was applied, all I simply did was grab each guide and placed them on the appropriate body parts, this included the neck, the bottom of the skull, the knees, the elbows, the hands and the feet.

​

​The next step was to import the walking animation onto the rig. Again, the process is the same as the Claudia rig above, but the next step is to ‘bake’ it onto the rig. Baking the mocap skeleton animation will literally ‘bake’ the motion onto the rig, meaning the requirement of the mocap skeleton will no longer be needed. To do this, I simply just clicked the top left button on the Human IK window and selected ‘bake’. This process will take time, but the animation will be implemented onto the rig in no time!

MergeDemAnimLAyersBoyo.png
WeirdFoot.png
WonkyFoot.png

Clean Up

Once the baking process is finished it is now time to do some clean up. When scrubbing through the timeline, I noticed there were some ‘flickering’ or ‘twitching’ on some body parts, particularly the hands and feet. I did a basic clean up on the rig by removing some keyframes and adding some of my own. This can be a laborious process, however I managed to do with what I can…

The Time Editor

The clean up is now finished, it is now time to move onto the time editor. What I will showcase with this tool is my understanding of looping the animation, this is useful especially when doing walking animations. The time editor can be found through Windows > Animation editors.

BigBoiTimeEditor.png

Merging the Anim Layers...

There are different ways I could apply an animation through the time editor, one is through importing it from an external source, however what I am doing is basically a loop of the same animation so a simple copy and paste will suffice.

 

Before applying the animation onto the time editor, I had animation layers from the clean up, so before this process, I had to merge the animation layers, this will also take time and it could crash the system, so I made sure I saved before doing this. If the animation layers are not merged before applying it onto the time editor an error will show up!

MergeDemAnimLAyersBoyo.png
AnimLayerError.png
LeftAnklerelocate.png
Matcha.png

Looping the Animation

Now that the animation is applied, it is time to apply the loop. The animation is represented by the time editor as an orange bar it will be placed onto track1 (this can be dragged and placed onto different tracks as well). I copied and pasted this and moved it to track1.

 

This is not the final step, the animation is not perfectly looped, to refine it better, I had to move the copied animation clip slightly into the first clip by a few frames, and then selected the second clip again, and then right clicked on to it selected Relocator > Match Relocator Options, go to the Human IK window and selecting the left ankle as the Matching Object via the Control tab. Once the relocating has been done, the animation should now be in a perfect loop!

Stewart Rig: Final Result

The "Discobot" Project

For my animation, I plan to create a very unusual scene where a robot/android dances using a variety of mocap sources provided for us. Unfortunately, due to complicated matters, we are not able to record our own motion capture animations, however we are allowed to use last year’s animations provided by previous students.

The Setting

ArnoldDiscoSetting.jpg

The animation will be set in a club/or a bar, background music will also play during this scene adding more life and character to the animation. I thought this scene will be appropriate as it sets the proper tone for what actions the robot is doing.

​

The robot will do a variety of dance moves, including the YMCA dance as well as the moonwalk, I will mainly be using Maya for this project and will try to add more miscellaneous assets to set more of a lively tone as well as adding more unusuality to the scene and the animation itself.

Tools & Techniques used...

ybotRender.png

Using my knowledge for the previous assignment, I have imported the proper skeleton rig onto the scene, that included the dance moves. I am using a 3D Model downloaded from Mixamo for this animation.

TimeEditorSS.png

Using a variety of methods at my disposal, the animation will be cropped and cut as well as blended together using the Time Editor, another technique acquired from the previous assignment, this will prove useful to create a more seamless animation.

CamSeqSS

I will also be implementing the camera sequencer into the scene applying a more dramatic effect with the camera switches and transitions, this knowledge was gained from last semester’s projects and will prove useful for the current project. I will be using a variety of camera angles to further capture the liveliness within the scene.

Mocap Data Used

The Animation will have 4 different takes used: A boogie animation, a disco themed dance animation, a jumping forward animation and a cheering animation - all of which were provided by the previous year’s students. These animations have been incorporated together to fit the style and setting I am going for. I mentioned previously that I was to implement “YMCA” dance move; although it was provided for us, I did not find the animation to be favourable, it to be too stiff in movement – the plan was to animate the model with as much action as possible to make it feel more “alive”.

Shuffle.png
Jump.png
Disco.png
Cheer.png

Fixing some errors

2021-06-09 (22).png

These screenshots demonstrate not only my knowledge of using the time editor but also expanding it as well. Previously I found it tremendously difficult to import animations through the time editor, this is because it was causing some errors. A mistake in my part caused these and what I essentially did was apply the animation source onto the model and then baked it. I then applied it onto the time editor and as soon as I tried to import the second mocap take, an error signifying that were "no attributes were matched”.

​

Through some research, I managed to find the solution to this minor hiccup. What I did was start a new Maya scene with no 3D model on the viewport but instead imported and applied the HIK onto the necessary mocap animation that I planned to use. With that in place, I was now able to import the rest of the mocap data via time editor. With the applicable knowledge I gained from previous lessons, I then matched the relocators onto animation (more info below). It was now time to import the 3D model into the viewport and apply the blended mocap data as its main source of animation.

Implementing the Cameras

One of the more crucial parts of the animation to create a more dramatic effect overall. By using cameras, I am able to make the animation a bit more interesting. Using my knowledge from previous modules, I placed a camera by changing the menu bar to Modelling to Animation, this way it will be much easier for me to work with. The camera is found through Create > cameras. I selected the first one and duplicated it as I go. To make it much easier for me again, I looked through the camera’s perspective, I can change the angle and position while looking through the camera. Once all that has been implemented, it is time for me to sequence all the cameras together.

​

Note: I made a mistake along the way while sequencing the cameras – errors indicating that I altered the camera’s transform (size) to 40. This is not recommended as it does not allow the sequencer to create an Ubercam, I fixed this by changing the transform size back to 1,1,1 and instead changed the locator scale sizes. Another mistake involving the sequencer is the timing, it has to match the overall frames and the sequence together, otherwise the Ubercam will not allow me to create it as well.

CreateCamera.png
BetterCam.png

Applying the Cameras, Splitting Shots & Ubercam

With all the problems sorted, the cameras are now able to be sequenced. Moving everything to frame 0, the I created a shot by clicking the orange bar on the top left corner of the sequencer, this will add the perspective camera, by right clicking on the shot, I changed the camera to Camera 1. I split this shot by going to the end of the camera frame through the sequencer and right click again to split the shot and added Camera 2. This will allow me to sequence the camera altogether, I then added the rest of the cameras and finally created the Ubercam. Ubercam is essentially all cameras baked together to allow the viewer to see all the cameras’ perspectives with just one camera.

ChangeCam.png
BetterSplitShot.png
CreateUbercam (2).png

Exporting & Importing to Unreal

This section will cover exporting the animation and other assets from Maya to Unreal. Using Unreal is an industry standard when it comes to Computer Generated Imagery (CGI) as well as 3D animation overall. This process is simple and can be done in just a few minutes.

​

Note: I had some problems when selecting from exporting to selection, it will not allow me to create the animation skeleton as well as importing the animation. However, I solved this by selecting send to Unreal instead, this easily allowed me to export all the necessary files together, including the animation itself.

The Process...

Before the exporting process, the animation must be baked. To do this, I simply opened up the Human IK tab and selected the button on the top left corner and selected bake and then bake to skeleton. I will be no longer need the mocap skeleton at this stage as it is already baked into the model, so I removed it from the Outliner.

​

Once all that is finished, I selected the model’s hips and selected to hierarchy, this will ensure that every piece of the model will be imported onto Unreal. I set the preferences in preparation for the export, I went to settings and onto Working Units and ensured the measurement was set to Centimetres and set the grif options to 10.. Next is the export itself, on the file tab, I selected send to unreal > selection and saved it onto the necessary file. Before doing so I selected Smoothing Groups as well. The animation I now ready for Unreal, by right clicking on the content browser I selected “import to / Game” and the selected the file where the animation was exported and started the process, I checked the animation to see if everything is in order. Now I am ready to create cameras using Unreal’s own sequencer.

BakeToSkel.png
SelectHierarchyBeforeExport.png
GridOptions.png
LinearPreferences.png
SmoothingGroups.png
ImportToGame.png

Importing Ubercam, Scripting Light Flicker and Applying Animation

One method is to re-create all the camera actions within the Unreal, however, this can prove to be time consuming This is where the Ubercam comes in play. By exporting the Ubercam as an FBX file, I was able to import the baked camera sequences created via Maya and import it through Unreal. I did this by using the same method as exporting and importing the assets and animation – by sending it to the engine.

​

I then imported it through the Level Sequencer where I also implemented the animation, doing this will now allow me to edit and realign all the necessary positioning of the animation made through Maya.

​

I have also scripted in lighting effects which simulates a nightclub theme, I created a custom actor BP consisting of various objects that came with the asset pack I purchased for Maya and Unreal and through the BP, I added in the specific meshes as well as a point light. On the event viewer, I added in the following this simple script, this allows me to change how fast and slow I want the flashing/flickering to be.

LFCreateBP.png
LFBPEditor.png
LFScript.png
RenderVid.png

Rendering the Video

Once I’ve done all the necessary steps to creating a more creative animation, I added extra walls onto the scene as well as extra lights. The final step of the Unreal process will be the rendering of the video. I went into the sequencer once more and selected the “clapper” icon which renders the video, this window should show up, I set the resolution to 1920x1080p as per usual and began the rendering process.

 

This brings the unreal section of the project to a close, I will now be editing the video and implementing audio clips and effects both sound and visual. This will be the final process.

The process of importing the Ubercam is very simple, by simply creating a new camera in sequencer, I right clicked on the camera and selected the Import button, this will open up the directory where the Ubercam was exported. I then selected that file and the current camera will now be converted as the Ubercam made using Maya!.

​

The part of the sequencer is optional, however it is helpful and a good method to use when previewing the animation. By selecting the Green Button labeled "Track" on the sequencer, add actor to sequence and browsed for the animated mesh. This will not be animated, to do so I expanded the track, and clicked on the add animation tab. I selected the appropriate animation from the content browser that came with the animated export. 

ImportUbercamIntoCam.png
ActorToSeq1.png
ActorToSeq2.png

Editing using Adobe Premiere Pro

For the final part of this project, the task will consist of importing two things into Premiere Pro – the video clip rendered from Unreal and the audio clip necessary. This process only requires two simple steps, by clicking on the file tab and simply import both the audio and video clips. Both of these respective clips will appear on the media browser and all it takes is to drag both onto the timeline!

PProMediaBrowser.png

Adding the effects

With some minor adjustments to the audio, I dragged the end of the audio clip to match the length of the video, I also added simple effects for both clips, for the video clip I used a fade to black effect and the audio was using an exponential fade (fade out). These simple effects add a higher quality overall animation.

PProFadetoBlack.png
PProExponentialFade.png
ExportSettings.png

Export Settings

With those processes finished, it is now time to export the media file, this can be done by going into file once more, select export and clicking on media, this will open up the export settings window. In order for me to capture a higher quality image, I ensured the format used is H.264 and preset as High Quality 1080p HD, saving changing the output name to DiscoBot.MP4. Once it is saved within the selected directory, the file is now ready to be viewed! Here is the final result of the animation…

The Discobot: Final Result

bottom of page