Character Performance Animation – Acting v2

This week I re-shoot my acting video with different style and angle. In the previous version, the characters were talking to the camera but in the new acting, I made both characters facing and talking to each other. This time, they were visible in a full-body shot so we can see the whole body movements.

Same as before, I’m quite struggled with acting. It took me more than 2 hours and 88 videos to finally get the acting that I’m satisfied with. I edited the video and combined both characters in one shot using masking technique to make them look like they were talking to each other.

I uploaded the video to Ftrack and Luke approved it. I can now proceed to the animation process and use the video footage as reference.

Collaborative Project: 15 – 21 February 2021

15-16 Feb 2021

In the morning I do the last preparation for the implementation of the new file structure and referencing system. I saw that Emma already animated the spaceship landing. Initially, I thought that I want to understand how to use the Maya reference system first before I explain the plan to the team. But at this moment I felt that I made a mistake and guilty for not mentioning about it earlier because Emma probably needs to animate the scene again using the new file if we are going to implement it.

Later that day, I explained what I have prepared in our Discord channel and pointed out all of the advantages of using the reference system in out project. I want to get approval from the team first before I push the new files to our collaboration folder.

Antoni then suggested me to improve the background with bigger mountains at the back and I agreed with him. I imported several mountain models from Emma’s file into my background model. I optimised the model first and arranged the mountains to fill around the existing background. I think it’s definitely looks much better now with all the mountains.

I added large mountains as suggested by Antoni
New background model with large mountains
Updated background model (Rendered version)
Updated background model with spaceship and character (Rendered version)

As the team approved the implementation of the reference system, I uploaded everything I have prepared to our collaboration folder. I didn’t delete the old file but put them in a backup folder in case we want to revert to the old file and structures.

17 Feb 2021

This morning we had class with Luke where he demoed about how to use zoetrope technique in Maya. Zoetrope is a premade effect in image sequences format where we can apply it as textures on a plane. It’s like a sprite. It can be very useful for previs project for making quick effects like smoke, fire and muzzle flash without the need to make an actual simulated particle effect from scratch. There is a huge library of zoetrope in the university network and Luke shared folder for us to use.

In the afternoon, we had another weekly video meeting on Discord. We discussed a bit about using zoetrope for some effects in the project. Antoni and Ghera looked into the zoetrope folders to see some of the effects, and we were particularly excited with the sandstorm effect which could be useful for some of the shots in the story. Antoni and Ghera actually was thinking about using actual particle simulation and already researching and experimenting some of the effects. So we decided the VFX team can use any technique that they prefer since they probably want to learn and improve their skills for making an actual effect and not using premade image sequence effects.

For sound department, Ben said that he and Cally have been discussing to split their work where one of them will work for the sound and music on Act 1, another on Act 2 and both of them for Act 3.

During the meeting, I took the opportunity to explain more about the new file structure to the team especially to Emma, Antoni and Ghera. I shared my screen to show them how to use it and what they should do when opening and creating new files so that the referencing will work properly.

After that Emma and I discussed about to split the works for the animation tasks. Emma will do shot 02, 03, 04 and 05, while I’m going to do shot 06, 07, 08 and 09. Emma mentioned that she was a bit concern about the space buggy model for shot 07 whether it can be used or not. I agreed to look into the space buggy file and will do the rigging if it’s not yet rigged so that it can be animated for shot 07.

At the end of the meeting, we decided to have an additional shared folder on OneDrive which will mirror all of the contents from the collaborative folder in the university network. The OneDrive folder will also work as a backup in case anything happened to the primary folder.

18 Feb 2021

Early in the morning, I drew a techvis for shot and camera planning of Act 2 from shot 10 to 18. It can be very useful when we proceed to animate Act 2 later. I planned to have variety of camera angles and movements for this act.

Action and camera planning for shot 10 to 13
Action and camera planning for shot 14 to 18

At 11.00am today, we had booked a one-to-one session with Luke today to look into our project and give his opinions and suggestions. Only animation and visual effects team were in this session since it will discuss more towards these departments. Luke seemed pleased with our current progress. He then showed us on how to use a CamShake plugin in Maya to help us making a camera shake. Luke said that camera will at least has tiny shake motions even when static which will add a level of realism.

Our group session with Luke

Luke demoed the plug-in using the university computer, and I asked him whether the camera shake will still work if we take the animation file to work on our own computer or we need to install the plugin first. Luke explained that the camera shake will still there, but we won’t be able to edit it if we don’t have the plug-in installed.

We then discussed a bit more with Luke about using the zoetrope technique or actual effects. He showed us some examples and said it’s up to us to use any technique that we prefer.

Houdini – Material, Lighting & Render

Week: 15 – 21 Feb

Throughout this week’s tutorial we used the Arnold rendering engine instead on the built-in Houdini’s Mantra. I headed to Autodesk website to download and install the trial version of Arnold. I then switched the rendering engine in Houdini to Arnold as I followed the Mehdi’s tutorial.

Mantra rendering engine
Arnold rendering engine (with watermark because of the trial version)

For this tutorial, I used the ‘rubbertoy’ as the subject and attached the ‘Attribute Delete’ node to clear any attribute of the 3d model. After that, I applied a new ‘Standard Surface’ material shader to the model. With the shader, we can change the object’s color, specular, roughness etc. But for this exercise, I just followed and used the same shader settings from Mehdi’s tutorial.

I added an ‘Arnold Light’ node into the scene which act as the ‘Key’ lighting. By default, the Light type is set as ‘Point Light’ which is omni direction.

Arnold light node
Point light (omni direction)

Before going deeper into the lighting, I added a new camera node to add a camera into the scene to set the view angle of the render. I repositioned the camera until I got good angle of the subject (rubbertoy).

Camera node
Setting up and reposition the camera view

Next, I went back to the ‘Arnold Light’ that I created before and changed the light type. There are many option available for the light such as Point, Distant, Spot, Quad, Disk, Cylinder, Skydome, Mesh and Photometric. Each light has different parameters and settings that effects the render.

I changed the light type to ‘Distant’ first to try and see how the render looks like. The lighting has now became a direct light instead of omni direction.

Distant light (direct light)

I played around with the render settings and lighting parameters a bit to see how the render reacts to it. I also added a ‘Grid’ node to add a plane under the subject so shadow can be casted on it.

I added the second ‘Arnold Light’ and changed the Light Type to ‘Quad’. This lighting will act as the ‘Back’ lighting for the scene. In the next part, I tested and experimented several lighting parameters as well as reposition the lights to get the lighting I want.

Quad light
I tested and experimented several lighting parameters as practice.

I went back to the first lighting and changed its type to Skydome and applied a HDR texture that I downloaded from the internet.

I experimented with the settings several time but I didn’t manage to get the same visual as seen in Mehdi’s tutorial. I’m not really sure if I missed anything or was it because of the trial version of Arnold. I didn’t finish the whole part of the tutorial as I need to finish some other tasks in the collaborative project. I may revisit this tutorial again later.

Character Performance Animation – Acting (Rejected)

The dialogue for character performance was confirmed last week. This week, I recorded myself acting out the dialogue. Its quite hard for me actually as I don’t have talent in acting. I recorded tremendous amount of clips just to get good ones for the 30 sec dialogue. I then edited the clips that I think were good enough and uploaded the video to Ftrack for review by Luke.

In the class session today, Luke rejected my acting video and suggested to do a re-shoot with different acting style and view angle where both characters should be shown full-body while facing and interacting each other. Luke mentioned that I should make the scene totally in different situation than the original Tiberian Sun clip and it can be a very funny scene.

I totally agreed with Luke’s suggestions and will do a re-shot probably in the weekend or early next week.

Collaborative Project : 8 – 14 February 2021

8 – 9 Feb 2021

We started this week with video meeting on Discord. This time, we have everyone in the meeting to discuss the storyboard that Emma and I had produced yesterday.

From the storyboard we were able to anticipated what model, animation, visual effects and sound needed for the project. Everyone agreed with the storyboard and then we discussed for everyone next tasks.

The animation department (Emma and I) will start building and preparing 3d models while the visual effects department (Ghera and Antoni) will research and experiment on some visual effects. For the the sound department (Cally and Ben), Emma volunteered to make an animatic from the storyboard to get a rough pace for the story so that Cally and Ben can start drafting audio and music without having to wait for the animation to finish first.

Right after the meeting Emma created a project folder on the University network for all team members to access and working on the project files. I also continue to gather as many free models from the internet that can be useful for the project.

10 Feb 2021

In today’s class, Luke demo to us of how to use and apply motion capture to any character rig as a method to make previs animation process faster. I don’t understand much during the lecture and will watch the recorded session to understand more regarding this topic.

In the evening, Emma posted a preview of her early works on our Discord channel and it looks good. Later that night I checked her works on the university network to see how she prepared the files. I found that all props and background models were imported into 1 file, which may not an issue now but can be problematic when we have multiple animation files with everything inside each of those files. The files can be very big and updating each file can be very tedious if we decide to change something to the background model or textures for example.

It’s definitely not Emma fault though as she probably new to this. I wouldn’t know about this either, but I was a bit fortunate to have some experiences working on several animation projects before to understand the usefulness of referencing system, file management and asset optimisation. Each character, prop and background model are suppose to be separated into different files and composed by linking them into another file. With this method, any model and texture can be updated and the changes can be pushed back to all animation files automatically. Plus, all working files will become much smaller in size and easy to manage. I think this can be very good for our group learning process as well.

Original version with high poly landscape and
everything inside each file which cause large file size

The problem at this moment was that I used 3dsmax and Blender pipeline before and not familiar with how Maya referencing works, but I don’t think it will be much different. I didn’t tell the team yet that I want to implement this as I want to understand and confident on how to do this in Maya first. I will work on this tomorrow morning.

11 Feb 2021

Referencing System

Today I started preparing the project folder with reference system in mind on my local computer first. I downloaded all Emma’s files from the university network as my starting point and restructure from there. In the current files, some models were linked from the university model library, which are good, but they were located outside of our collaborative project folder. It can be a problem if any of the team member want to download the project folder to work on their local computer and will experience missing files. It may also will cause damage to the original model in the university library if we decide to modify the model’s shapes and rigs for our project.

In the original Emma’s project proposal, I can see some of the models that Emma planned to use. So I copied all the expected models and their respective texture files from library into our collaborative folder. I setup all the linked textures using ‘File Path Editor’ as dynamic paths inside the project folder so that anyone who copy the project folder will get the textures automatically loaded when they open the project file regardless of the root and parents folder structure.

Next, I started experimenting to see how referencing system works in Maya by linking all the models into a test file that I called ‘playground’ using the Maya Reference Editor. Then I did some experiments with static model first. I modified its shapes in the original file, and saw it updated automatically in the ‘playground’ file. After that, I tested what will happened if I updated a rigged character that has animation. I made a simple animation to the character in the ‘playground’ file and changed its shapes and textures in its original file. The character was updated successfully with all the animations still intact. It’s awesome! The only thing was that I cannot make too much dramatic changes to the bone location and its group as it will break the animation. But this is expected, and it works about the same as other 3d software. I also tested several other things like changing pivot, layers and group. There are small things that irritated me about how Maya project and referencing system works when compared to other software, but I think it’s manageable. I feel so great that I’m now understood the referencing in Maya, how it’s work and its limitations.

Diagram of how the new file structure and referencing system that I prepared will work

Space Ship Model

Next, I do a quick adjustment to the existing spaceship model. I want to do a very simple parent rig to the spaceship especially for its doors so they can be rotated and animated for one of the scenes. The doors were combined within the same mesh group of the body, so I need to separate them first. When I’m double-clicking on the door mesh to select it, it didn’t select the whole door. Which usually means its faces are separated and multiple vertices were overlapped in the same place. This is a very common problem happened when the model was converted and transferred using other 3d file format. So I did some meshes clean-up using the vertex ‘Merge’ function with very minimum threshold to fix the problem. I then managed to select the whole door meshes easily.

A lot of Spaceship’s vertex and faces are not weld properly
Separating doors

I then separated both doors using the ‘Edit Mesh > Extract’ function. The Maya separate function can be quite tedious because it will create a new group and divide each component in the selection into different objects whereas in other 3d software, it will only separate into 2 objects which are the original object and the separated mesh that we selected with original name still intact. But in Maya case, we have to rename the main object back, combine all the meshes that suppose to be one and clean the history. I’m not sure if there is another way to separate mesh but as far I look into tutorials and forum discussion, this is the way to do it in Maya. I will look into this again in the future as I don’t want to waste more time finding solution as this function is working, only it’s a bit annoying to me.

The door can now be rotated and animated

With the doors separated, I adjusted their pivot location and orientation in the right direction, so that the doors can be rotated properly. I then set both doors as child to the spaceship group and rename everything in the Outliner properly. I didn’t do a complete rig with controller for the spaceship as its only need a basic movement for the body and door. So I think a simple group-parent rig would be sufficient.

12 – 14 Feb 2021

Desert Planet Landscape Model

Now I’m ready to proceed with building the background models for Act 01 which are the desert landscape and space colony. I used one of the ground models from Emma’s file as my starting point. Because the polygon count was quite high, I optimised the meshes first using several tools like ‘Mesh > Reduce’ bit by bit, ‘Edit Mesh > Merge’ and some vertex by manual ‘Target Weld’ when Reduce and Merge not working as I expected. I flatten and adjusted some high of the ground shapes as I think it could be used in some shots of the story. During this process I also made a draft space colony model for scaling and location reference. I will revisit this model for detailing.

After the landscape ready, I then imported the modular rock models that I prepared last week and arranged them manually one by one on the ground model. During the process, I organised the Outliner so it is easier to manage as the modular rocks meshes started populating the area.  For basic lighting, I used the HDRI and lighting setup from Emma’s file with some modifications. This aspect may be changed later by Antoni and Ghera from VFX department. So technically, not everything was lost from her original works. During the whole process, I used a screenshot from ‘The Martian’ film as my reference.

Arranging modular rock meshes manually on the ground model
Early version of landscape and organised assets in Outliner for easy management

Space Colony Model

I went back to the draft space colony model and adding more details to it. I didn’t built the building from scratch, but by combining some modified components from a free space station model to save time. After spending a whole day at the end of the week, I decided to wrap the work for the background model. I did not finish the interior of the building yet as it should has several more models such as tents inside it. So I just put some boxed as a dummy for this moment. I will update the building again and since we can use referencing system, the model changes can be pushed to all animation files at any time. It can also be a good demonstration for the team members so they can see how useful this feature is.

I used a modified components from a free space station model
Early version of the space colony without proper interior

Rendered Images

Background landscape for Act 1
Space colony model (not complete yet)
Spaceship and character
Spaceship, character, space colony and background model
Reference

After everything was ready, I set all the files using category naming convention with ‘char’ for character, ‘prop’ for props, ‘bg’ for background, and ‘anim’ for animation files.

I prepared a template file for ‘anim’ (animation) file with all assets like characters, props and background were linked into the file. So animators (Emma and I) can just grab this template file without the need to setup the references again and again every time we make new animation file.

File naming convention and dramatically smaller file size

I finished everything by the night at end of the week but I didn’t push my works to the collaboration folder in the university network yet. I want to brief everyone first about the system that I’ve prepared by tomorrow, 15 February 2021.

Character Performance Animation – Dialogue Options

In this term, we will have another character performance animation practice as a continuation from the last term. And for this time, there must be 2 characters that interact with each other.

In today’s class Luke briefed and showed several videos regarding this topic. And for the first task, each of us need to find 3 short dialogues as options and upload it to Ftrack by 3pm today. Luke will choose which audio is the best and suitable for our character performance animation.

I quickly browsed several films and videos for suitable dialogues and ended up with multiple options. I chose the best 3 dialogues that I think can be interesting to animate. And the 3 dialogues that made into the final cut were short scenes from The Terminal (film), Avatar (film) and Tiberian Sun (Game cutscene).

My first choice was of course the dialogue from my favourite game, Tiberian Sun. But when I compiled the audio, I intentionally put Tiberian Sun at the last place to make it look like it was my last choice. And turned out, Luke really chose that dialogue!

The next task now is to personally acting out the dialogue and record it as a reference footage for the animation. This made me a bit nervous because I don’t have talent in acting. We will then required to upload the acting video to Ftrack next week so Luke can give feedback and opinion to it.

Visualisation Process, Animation & Motion Capture Types

Visualisation Process

Previs or Previsualization is pre-production process of visual planning and mapping out scenes before filming and production. It can be done using many methods such as drawing, storyboard, animatic, photography, and more advance using 3d graphic. Previs helps the director and production team to experiment and understand the camera direction, subject placements, lighting and compositions of the scenes. It can also serve to identify the technical aspects, required assets and possible issues before money is spend on actual production.

Postvis is combining previs elements or placeholder visual effects with the live action footage to quickly preview the film and validate the before proceeding for the final process. It provides a post-production blueprint for the VFX team and a comprehensive look at the film for test screenings.

Techvis is an aid to explain how certain scenes could be accomplished. It can be in many forms such as sketch drawing, detailed schematic diagrams and simulation videos that reveal the relationship between camera rigs, actors, how sets were constructed and what the visual effects process might then involve. Techvis ensures that every previs shot is achievable and can be reproduced during the shooting.

Animation Types

VFX animation refers to visual effect animations in live-action film or video. It involves enhancing footages by fixing visual, adding digital props, character and particle effects. The added elements are usually designed to look as realistic as possible that blend with the live-action footages. The process involves tracking, manual animation and simulation.

Film animation refers to fully animated movie. The animation can be cartoony or in realistic style depends on the concept. Although more advanced methods like motion capture can be used, most film animation production prefers to animate manually to have more control and make the stylised animation more visible.

Game animation refers to animation created for game and real-time interactive use. The animations are usually action sets designed to be loop-able and can be blended with other action. The process can be manually animated or motion captured. In terms of finishing look, the animator sometimes will ignore the intersection between polygon and parts as long as the overall animation is good. 

Motion Capture Types

Motion capture or mocap is a technique of recording the motion of person or object so it can be applied to virtual character and object. The process requires actors to act and implementation of special equipment or hardware to track the movements. Among the data that can be captured are body, fingers, lip and facial expressions. The results are usually intended to look realistic to be used in film, animation and games.

Matchmove is a technique used to track the motion of the camera in a footage so computer graphics can be implemented into the scene to appear in perfectly matched perspective with correct motion, position and orientation. Match moving is typically a software-based technology and applied after the normal footage is recorded.

Rotomation is a technique of tracking and animating 3d element by matching the movement frame by frame with the actor or object in the live-action footage. The method is used to replace or adding parts to the original subjects with digital version.

Collaborative Project: 1 – 7 February 2021

1 – 3 Feb 2021

I started the week by searching and collecting free models from the internet that I think can be used for the project. There are many good free models but some of them were in different 3d formats and not for Maya. So, I spent a bit of time to convert the models to Maya and relinked the materials.

I saw that Emma and Antony also started sharing initial assets and references that they found online in the group chat. So I think everyone was excited to start working on this project.

We discussed of when is the suitable time for our first video meeting and agreed to meet online on Thursday, Feb 4th.

4 Feb 2021

During the first video meeting, we’ve got the opportunity to know each other better and understand everyone specialties which are important for collaboration work. I feel confident with everyone in the group and believe we can achieve a good result with the project. 

Our first video meeting

Group Leader: Emma Copeland
Animator: Emma Copeland, Kamil Fauzi
VFX: Gherardo Varani, Antoni Coll
Sound Design: Cally Spence, Ben Harrison

Antoni from VFX was unable to be in the meeting today as he was traveling back to London, but Gherardo took notes for him. 

We discussed and began planning out the initial steps for our project. I suggested that we start by making storyboards first based on the Emma’s story outline. So we can get a picture on how the scenes will look like, identify required assets and anticipate any technical issues. With storyboard, all departments can have a guide to start preparing and designing their materials without having to wait for the other stage to complete first. 

There are 3 acts in the story, and we divided the storyboard tasks:
Act 1 & 3: Emma
Act 2: Kamil

Story outline by Emma

We decided to have another video meeting on the next Monday, Feb 8th to discuss again after the storyboards finished.

Right after the meeting, I shared some of the models that I have converted to Maya in the group chat.

5 Feb 2021

While drawing the storyboard, I asked the other departments if they have ideas that they want Emma and I to include in the storyboard.

7 Feb 2021

By the end of the week, Emma & I managed to finish the storyboards for tomorrow’s meeting (Monday, Feb 8th).

My storyboard for Act 2:

Act 1 storyboard by me

Emma storyboard for Act 1 & 3:

Act 1 storyboard by Emma
Act 3 storyboard by Emma

Houdini – Particles

Week: 1 – 7 Feb

This week tutorial from Mehdi is about creating particle in Houdini. We learned how generate particles that attached to a character.

There were several completely new nodes since this was about simulation and different than the last week modeling nodes, such as popsource, timeshift, scatter as well as node to affect force like gravity and wind. There were also a lot of playing with numbers & values for the particle generation, birth and the strength of the forces.

Setting up source for the particle
Particle source parameter
Birth parameter for particle generation such as count, birth rate, life and seed
Force node for wind and gravity applied
Simulation cache
Global Animation Options for playback
Final nodes composition

Result

Houdini – Cabin Model

Week: 24 – 31 Jan

Last week we were introduced with Houdini software by Mehdi Daghfous. I never used Houdini before. Starting from this week forward, Mehdi will provide a weekly tutorial for us to practice and familiar with the software.

Houdini introduction with Mehdi last week

This week tutorial is about the basic interface and getting to understand the software concept. Speaking of concept, Houdini is quite different from any other 3d software I’ve tried before. It is nodes based and use it for pretty much everything. It’s like we do a visual coding and connect the functions to achieve what we want to create. There are a lot of syntax that we should know as well to use throughout the software.

These are some of them that I noted when watching Mehdi tutorial:

  • OBJ : Object
  • SOP : Surface operators
  • DOP : Dynamics operators
  • ROP : Render operators
  • $HIP : Path for saving file
  • $OS : Export geo name
  • $F4 : Frame number

We learned how to build a simple cabin model and get to familiar with the fundamental of the software along the way. During the modeling process, I found that Houdini has all the standard modeling tools like we found in the other 3d software, but with they are done through nodes. It’s quite tricky at first as to understand what and where the nodes can be connected. But I can see the advantage of this is where a node can be shared which creating a number of procedural objects and instances with variations or similar parameters can be faster.

The main interface of Houdini
Boolean operation
Boolean operation
Inverting normal

Final Model 1

This is my cabin model after following the tutorial. As my ‘OCD’ kicks in, I also organised the nodes and renamed everything accordingly.

Final Model 2

Mehdi want us to add wood shape wall to the cabin and do it ourselves using the knowledge that we have learned before. Below is my cabin version 2.