Sunday, November 07, 2010

Hulkey Muscle Rig WIP 1

Done with the back muscles. Still some smoothing to be done, but just want to put these 2 side by side, with & without muscles to see the effects.


Sunday, October 10, 2010

Hulkey Muscle Flex Test

Decided to play around with Hulkey again. Always wanted to play around with muscles more so decided to put some into him to see how much more can I push the deformations.

Built the skeletal structure using NURBS spheres. Similar to the one in Autodesk Hyper-Realistic series. Played around with rigging up the scapulas, and pretty happy with the results. Managed to achieve a little "sliding around the rib-cage" effect. I will put up a video on that later.

Muscles built using a simple muscle plugin with 4 attachment points and volume preservation.

This is the test to make sure no muscles flip during motion, before I even start skinning them:


Next up, the skin deformation itself.

Monday, May 24, 2010

Nice Hulkey Pose!

Really love this pose by Edward. AWESOME!




















Also revealed some deformations to be fixed when I looked at the scene. :P

Sunday, May 23, 2010

Hulkey Walk Cycle Test

A test by my animator friend. Thanks Barry!


Thursday, May 20, 2010

Hulkey's all done!

Of course, still pending feedback and comments from my animator friends. Probably some bug requests as well haha.

Added various deformations using the poseDeformer plugin, still my trusted tool with regards to shape fixes. Shapes are sculpted mostly, but I did setup a separate rig with Maya Muscle skin system to provide the base of deformations. Took a short time to setup, but got really good results with it. Using that, shapes are duplicated off the geometry, and used as target shapes in the poseDeformer nodes. Simple and easy, yet the results are great and the rig still remained fast enough for Animation.

I'll probably compile a whole list of Hulkey's features as well as demos, but for now, I'll just leave you with a fun pose of him. :)


Sunday, May 16, 2010

Hulkey Facial Rig Done!

Finally done with the facial blendshapes, hooking up to the facial GUI, and added the on-face controls for additional animation tweaks. Rig's getting slower though. Will spend some time to optimize it further, IF I have that time haha...

Next up, deformation tweaks for the body. GRRRRR!

Saturday, May 08, 2010

Hulkey Anim Rig Done!

Completed all I wanted to do with Hulkey's animation rig. Ability to do no-pop IK FK switching and dynamic parenting is now implemented as a right-click pop-up menu instead of a separate character UI like I did for the beast.

I will be doing some feature demos later, but for now, here's the basic skinning deformation tests for Hulkey. You can click on youtube directly to see a higher res version. I believe the key to good deformations always start with good basic skinning before you can add on any other deformation features.


Thursday, May 06, 2010

Hulkey Anim Rig WIP

Basic skinning all done. Still need to add some space switching elements before handing it off to any animators who might wanna try playing with it.


Wednesday, April 21, 2010

Hulkey Body Modeling Done!

Think I will call this done for now. Don't wanna go overly detailed too since Hulkey is supposed to be cartoony. Sculpted his arms, legs and torso to define the shape and form of the musculature of the body without adding too much details. Now rigging can start! :)

Sunday, April 18, 2010

Hulkey Body Modeling WIP 2

Defined the shoulders and back more now. Added in the actual head now plus the base mesh of the hands. Played around with the size of the head and I find that this looks best. What do you think?

Next will be adding the toes and giving the rest of the body more definition.

Hulk Rage

I just thought this looks amazing and wanna share:

Wednesday, April 14, 2010

Hulkey Body Modeling WIP 1

Super busy recently at work. Only managed to scrap a little time at night. Body so far...


Monday, April 12, 2010

Maya Python - smSoftIK plugin node

Finally had my first try at Maya Python API. Surprisingly (because I'm so used to the C++ way), implementing plugins using Maya Python API is really fast and easy. Took some time to get used to it, but really loving it now. :)

Demo of the softIK plugin node I created over the weekend:
  • Reduce the "popping" of IK rigs when the joint chain straightens
  • Ability to adjust and animate the soft limit
  • AutoStretchiness already built into the plugin node, thus saving a bunch of multiplyDivide, plusMinusAverage or condition nodes in the rig

All thanks to the theory shared by Andy Nicholas!
http://www.xsi-blog.com/archives/109

Saturday, April 10, 2010

Maya Python - Getting Points & Normals from MItGeometry all at once

From Adam Mechtley in Maya-Python mailing list:

Yes—it stores the result in the object you pass as a parameter, since it is passed by reference. As per my example:

meshIter0 = OpenMaya.MItGeometry(dag1)

points = OpenMaya.MPointArray()

meshIter0.allPositions(points, ObjectSpace)

# all the points are now stored in the points object

normals = OpenMaya.MVectorArray()

meshIter1.getNormals(normals, ObjectSpace)

# all the normals are now stored in the normals object

Tuesday, April 06, 2010

Hulkey Face Modeling Done!

Took a longer time than expected. After evaluating it further, I had to rework the face topology. Finally done with gums, teeth & hair as well. Gonna stick to this resolution for now to see how much deformation I can achieve before deciding to upRes it (which I'm guessing I probably will need to).











Just a note on my workflow. I am still planning to go with the joint-based facial setup, but first, I will be modeling all the defined shapes, and then match up the performance of the joint-based facial setup to achieve the modeled shapes. This is to emulate the actual production situation whereby all the facial setups of the character have to be "in-model", that is, approved and defined by the director (That is the reason why most production facial setups are still blendshape-based). To summarise:
  1. Joint-based facial setup to simulate "skin-sliding" effect of the controls
  2. Model actual blendshape targets to define the look and feel of the character
  3. Make use of the blendshape targets as additional corrective shapes of the facial setup

Next step: Rough blocking of the body. Just wanted to roughly define the shape of the shoulders and neck first to lock down my face geometry.

Thursday, March 25, 2010

Hulkey Face Modeling WIP 3














Left to right: Smoothed version, Base Mesh

Face more or less done. Gonna model the ears, inside of the mouth and hair now. Probably going to do some facial rigging tests to test the topology before moving on to the body.

Monday, March 22, 2010

Hulkey Face Modeling WIP 2

Defined basic edge loop flow in the face.

Thursday, March 18, 2010

Hulkey Face Modeling WIP 1

Just defined the basic shape of the head.


Some Maya Python Tips & Tricks

Some useful information I found online. Thanks to all these helpful people on the net! ;)

From http://riggerman.animationblogspot.com
Ryan Trowbridge has pointed out a faster way of computing the deformations:
Most (if not all) of the devkit examples set the points positions one by one while iterating the mesh points, but this method is slower and since our deformation isn’t neighbor dependent or anything like that, we can set the points position all at once using MItGeometry.allPositions ().
In his own words: “The problem with this is that when the node goes to deform, it is iterating through x amount of vertices and each time it iterates it updates the scene using setPosition() So a 10,000 vertice mesh is updating the scene 10,000 times (…) The reason this one is faster is it get all the vertices and sets all the vertices at once“.

Well, to do this we need to create a MPointArray object to store the information we need. This line goes before the iteration loop:

allPoints = OpenMaya.MPointArray()

Now, inside the loop we can replace the setPosition line for this one:

allPoints.append(point+normalVec)

This will insert each point value in the point array object, so we can pass on this big list all at once to the final command, that goes right outside the loop:

geomIter.setAllPositions(allPoints)



Maya API docs demystified for Python Users

Wednesday, March 17, 2010

Final Hulkey Design

Think this is more or less what I want now, thanks to comments from all my friends:









Tweaked the proportions a little: Made the head smaller to make the body feel larger, less blocky legs, maintained the blocky hands and feet, a little more curvy now instead of the totally box-like figure before, and legs are now shorter compared to the body.

Next up, face modeling.

Sunday, March 14, 2010

Still exploring Hulkey designs...

Hmmm due to comments from a friend, still continuing to explore the shape and proportion of Hulkey. Comment was that the one I had before is too blocky, which is kinda true as well.

If I wanna go cartoony, might as well try and experiment more. Here goes:





























Face model sheet with some test expressions

Somehow Hulkey doesn't look too good with any other expressions except being angry. :)


Hulkey body model sheet up


























































Not very well done, but at least something to start with. :)

Friday, March 12, 2010

Hulkey Rig Wishlist

Body Rig
  • IK/FK seamless switching (context menu?)
  • Stretchy Soft IK (python plugin or rig)
  • Multi-purpose math node (python plugin)
  • Volume Preservation
  • - Muscle plugin/joints
  • - Skin wrap deformer (python plugin)
  • > One skin wrap to multiple surfaces (NURBS or polygons)
  • > Paintable weights
  • - Pose Space Deformations
  • > Rewrite poseReader in python
  • > Rewrite PSD in python?
  • "Sculpable" layered body deformations
  • Simple secondary animation on hair using "delay" python node
  • Cloth sim on pants
Facial Rig
  • Adaptable Facial Rigging tool
  • Pseudo "skin-sliding" joint-driven facial rig that adheres to director-approved shapes/look
  • Facial GUI in Maya
  • Sticky lips
  • Take note of necessary controls under the eyes for more facial movement
  • Pupil dilation
  • Ability to shape eyelids (3 joints to control surface of lids?)
  • On-surface controls? Direct face manipulation without controls?
  • Teeth translation controls
  • Remember to have upper lips down and lower lips up instead of just lips in shape
  • "Sculpable" layered facial deformations
  • "vert snap" deformer node to stick overall body to the face alone
Tools
  • Rewrite AutoRig tool with interface (Mel or pyQT)
  • Customizable Character UI (Mel/pyQT/HTML)

Fresh Start - Hulkey

Been a while since I update this. Wanna start a new project again: Hulkey

First, some links to facial modeling/edge loops: