Sunday, 6 December 2015

Short film on CGBros

LONG TIME NO POST!!

Yes it has been a while, been out doing things and not getting things done in the end, learning C++ and not learning it at all at the same time, real frustrating stuff.

But hey! Remember I was talking about that final year movie I was part of a year back? No? In short, I was in my final year in Singapore Polytechnic and doing a final film for a year. I was in the technical department (I called it that), and ran the rigs and part of the simulations. It was fun working with  the others in their own specialised departments, but everyone will say their own work was the most fun. All in all, that film we made, was sent to multiple competitions. I will really have to dig them out since there are so many, nominated for some, won awards for some.

However, with all that said, it does not bring in much satisfaction, not until recently. Our Director (team leader), I did not know what he did or what he did not do, but he got our short film up on The CGBros youtube channel. What really moves me the most was that people connected with the film, and felt for the characters we created. There were so many encouraging comments and it was just... Truely amazing. I can say I am really proud of our work, how much hours we pooled into the film and made it such a moving and successful one.

Ok, that is enough words for the day, let our work speak for itself and...

Let it roll:


I just want to thank all those who left their comments in the comments section, those who really enjoyed the show as much as I like working on it. I seriously hope I can be part of a production in the future, whenever it may be.

Wednesday, 14 May 2014

Tips & Tricks related to Facial Modeling for Animated Productions by Sergi Caballer Garcia

It has been a long while since I have last posted, rest assured for those who are following me, I always keep my blogger page in one of my tabs. The blog will never die, unless I close it or declare it. At the same time, I will be serving the Singapore army soon, so that might or might not be 2 years worth of inactivity. Check back to see any surprises!

Now, I come to you today to offer you some great demo and teachings from Sergi Caballer Garcia. The article was posted on CGMeetup, here, I merely picked it up on my Facebook feed and thought it was great information to share with the good people here.

Picture taken from CGMeetup.com
All of this tips and tricks can be used on any 3D modelling software, as Sergi said, and I quote, "all of the steps and methods showed on these timelapses are the same ones you’ll find in other packages, such as split, insertEdgeLoop, extrude, merge, sculpt, etc.". 

The whole article will touch on topics like workflow, topology, deformations, appeal, hair modeling and all the little tricks you can pick up to improve on any models. Sergi also touches on the Sculpt Geometry tool, not a lot of modellers that graduated from my school that I know uses this tool for creating organic models. I tried it once on an inorganic blanket model (using a mouse), well, I guess I like the control the mouse gives as compared to the pressure that varies on the tablet.

Well, for the rest, the article is pretty self explanatory.

You can check out Sergi Caballer Garcia's website here, it includes a lot of works he had done before, deeply inspiring and impressive too.
http://www.sergicaballer.com/home/
Picture taken from Sergicaballer.com
Well that is it for today then, what a long time for an update.

Friday, 25 April 2014

Dynamic Hair Tutorial Part 4 (Extra, controlling the hair with FK joints)

Welcome to the third part of the dynamic hair tutorial, by me, if you have not checked out part one, two or three of the tutorial, check it out here: PART 1, PART 2, PART 3.

Quick overview of parts 1 thru 3:
made mesh for rig
made joint system to control mesh
made dynamic curves to control the joints
made hairSystem drive the dynamic curves
made collision spheres for the hair curves
create a simple control (NURBS curve) system to control the head and collision spheres

As I said in Part 3, I am going to dedicate this post to the creation of the FK control for the dynamic hair (at least I will show you how I did it).

This can get kind of confusing and technical, if I left it there for a week or two I might get rusty with the details, thus breaking the rig. So I am doing this for whoever wants to learn from me and for me to remember and also to get critics on how can I improve this (or another way to get this done).

Exposition:
It started out as a theory as I followed the control hierarchy (who controls who) when a friend of mine asked for some help with dynamic hair. What started off on the whiteboard became a reality in Maya itself, and I wanted to share this knowledge with those who wanted to learn. Now that the exposition is done, we shall continue.

Next, a few things to take note about my naming conventions because there seem to be a lot of confusion in explaining things with the names (it even confuses me too).

hairSystem = hairSystem

input of dynamic nurbsCurve = inputCurves

 output dynamic nurbsCurve (the ones that move) = outputCurves

dynamically driven joints = dynHairJ_01 (numbers vary)

groups = denoted with a _GRP

groups to be constrained = PARENT_GRP or ZERO_GRP
(ran out of vocabulary, difference will be explained later)

controls = denoted with a _CTRL

skinned joints = denoted with a _skinned

Here is a picture that I made in Photoshop (should have done it in Illustrator) to cover the whole system, it might be useful to those who are more of a visual learner.


You might find something peculiar about my own setup as I continue the tutorial, like there is a missing group in this diagram. Yes, there is a group that is missing from this diagram, which is the CTRL_GRP, it is mainly a group tat I place above my controls (CTRL) to orientate the manipulator of the controls (CTRL) in the direction of itself.

Tutorial here

As explained, doing the group thing keeps values off active controller curves while keeping them in the correct orientation. I did not want to put them inside the flow chart because that will clog up the thing.

With the overall flow chart of the system done, I shall be talking about it in words.
(You can skip this section if you want)


1. You have your hair system here, the dynamic hair is already simulated.
2. The moving hair curve will be controlling the hair joints through the IK Spline.
3. The dynamic hair joints will be controlling the hair groups.
4. The hair groups contain another group which will be controlled by the upper control through a parent constraint.
5. The translations and rotation values will displace and turn the controller that will control the skinned joint that is the child of it.
6. The skinned joint is skinned to the hair mesh and cause the hair to move as well.


OK, now with the theory of it done, I shall proceed with the step by step tutorial of the setup.

First (you would have noticed I do not continue with second or third), get your file ready, either your own file or the file I provided on here:

https://www.dropbox.com/s/yymdtuutf22w2od/Tut0102.ma
I edited the file a little to match the names of the dynamic joints.
Now that you have your file open, create an overlaying/overlapping joint chain of the dynamic chain that you have.



Then next would be the controls, you might want to go through the tutorial about the orienting of the controls.


This part you can go either way, either re-skin the mesh to the overlapping joints and the start of the branch to the dynamic joints or re-skin later after the connections are done, where you have to skin selected joints.

I personally prefer the second way since I like to get my rigs fail proof before skinning anything. I am going to show the skin first and the skin last parts as their respective sections.
(special sections will "*")

1. Detach skin from the mesh.


*1.5. (If you want to skin first) Skin the needed joints.*

 This shows all the joints that I binded.

2. Unparent the joints of the overlapping joint chain (the one in blue)


3. Follow the flow chart and arrange the groups that controls the controllers as they are on the right side of the flow chart.


4. Constraint the the respective stuff according to the flow chart (right side of flow chart first)


5. Constraint the the respective stuff according to the flow chart (left side of flow chart now)

Yep, it is getting larger and larger.
5 Optional Step. Create an attribute to hide all the unneeded stuff to be touched on.

Key the visibility of the items.

5.5. (If you chose to skin the mesh last), skin the mesh.

Though it may look like this, it is totally fine, unless you have other plans.

6. Enjoy your new dynamic hair with FK controls that can control the hair, after the simulation.



I actually had to enlarge (scale) the controllers because they were too small and hidden inside my hair mesh.

https://www.dropbox.com/s/kroicmkcc82wfd7/Tut0102Final.ma
Final file for your reference.
 Please be reminded that this file is for learning purposes and is not to be abused in any matter, if you want to share or improve on it, just a credit will do, thanks.

Hope you really enjoyed this ride with me through the tutorial, I hope that we all learn something from it. That is all for the Hair Dynamic tutorial folks!

Sunday, 9 March 2014

Demoreel~ (21st Feb 2014)

This is my demoreel, updated to 21st of February 2014.
Included are a character from my final year film and some shots from it too.

Vimeo:


Youtube:


QR codes:

Thursday, 27 February 2014

Back again, loads of useful info on some rigging stuff.

It has been like what? 1 month? Yeah, I have been very late with my updates, but not to fear, I come here with something to show. This whole month have been flooded with a lot of simulations and cloth and rendering. Our final film is nearing its submission date and we still have animation unapproved. The best we can do is to make do with what we had and render everything out. Most of the shots are completed but we still have a minority of those which are of substandard quality. 

Rendering was taking a toll since we had to run around opening files and rendering them in school (nope we do not have a render farm, yet[I hope]). Some shots we will split the layers to be rendered in different computers. By the way, the rendering was not headed by me, but the lighting, composting and rendering head, I do not know if I should put his name here, still, blog posts could be updated. It was hectic at first because of the sudden flood in the amount of shots we have to render, however we managed to keep our calm and manage everything, all in a notebook. In the end, bulk shots were rendered overnight and renders are done the next morning (the day of submission).

Well, either way, hectic time is over and we get to polish the final film until the Graduation show, on 13-14 of March Singapore time. This will mean more resim for me and will probably take up a chunk of my time, although I can be more relaxed about the working hours in school.

UPDATE on Dynamic Hair Tutorial Part 4:
Nope, I have not gotten around to creating a video for it, yet, although the main bulk of the tutorial is done. Hope I still can finish it if time permits.

Other information:



The video touches on some key items like node based rigging, included in Autodesk Maya 2013 and onwards (presented in the video is Maya 2014). It also touches on using some of the provided nodes to rig for example the hips of the character to be always in the center of both feet, instead of using scripts to quicken the evaluations.

Maya Set Driven Key Tutorial by Daryl Obert


This video touches on SDK (set driven keys), its basics and its function and tweak-ability using the graph editor. Daryl Obert explained it pretty clear and demonstrated the use of SDKs very well.



 This video also by Daryl Obert, will talk about nParticles in Maya and the fields of nParticles. This video gives an insight to the power of nParticles simulation inside Maya itself. It is a great video if one is interested in effects inside of Maya itself.

Yeap, that is all for today then. I wanted to say that Autodesk really outdid themselves, although each version of Maya has its own bugs and glitches, the newer one is considerably better than its own predecessor. It is great that Autodesk started to build in the node based system interface in Maya 2013 and its future versions. That allows better organisation and quicker workflow, whether one is rigging or doing animations or even effects.

Wednesday, 29 January 2014

Been really busy lately~ V2.0

Been really busy lately V2.0

Yeap, that kind of explains everything, I have been trying to find time to make the video on the Part 4 of the dynamic hair tutorial. However, I have been assigned (pre assigned but now the animation is done, I have to do the effects), more work to do. That left me little time to rest and to do the video and even update the blog.

At the same time, I have to prepare the materials that are going to be used in the Singapore Polytechnic's Graduation showcase. I linked my bio on the website to this blog, and most probably going to link it on my name card too. I have to prepare my demoreel too, so watch out for that.

Well, I have to get back to work now, this post looks like a quickie post, but I cannot help it, it is the truth.

BACK TO WORK!!

Monday, 13 January 2014

Been really busy lately~

OK, first and foremost, I like to apologise for those of you who are awaiting on my 4th part of the dynamic hair tutorial (whoever is out there~), I have been really busy lately.

Busy with what you ask, well, I have been busy in updating the blog's pictures; mainly the pictures on the tutorials. Since I seem to be having a lot of images now, I thought of organising them in my storage device. It started out as a very messy process since all the images are everywhere. I had also renamed the pictures for a better tracking of them and organisation. I changed the tutorial files' names too and created an icon for the download.

Also, it seems as if i went crazy with my watermark, putting them in almost all the pictures in my recent tutorial. I thought it was a good idea to stamp it with my mark, like a signature. I took the blue from the blog itself and made the designs of the icons and signature myself.

Ah! At the same time, if you are a faithful follower of my blog (or if you are new), I would like to say that my blog is intended for desktop/laptop usage on the web browser and not intended to be used on phones. I did not setup the mobile version of the blog since the images are sometimes quite big and it is meant to be like that because sometimes the words are very small and there are a lot of them (example: outliner)

That is all for today, and yes, I am still working on the Part 4 of the tutorial, stay tuned if you are following me.