Wednesday, December 31, 2014

Animating with a team part 2 (my second shot & putting it all together)

Check out part 1 if you missed it because I may be referencing points from that post.

So my second shot was shot 10, which had our character Bugsy interacting with Miss Bugsy before he is about to untie her. The focus here is on Miss Bugsy because she is the character most visable in the shot, and the one who's whole face is visible. Before getting into these later shots, as a group we had to develop Miss Bugsy's personality just like we did for Bugsy. We decided to go for a damsel who is in love head over heals and can look past Bugsy's faults like his overconfidence or clumsiness.


Shot 10 went through a lot of changes at the beginning because I had a certain idea of how Bugsy would move his hand. I was going for a sensual finger drag across the top of the head, but after receiving a critique from the teacher, he suggested trying under the chin instead. At first this idea felt weird to me, but the more time I spent with it, acting it out, adjusting poses, and getting more feedback, it started looking a lot better.

(hand above the head)

(hand below the chin)

I guess I'll take this time to mention why I made the acting choices I did when it comes to the touching of Miss Bugsy's face. When animating a character, you have to get in their head and feel what they feel. In this case Bugsy is rescuing a trapped friend, he's glad to see her and wants to show her this. A simple touch can build such a large connection. Imagine if Bugsy had just done a standard walk across the scene, he would almost seem out of place without doing anything. Same goes for Miss Bugsy, this is a character that is in love, and as the milestones progress I made an effort to put as much life and love into Miss Bugsy. This applies to everything, the way she slowly leans back, the way she blinks her eyes, the way her smile slightly grows as time goes on around Bugsy. Animation is acting, and you have to feel these emotions, and thats one of my favorite parts about the discipline.


I tried a little someting special for the next critique. I added in some motion in the antennas of Miss Bugsy to make them take the form of a heart (Think 2d characters like Bugs Bunny who can bend and manipulate their ears to take many shapes). This proved to be a unique challenge because I was somewhat limited by the rig, but it wasn't to big of a deal, the heart just came out smaller than I thought it would. Another thing that was important to keep in mind here was the silhouette of the antennas, they had to look right in the camera view, this was more important than actually being perfectly positioned on the head. I put a lot of thought into this little antic so I'm glad it went over well during critiques.


Now in the final wrapping up stages of the animation, the things I focused on most was enhancing the principals of animation like the secondary action and follow through. This mostly applies to things like the hair, ear rings, and antennas on Miss Bugsy. But even Busy has some in his hands, since they flow offset to the arms. I also adjusted Miss Bugsy's eyes a bit more to not always have them 100% wide open. The more wide the eyes are, the blanker the stare looks in most cases. I also looked into adding some subtle eye darts because that's how eyes work in the real world. This was my first time trying this so I do need more practice on this front.


After everyone finished their shots, it was time to put them all together and get some sound in there to further enhance the animation. Everyone was responsible for putting adding sound to their particular shots and we agreed on a song that can play throughout the whole thing. I put all the shots together that everyone finished in After Effects. This didn't take too long, and we set some time aside on the final day to make sure we would finish.

I'm really happy with the final result, and I had a good time collaborating with my group. Here is the final product one more time, now that you know the process that went into it (or at least my portion of it), you can have a new point of view.

Tuesday, December 30, 2014

Animating with a team part 1 (my first shot)


Over the month of December I've been in a class called Animation Production. The format of the class was a bit different than what we've had in the past because it all revolved around one big project, and every lecture period was time to get critique from the teacher and other students. I really like this format because critiques are invaluable to creating good content and it brought new ideas to the table that I otherwise may have never considered.

The project was an animation with 12 shots, where each group member was responsible for 2 shots. I had the 4th and 10th shots of this spy genre short, and I had a lot of fun with it. A big part of this project was communicating with one another, not just for critiques, but to be able to match our scenes to one another. For example, being shot 4, I had to look at shot 3 and follow that up appropriately, while also talking to the person with shot 5 and matching our beginnings and endings. There is some room for variation because every shot is a camera change, so the eye won't catch some of the smaller differences, though our group was pretty diligent about communicating and clearly planing out what to do.

Speaking of planning out, drawing out some breakdowns is very helpful before actually doing any animation on the computer. It's a good way of seeing what poses you might encounter and give you a good idea of how to tackle them.


Now its time to jump into Maya and start putting in the key poses. Here I tried to include the biggest anticipation and pull at the beginning and the contacts of each step while the box is pulled. This is still not every key pose and the timing is not done at this point, but it's a good place to discuss with group members and directors, because if the key poses aren't as they should be, the'll be harder to change later.


After each of these videos there has been at least one critique, which comes with it valuable feedback to apply to the next milestone. From the last video, I put in more breakdowns to make the motion more clear and included some moving holds to pace the animation a bit better (Having constant motion isn't always necessary, sometimes you need a break from the action). I also added more to the end because when discussing with the animator of shot 5, they wanted the head to pop up from the bottom of the window. Towards the beginning of my animation I also added a part where the hands slide off the box. This was critique feedback that was based off of our characters personality, which was a smooth cool dude who is sometimes clumsy and messes up.


In the next milestone we went out of stepped mode and into auto tangent, this came with its own necessary retimings, one of these included removing the slip off the box. I should mention that we all had set frame counts we had to stick to. Just like in a production you don't get an infinite amount of frames to enhance your animation, and more often then not, things need to get cut. As a group we decided that not every scene needed to show off the character's clumsiness, because that would get a little repetitive.


At this point you can probably tell that the box doesn't feel as heavy as it should. I noticed it too, and it was one of the biggest things I wrestled with for this shot. Like I mentioned before the frame count was set in stone, so I only had so many fames to make slow down the dragging of the box. This led to me removing much of any extra antics at the beginning, just to make the box pull look its best, because that was the most important part. That and getting the character up onto the box for the smooth transition into shot 5.


From this milestone onward I mainly focused on getting that box to actually feel heavy and adding in secondary actions (antenna and glasses movement) and facial expressions. By the final result, with the help of numerous critiques and much experimentation with the timing, I think I achieved my goal in giving the box weight. A big part of it was actually letting the elbows lock out when fully extended, and bringing the character very close to the box when pulling it towards him. After all the edits, this is what my shot 4 looked like.


Towards the second half of the class, we began working on the second shot. That came with its own set of challenges and and excitement. Check that out here.

Friday, December 26, 2014

Samus Composite in Nuke


We learned a lot in our Compositing and Scene Finishing class, the first two weeks was learning the basics of tracking in SynthEyes and Nuke, for better CG integration. Because SynthEyes was new to us, the assignments were pretty basic. But in week three, we got to go back to Nuke and have a lot of fun with assets that, when put together, make an awesome result.

The assets given to us were like a bunch of puzzle pieces that create this shot of a women in a spacesuit turning her head. We had some technical requirements we had to meet, but we also had a fair amount of creative freedom, so long as it felt realistic. Lets see what I was working with.


Many of these assets were provided to us but I decided to use some of my own in a few instances, like the suit textures. I used a metallic red to get the look of Samus's suit from the Metroid series. She also has orange on the shoulders, but I didn't need to find another texture, I just had to isolate the particular areas in nuke with a roto and apply a hue shift. This theme came up later when I made some changes to the HUD sequence.


This was probably my favorite part of the project because I made the HUD adjustments in After Effects and Photoshop and it was really fun to try and match the style of the original HUD, from the font of the numbers to the pulsing of the icons. Even getting all the adjustments in the right place was a challenge because you have to take into account some of the distortion of the UVs. Something I chose to do that really helped get me close was overlaying the UVs on the HUD and then seeing how they all line up in the render, I also drew them out flat on a piece of paper to get an idea of how much room I have to work with (this is a very quick and dirty way but I found it to be quite helpful). After all the new additions were in place I took it back to Nuke to see if they lined up. It took about two tries until I got all the pieces to line up but now it all looked good, and in not too much time.

All the things I've mentioned above don't necessarily have to happen at the beginning of the project, in fact I didn't do them until the near end, because of Nukes node based workflow, you can just replace assets and the result will update on the fly. You can work on the comp with proxy assets while others might still be working on different textures and HUDs, say for a shot where you have multiple factions of soldiers with different camos. This does have a limit though, because when it comes time to do color correction and getting everything to match a certain tone, you need the final color in there.

So let's see some of the parts of my Nuke node tree on this project:


On the left I have the original image sequence of the girl in the suit getting shuffled out into four different passes, Diffuse, Reflection, Refraction, and Specular (the main comp backdrop node extends pretty far down). To the right of that is the indirect illumination, a lighting effect that can be done in Maya, but would add a lot to render times. It can be faked in Nuke so long as you have the proper passes to work with.


Next to those I have the diffuse color which is the camo and carbon fiber that is directly visible by the eye. Remember earlier I mentioned changing the shoulder pads without needing a new texture, this is where I did it (I boxed the two nodes that helped do that).


The scratches that are visible around the suit are created using the same method as the textures but they are used as masks for the spec because in real life scratches would disrupt the specular highlights. In CG not doing this would give a "too perfect" look that could break the immersion of the film.


After the four main passes the visor finally gets merged in. Adjusting the mix in the merge node can give the effect of the visor switching on, which adds more life to the scene. Using Hue Shift nodes here can change the overall color of the visor, this is how I changed the reference from blue to green. You can choose to take this even further by rotoing certain areas to add more colors to the visor, exactly like I did with the shoulders.

Once you add in the background you can then get into the finalizing process. This is where you add color correction, white balancing, clamping values, lens dirt, lens distortion, chromatic aberrations, and other finalizing steps. This section will be different for everyone and it's a lot of tweaking until you find what's right for you, or the production you're working on. In this step I made the footage a bit too blurry somewhere, this is the main thing that stands out to me. When working on this step you want to get a variety of eyes looking at it and on a variety of monitors, because this is the final result people see. 

I learned so much with this project and in this class, and I'm still learning, because even though compositing is not my main focus, I see the importance of it in all disciplines, and value of having a good understanding of these skills.

I'll see you all next time with some animations I've been working on the past few weeks.

Thursday, December 18, 2014

Water Swords FX/Animation with Houdini FLIP and Maya

Software packages work best when you play to the strengths of each one. Houdini works well in giving realistic effects with more flexibility, and for animation I like to use Maya. That is why for my third Visual Effects 2 project I decided to use both, and learned a lot about going from one program to another, which can be a powerful workflow technique. I decided to recreate a move from the Pokemon Greninja which are his water swords.


There were a lot of challenges that came with this idea, similar to my last project, the concept is more based in fantasy then reality, so finding real life reference was a little tricky. I decided instead to look for reference of real swords and how they react to slicing through objects like water bottles and how the water trails along with the sword. This is all in addition to the in game reference of course.


The next step is in Maya, and that's animating the model. The model I got here and it came textured and rigged so I was able to get straight into the animation process. Though for this project the effect was the main focus, not the animation, being mainly an animator, it was very important to me that I include fundamental aspects like the slight anticipation for the charge up and follow through in the scarf (which is actually his tongue). These animation basics were visible in the game footage and I feel would detract from the effect if they were not there.

Animation is possible in Houdini but that is not the main focus of the program, thus it's a little less intuitive. Because of this though, I got to learn about a really cool feature of Maya and Houdini I didn't previously know about, and that is the Alembic file type (.abc). These files allow you to store all sorts of information including the model, its animation, and its UV data (and they export quickly too, about as fast as a playblast). Exporting as an Alembic can be found in the animation menu set under Pipeline Cache.


Once you have the file, it's as easy as going into the geo node in Houdini and importing it like you would an OBJ file. One thing to watch out for is when you export make sure you check the options you want to store, like the UV data, because to save on file size it wont do everything by default, resulting in the UVs not working in Houdini.

This was all for the character animation though, the sword animation was a bit different. I tried using the same process by animating the swords in Maya using parent constrains and exporting Alembics, but they wouldn't take the effect in Houdini when it came to adding the water. Instead I hand animated them in Houdini so there was no potential for them to goof up.

The effects I used in Houdini were the FLIP Tank and Emit Particle Fluid. FLIP is a great way to handle water in CG but as I kind of learned the hard way it is super expensive when it comes to sim time, so you may need to take some steps to ease the strain on the computer. One thing I did was size down the model by a lot. You can see in the Maya picture above that the model is much larger than the grid, I brought this way down in Houdini. A larger scale is better for making more realistic effects, but it's all about striking a balance between look and efficiency.

Now that the swords were emitting particles, I had to change a few things to have them emit correctly. Initially the water would just fall down while it emitted from the swords. To fix this I turned down the gravity, but now there was no trail on the swords, they moved like normal blue swords. Adding more substeps was the solution to that issue because now the motion would be assessed multiple times a frame. But of course that brought up the new problem of there now being a trail of particles that would not disappear. This was one of harder issues to troubleshoot because it not in the fliptank, flipsolver, or gravity nodes. This fix was found in the source node in the form of a Life Expectancy checkbox, which when checked lets you adjust after how many seconds the particles died.


The sound I added in After Effects and I got them from here (this pack includes all of Greninja's sounds, so go wild if you decide to try something yourself.)

Though I accomplished quite a bit with this project, I didn't get to do everything I had wanted. I had another move animated but wasn't able to give the effect in time, this was one of Greninja's taunts where he throws his hands up and shoots little water spouts from is palms, similar to a water fountain.


I learned a lot from this project about workflow optimization and Houdini FLIP specific features, and from the others throughout the month. Hopefully you might have also gotten something from my experiences, and that my Visual Effects projects kept you at least somewhat entertained. It was good fun (even when things wouldn't always work) and I look forward to learning more every step of the way.

I'll be putting up a compositing project soon that'll wrap up this Smash Bros theme I've been rolling with, so stay tuned for that.

Tuesday, December 16, 2014

Mario fireball with Houdini Pyro FX


For the second project of Visual Effects 2 we got to go back to Houdini to create a fire effect different than the one from week 1, which we used Maya for. This week I decided to create a fireball based off of the Mario fireball. This was the reference I used.


The biggest struggle was having to deal with the simulation times as well as finding out which settings translated over from Maya and where they could be found. The effect itself is called Smokeless Flame in Houdini. The setting I altered the most were the ones under the Shape tab in the AutoDopNetwork (Dissipation, Disturbance, Turbulence, and Confinement).

I changed the color of the fire in the shop network of the smokeless flame. Under the various color tabs, there is an artistic tab. This is where I went specifically because this is the ramp you want to change that directly effects the color how you would expect it (Physical is based on the temperature and can take quite sometime, especially if you are not trying to recreate something 1:1 in the real world. Adjusting the color was particularly fun because the flame was so stylized, it was not as uniform as a normal flame. It jumped from red, to white, to orange, back to white, and so on, because of this I made a lot of color shifts really close to each other on the artistic color ramp.


Speaking of stylized, this was not only one of the coolest features of this project, but also one of the biggest challenges because it was harder to find real life reference that accurately represented the Mario fireball. After searching I did find one reasonable reference for shape and motion, and that was a flaming arrow. While still on the bow, the flaming tip was the closest thing to the shape I could think of.

For the Mario model, I posed him in Maya to match the reference. I had to mix and match face shapes by deleting geometry in the mesh because the blend shapes did not work, this process was quite interesting and almost felt like a puzzle because I had to use the happy eyes and the angry mouth to get the look of the reference.

Another big part was the bringing in the textures into Houdini, in comparison to Maya, Houdini’s process seems like there are a bit more hoops to jump through because I had to export different parts of my mesh as a piece because those pieces shared a texture, instead of bringing in the whole mesh in at once. Though through the shop network I was finally able to apply the textures onto the geometry.

After rendering in Houdini, I switched over to Nuke to make some final adjustments. While doing test renders in Houdini, I kept the brightness below 1, because 1 would always yield a blown out image of the fire. I did this in post because I did not want to render the whole video with a lowered brightness because Mario would have looked too dark. Had I rendered the effect and the model separately, the reflections in Mario's eyes would be lost. So for me the best method was to roto out Mario in Nuke and only apply the lower brightness to the fire. I'm sure there are many ways to go about getting to the same result, just like how you can make a fire in Maya or Houdini, and that's what makes these programs and this industry so much fun.

Moment of truth, which program do I prefer for fire. It would have to be Maya, and thats probably a bit bias because I've spent more time with the program, but if you want to take projects further with animation and textures and sound, Maya seems to do all that stuff much more efficiently than Houdini. Though I will say for my next project, I also used Houdini, and I learned a lot more about animation and texturing in the program so I can't wait to share that with you all.