<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:series="http://unfoldingneurons.com/"
	>

<channel>
	<title>Rigmarole &#187; Character Rigging</title>
	<atom:link href="http://chrislesage.com/category/character-rigging/feed/" rel="self" type="application/rss+xml" />
	<link>http://chrislesage.com</link>
	<description>Tech Art, Character Rigging &#38; 3D Animation</description>
	<lastBuildDate>Mon, 14 May 2012 16:52:38 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>How To Stop Collapsing Vertices in Maya Post Normalization</title>
		<link>http://chrislesage.com/character-rigging/how-to-stop-collapsing-vertices-in-maya-post-normalization/</link>
		<comments>http://chrislesage.com/character-rigging/how-to-stop-collapsing-vertices-in-maya-post-normalization/#comments</comments>
		<pubDate>Mon, 14 May 2012 16:52:38 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Character Rigging]]></category>
		<category><![CDATA[Tip of the Day]]></category>
		<category><![CDATA[character rigging]]></category>
		<category><![CDATA[maya]]></category>
		<category><![CDATA[rig techniques]]></category>
		<category><![CDATA[rigtip]]></category>
		<category><![CDATA[skinning]]></category>

		<guid isPermaLink="false">http://chrislesage.com/?p=293</guid>
		<description><![CDATA[So this is annoying. You are trying to paint weights in Maya using Post Normalization and a bunch of your vertices are collapsing to the origin! What&#8217;s going on!? Don&#8217;t fret. There is a simple explanation and an easy fix for this. But first, let&#8217;s look at what Post skinning is doing: &#8220;What is this [...]]]></description>
			<content:encoded><![CDATA[<p></p><p><img src="http://chrislesage.com/wp-content/uploads/2012/05/collapsed_vertices.jpg" alt="" title="collapsed skin weight vertices" width="550" height="311" class="alignnone size-full wp-image-295" /><br />
So this is annoying. You are trying to paint weights in Maya using Post Normalization and a bunch of your vertices are collapsing to the origin! <b>What&#8217;s going on!?</b></p>
<p>Don&#8217;t fret. There is a simple explanation and an easy fix for this. But first, let&#8217;s look at what Post skinning is doing:</p>
<h3>&#8220;What is this Post Normalization skinning all about?&#8221;</h3>
<p>When using Post Normalization skinning for the first time, it can be a bit tricky to figure out how things are working.</p>
<p>Basically Maya is taking the total of all the weights and then normalizing it to 1.0. With classic interactive skinning this is done <em>while you paint</em>, which means if you paint on <strong>Influence A</strong>, Maya automatically steals weights away from <strong>Influence B</strong> and <strong>Influence C</strong>. If you are subtracting weights, it automatically tries to add weights to other joints. This can be very buggy and throw weights unpredictably.</p>
<p>With Post Normalization, Maya is keeping all the weights you&#8217;ve painted and doing this calculation on the fly. It stores the values of your weights <b>without changing any of the others</b>. You can paint all the way up to 1.0 on Influence A, Influence B and Influence C. Maya averages it out and the final effect is 0.333 on all 3 influences, but the weights are still painted to 1.0.</p>
<p>This can be a great way to think of your weights as separate layers. <b>It&#8217;s like a bunch of overlapping venn diagrams</b>.</p>
<h3>&#8220;So what is happening in that ugly image?&#8221;</h3>
<p>What you are seeing is essentially a divide-by-zero error.</p>
<p>When you first encounter these collapsing vertices, you might think it is a bug and dismiss Post Normalization as garbage or confusing. But it has a simple explanation. Since Maya isn&#8217;t automatically changing any weights, if you can paint all the weights to 1, you can also paint them all to 0. Maya is trying to calculate the totals of the weights but when there are no weights to divvy up, it simply can&#8217;t make the calculation.</p>
<h3>How To Fix It</h3>
<p>Luckily there is an easy fix. What I do is create an extra joint called &#8220;base_influence&#8221; and place it anywhere in the middle of my character or at origin.</p>
<p>Next, flood the entire character geometry with 0.05 weight on &#8220;base_influence&#8221;. Now you can paint the rest of your joints freely, but this one will always hold a tiny little bit of weight to prevent collapsing.</p>
<p>Lastly, don&#8217;t forget to constrain this &#8220;base_influence&#8221; to your characters root joint or root controller so it follows when you move the character.</p>
<h3>&#8220;Why use it if it is so confusing?&#8221;</h3>
<p>It took me a while to get used to, but I use Post Normalization skinning all the time now. You get to think in layers. Smoothing and subtracting weights is bug-free. You just have to get used to the fact that if you are painting Influence A, you have to manually paint away any overlapping influence on Influence B, or you will never reach full influence.</p>
<h3>Another Alternative</h3>
<p>I haven&#8217;t had time to test this tool out yet. If you are interested in advanced skinning techniques and painting in layers, this sounds like a promising tool worth checking out: <a href = "http://www.ngskintools.com/">ngSkin Tools</a> developed by Viktoras Makauskas.</p>
<p>It sounds like Viktoras is developing something which solves a lot of the common frustrations with a Maya skinning workflow. It also uses regular skinning nodes, so it can also be a solution to video game riggers if Post Normalization isn&#8217;t an option for your engine.</p>
<p>If you have any skinning tricks and techniques, please let me know in the comments or share your wisdom on <a href="http://twitter.com/chrislesage">Twitter</a> with the #rigtip hashtag.</p>
]]></content:encoded>
			<wfw:commentRss>http://chrislesage.com/character-rigging/how-to-stop-collapsing-vertices-in-maya-post-normalization/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using a Unit Vector to Make a Cylindrical Foot Roll</title>
		<link>http://chrislesage.com/character-rigging/using-a-unit-vector-to-make-a-cylindrical-foot-roll/</link>
		<comments>http://chrislesage.com/character-rigging/using-a-unit-vector-to-make-a-cylindrical-foot-roll/#comments</comments>
		<pubDate>Tue, 03 Apr 2012 02:42:25 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Character Rigging]]></category>
		<category><![CDATA[character rigging]]></category>
		<category><![CDATA[maya]]></category>
		<category><![CDATA[rig techniques]]></category>
		<category><![CDATA[rigtip]]></category>
		<category><![CDATA[vector math]]></category>

		<guid isPermaLink="false">http://chrislesage.com/?p=259</guid>
		<description><![CDATA[Here is a tutorial that will demonstrate how to use a Unit Vector to animate the pivot point of a cylinder so that the cylinder will roll on its bottom edge in any direction. I&#8217;m using this technique for the feet of my Mini Mammoth rig, but it could also be useful for robot feet, [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>Here is a tutorial that will demonstrate how to use a Unit Vector to animate the pivot point of a cylinder so that the cylinder will roll on its bottom edge in any direction. I&#8217;m using this technique for the feet of my <a href="http://chrislesage.com/series/making-of-mini-mammoth/">Mini Mammoth rig</a>, but it could also be useful for robot feet, or adapted into different shapes for a variety of uses.</p>
<p>Here is a video of the foot rolling effect we are going to create:<br />
<iframe width="560" height="315" src="http://www.youtube.com/embed/aSecO4KFjNw" frameborder="0" allowfullscreen></iframe></p>
<p><b>Note: Be aware that my expression syntax may or may not play nicely with WordPress, depending on how you are viewing this post. I have included a Maya 2012 scene file at the bottom of this post so you can download it and follow along. The final expression is included as a text file.</b></p>
<p><b>Notes about this tutorial:</b></p>
<ul>
<li>I am using locators as vectors so we can see what is going on. Once we are done prototyping this as an expression we can transform it into node connections that work directly with the attribute data rather than a daisy-chain of connected locators. This tutorial will just show the expression so you can get the idea.</li>
<li>The order of the lines in your expression matters. Specifically, the foot&#8217;s rotation attributes will have to be animated before the pivots are translated in the expression. Otherwise I&#8217;ve found that you will sometimes get strange results. If your animation seems to jump or skip, keep this in mind.</li>
<li>For simplicity, the way I build this ignores rotation in Y. Instead when I go to integrate this into a real rig, I&#8217;ll group this entire foot roll rig underneath a parent node and use that to rotate in Y in global space.</li>
<li>The next step you could take would be to project the vector onto a curve using a closestPoint constraint. Shape the curve to match your character&#8217;s foot, and now you can have a foot roll in any shape you want!</li>
</ul>
<h3>So let&#8217;s get started</h3>
<p>1. Create a cylinder with a radius of 5 and move it up so that it rests at the ground plane.<br />
2. Create a joint at the bottom of the cylinder. Group the joint and call the group &#8220;foot_pivot&#8221;. The group will be controlled by the expression. Skin the cylinder to the joint.<br />
3. Create a &#8220;foot_roll&#8221; controller. This can be a locator or a curve icon or whatever. This is the controller that will rotate the foot.</p>
<p><img src="http://chrislesage.com/wp-content/uploads/2012/04/cylinder_roll_step1-3.jpg" alt="" title="cylinder_roll_step1-3" width="506" height="604" class="alignnone size-full wp-image-270" /></p>
<p>4. Create two locators. Name the first one &#8220;vector1&#8243; and the second one &#8220;normalized_vector1&#8243;.</p>
<p>5. Select the &#8220;foot_pivot&#8221; group. Go into Edit -> Channel Control and in the Nonkeyable Hidden column make the following visible and keyable:<br />
Rotate Pivot X<br />
Rotate Pivot Y<br />
Rotate Pivot Z<br />
Rotate Pivot Translate X<br />
Rotate Pivot Translate Y<br />
Rotate Pivot Translate Z</p>
<p><img src="http://chrislesage.com/wp-content/uploads/2012/03/cylinder_roll_step5.jpg" alt="" title="cylinder_roll_step5" width="523" height="451" class="alignnone size-full wp-image-264" /></p>
<p>6. The first step is to turn the rotation of the &#8220;foot_roll&#8221; control into XZ translation which we will feed into the pivot point of &#8220;foot_pivot&#8221;.<br />
<code><br />
vector1.translateX = -foot_pivot.rotateZ;<br />
vector1.translateZ = foot_pivot.rotateX;<br />
// (note the negative value. This may change for you depending on your controllers orientation.)<br />
</code></p>
<p><img src="http://chrislesage.com/wp-content/uploads/2012/03/anim_vector.gif" alt="" title="anim_vector" width="480" height="557" class="alignnone size-full wp-image-261" /></p>
<p>When you rotate the &#8220;foot_roll&#8221; now &#8220;vector1&#8243; will travel along the ground plane pointing in the direction of the rotation. But the distance from the foot is wrong and it is not in a circular shape. So&#8230;</p>
<p>7. We arrive at the meat of this entire tutorial. To get a useful pivot we need to create a <b>Unit Vector</b> or a normalized vector which will always have the same length of 1 no matter which direction it is pointing. If you aren&#8217;t familiar with vectors, this would be the same as having a 1-bone IK chain. As you move the effector around, the chain points in the correct direction, but stays the same length. However, if you aren&#8217;t familiar with vectors, I highly suggest learning about them. They will open up a new world of ideas for you as a rigger or TD. <a href = "http://www.rtrowbridge.com/blog/2012/03/442/">http://www.rtrowbridge.com/blog/2012/03/442/</a></p>
<p><img src="http://chrislesage.com/wp-content/uploads/2012/03/unit_vectors_ahoy.jpg" alt="" title="unit_vectors_ahoy" width="480" height="557" class="alignnone size-full wp-image-265" /></p>
<p>We&#8217;ll use the built-in unit() vector function in the Expression Editor. Later if you want to rebuild it with nodes, you can get the same functionality with the vectorProduct node and turning &#8220;Normalize output&#8221; to ON.</p>
<p><code><br />
vector $norm = unit(&lt;&lt;vector1.translateX,vector1.translateY,vector1.translateZ&gt;&gt;);<br />
</code></p>
<p>8. Now we have a vector, so let&#8217;s drive the &#8220;normalized_vector&#8221; locator so we can see what it is doing. (We don&#8217;t need to use the Y-component.)<br />
<code><br />
normalized_vector1.translateX = $norm.x<br />
normalized_vector1.translateZ = $norm.z<br />
</code></p>
<p>9. Ok, but now the problem is that our foot radius is 5 units and the Unit Vector is only 1 unit long. So let&#8217;s create a variable to multiply the unit vector which will be easy to edit if we need to use it on different sized cylinders. We add the following to the expression:<br />
<code><br />
float $radius = 5.0;</p>
<p>normalized_vector1.translateX = $norm.x * $radius;<br />
normalized_vector1.translateZ = $norm.z * $radius;<br />
</code></p>
<p>Now the &#8220;normalized_vector1&#8243; should be travelling in a circle around our foot as we rotate &#8220;foot_roll&#8221;.</p>
<p>10. Now this normalized vector is just for visualization or debugging purposes. Let&#8217;s connect that straight into the rotatePivotX and rotatePivotZ attributes of the &#8220;foot_pivot&#8221;. (the group that parents the foot joint.)<br />
<code><br />
foot_pivot.rotatePivotX = $norm.x * $radius;<br />
foot_pivot.rotatePivotZ = $norm.z * $radius;<br />
</code></p>
<p>11. And finally, rotate the &#8220;foot_pivot&#8221;. (Note that this will go at the top of the expression. Putting it at the bottom caused erratic behaviour for me.)<br />
<code><br />
foot_pivot.rotateX = foot_roll.rotateX;<br />
foot_pivot.rotateY = 0;<br />
foot_pivot.rotateZ = foot_roll.rotateZ;<br />
</code></p>
<h3>Bring it all together and this is our final expression:</h3>
<p><code><br />
// Rotate the pivot_rotator to match the controller<br />
foot_pivot.rotateX = foot_roll.rotateX;<br />
foot_pivot.rotateY = 0;<br />
foot_pivot.rotateZ = foot_roll.rotateZ;<br />
float $radius = 5.0;<br />
// Turn the controller rotation into XZ translation<br />
vector1.translateX = -foot_pivot.rotateZ;<br />
vector1.translateZ = foot_pivot.rotateX;<br />
// Normalize the vector<br />
vector $norm = unit(&lt;&lt;vector1.translateX,vector1.translateY,vector1.translateZ&gt;&gt;);<br />
// Use the normalized coordinates to set the position of norm_vector<br />
normalized_vector1.translateX = $norm.x * $radius;<br />
normalized_vector1.translateZ = $norm.z * $radius;<br />
// Animate the pivot_rotator pivot point to match the normalized vector<br />
foot_pivot.rotatePivotX = $norm.x * $radius;<br />
foot_pivot.rotatePivotZ = $norm.z * $radius;<br />
</code></p>
<p>10. (This step is optional or could be done differently.) Another thing I like to do is connect the &#8220;foot_roll&#8221; translation to the &#8220;foot_pivot.rotatePivotTranslate&#8221;. Then you can translate the &#8220;foot_roll&#8221; to create sliding effects in parent space. So even though the foot roll will be rotated, moving forward in Z will slide the foot along the ground all with one control object.</p>
<p>Here is a scene file you can download (Maya 2012) if you&#8217;d like to see the finished expression in action. The expression is included as a text file.</p>
<p><a href='http://chrislesage.com/wp-content/uploads/2012/03/cylinder_roll_example_scene.zip'><b>Download the finished, animated scene.</b></a></p>
<p>Let me know in the comments if you found this helpful or if I can explain anything more clearly. Thanks for reading.</p>
]]></content:encoded>
			<wfw:commentRss>http://chrislesage.com/character-rigging/using-a-unit-vector-to-make-a-cylindrical-foot-roll/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Mini Mammoth Part 3: Modelling and Topology in 3D-Coat</title>
		<link>http://chrislesage.com/character-rigging/mini-mammoth-part-3-modelling-and-topology-in-3d-coat/</link>
		<comments>http://chrislesage.com/character-rigging/mini-mammoth-part-3-modelling-and-topology-in-3d-coat/#comments</comments>
		<pubDate>Mon, 05 Mar 2012 16:28:37 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Character Rigging]]></category>
		<category><![CDATA[3d modelling]]></category>
		<category><![CDATA[3d-coat]]></category>
		<category><![CDATA[character design]]></category>
		<category><![CDATA[character rigging]]></category>

		<guid isPermaLink="false">http://chrislesage.com/?p=213</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p></p><p><img src="http://chrislesage.com/wp-content/uploads/2012/03/mini-mammoth-final-wireframe-render.jpg" alt="" title="mini-mammoth-final-wireframe-render" width="500" height="383" size-full wp-image-225" /></p>
<p><b>Here is Part 3 of rigging Mini Mammoth</b>. I&#8217;ve now got a finished model. This turned into a huge step, because I was learning a ton about modelling and topology in 3D-Coat, which turned into a 2-week long adventure of tutorials and manuals. I made a lot of mistakes as well which I&#8217;ll talk a little bit about. All in the spirit of learning!</p>
<p><b>This is the last post before I get into the actual character rigging.</b></p>
<p>First, I decided that I liked how the prototype model looked, so instead of starting from scratch, I began editing it. I started by carving out a mouth cavity and lowering the eyes.</p>
<p><img src="http://chrislesage.com/wp-content/uploads/2012/03/mini-mammoth-mouth-modelling.jpg" alt="" title="mini-mammoth-mouth-modelling" width="300" height="231" class="alignnone size-full wp-image-226" /><br />
<img src="http://chrislesage.com/wp-content/uploads/2012/03/mini-mammoth-wip-01.jpg" alt="" title="mini-mammoth-wip-01" width="300" height="231" class="alignnone size-full wp-image-227" /><img src="http://chrislesage.com/wp-content/uploads/2012/03/mini-mammoth-wip-02.jpg" alt="" title="mini-mammoth-wip-02" width="300" height="231" class="alignnone size-full wp-image-228" /></p>
<p>The funny thing about this entire process was that after I finished tediously making a change, I found a feature in 3D-Coat that makes it fast and easy!</p>
<p>For example, to change the eye, I filled in the eye sockets, transformed the eye geometry down, and then using the Sphere tool, gouged a new hole for the eye sockets.. After that, I learned that you can create a low-resolution cache, make changes and then propagate those changes back to the high-resolution voxels. This lets you make big changes to the structure of your model without destroying the finer details. (Otherwise, if you just move things around, you&#8217;ll tend to get a mushy mess.) I could have done this and used the move tool to lower the eyes very quickly.</p>
<p>In fact, using the low-proxy cache is a good workflow for modelling non-linearly, because even after you have details, you can change proportions and posing. I&#8217;ve started doing this now, and it has loosened me up a lot. It is also far faster to edit, because it is lower resolution.</p>
<p>Another example, after I took all these screenshots with different angles, I found out that you can save camera angles. That would have been better for the comparison shots in the topology stages below. It would also be good for making animated gifs of time-lapse progress.</p>
<p>Next, I made a few changes to the nose and ears to make the edges look a bit more hard and defined. I also removed the tail and the eyebrows. (I&#8217;ll add those separately later.)</p>
<p><img src="http://chrislesage.com/wp-content/uploads/2012/03/mini-mammoth-wip-03.jpg" alt="" title="mini-mammoth-wip-03" width="300" height="231" class="alignnone size-full wp-image-229" /></p>
<h3>Mesh Retopology</h3>
<p>I decided to call it done and moved on to the Retopo tool for creating my polygon topology. This was an exciting stage, because I wasn&#8217;t aware until a few months ago that tools like these existed. Modelling used to be a relatively tedious process, and now it feels very artistic in comparison. (I would also like to try ZBrush someday.)</p>
<p>The concept here is that you have your voxel model underneath, and you are adding polygons on top to the surface. So you can use the auto-tools or just draw polygons manually.</p>
<p>I did a few experiments and followed a couple of tutorials, but I was new to this. The best part about this tool is that it is iterative. You create a few &#8220;suggestion strokes&#8221; and then run the tool and see what you get as a result. If it is very messy, you just delete the polygons and run it again. (Or keep the polygons and stitch them together from various layers.)</p>
<p>Different patterns of suggestion strokes results in different mesh topology. Orange lines are closed loops, and green lines are directional indicators. The dark area indicates where you want more density. Eventually, I rested on the 3rd iteration below:</p>
<table style='border:0px; padding:0px; margin:0px;'>
<tr>
<td><img src="http://chrislesage.com/wp-content/uploads/2012/03/mini-mammoth-edgeloops-01.jpg" alt="" title="mini-mammoth-edgeloops-01" width="300" height="231" class="alignnone size-full" /></td>
<td><img src="http://chrislesage.com/wp-content/uploads/2012/03/mini-mammoth-edgeloops-result-01.jpg" alt="" title="mini-mammoth-edgeloops-result-01" width="300" height="231" class="alignnone size-full" /></td>
</tr>
<tr>
<td><img src="http://chrislesage.com/wp-content/uploads/2012/03/mini-mammoth-edgeloops-02.jpg" alt="" title="mini-mammoth-edgeloops-02" width="300" height="231" class="alignnone size-full" /></td>
<td><img src="http://chrislesage.com/wp-content/uploads/2012/03/mini-mammoth-edgeloops-result-02.jpg" alt="" title="mini-mammoth-edgeloops-result-02" width="300" height="231" class="alignnone size-full" /></td>
</tr>
<tr>
<td><img src="http://chrislesage.com/wp-content/uploads/2012/03/mini-mammoth-edgeloop-03.jpg" alt="" title="mini-mammoth-edgeloop-03" width="300" height="231" class="alignnone size-full" /></td>
<td><img src="http://chrislesage.com/wp-content/uploads/2012/03/mini-mammoth-edgeloops-result-03.jpg" alt="" title="mini-mammoth-edgeloops-result-03" width="300" height="231" class="alignnone size-full" /></td>
</tr>
</table>
<p>Now at first glance that might look pretty clean, but there are several 5-sided polys, triangles and a whole bunch of spiral edge-rings. The legs were especially problematic. So with the results as a starting point, there is some clean-up to do.</p>
<p>This is the stage where I wasted the most time!</p>
<p>At this point I wasn&#8217;t sure how many polys to use. In hindsight it turns out I was using too many, because it is very easy to sub-divide later. It made editing more cumbersome. I was sliding edges around one-by-one, deleting and merging polys and then hitting &#8220;Relax&#8221; to smooth out the results. When you hit &#8220;Relax&#8221;, sometimes things you don&#8217;t want to move will shift around and warp. So slowly, my edge-rings around the legs were drifting and getting crooked.</p>
<p>After a long tedious session of these types of edits (which by the way were a JOY compared to the old way I used to model years ago.) I found two powerful features that I had missed:</p>
<p>1. The &#8220;Brush&#8221; tool. How did I miss this!? It is brilliant. Using the brush tool, you can slide regions of vertices around. The beauty of it is that it stays adhered to the voxel surface below, so you can really get loose and messy. Hold down shift (as with most tools in 3D-Coat) and you can relax and smooth the vertices, again while sticking to the surface. This solved my drifting problem with the Relax tool and made the whole process 40X easier! (give or take a few X&#8217;s.)</p>
<p>2. You can delete polygons and use the Strokes tool manually. I thought the Strokes tool was only part of the Auto-Retopo tools. With that in mind, I deleted and rebuilt the eye region, to get a better round edge-loop structure on the face.</p>
<p><img src="http://chrislesage.com/wp-content/uploads/2012/03/mini-mammoth-wip-04.jpg" alt="" title="mini-mammoth-wip-04" width="300" height="231" class="alignnone size-full wp-image-230" /></p>
<p>So yadda yadda yadda&#8230; I kept doing these edits, especially around the mouth and legs and now I have a finished body model with 6892 faces. There is still a weird portion on the inside of the leg where the polys are running a bit diagonally and might cause artifacting, but I am going to test in Maya before I bother spending too much time to fix it. We might never see it. All in all, I&#8217;m happy with everything I learned and I know I could model more characters even faster.</p>
<h3>The Result:</h3>
<p><img src="http://chrislesage.com/wp-content/uploads/2012/03/mini-mammoth-final-01.jpg" alt="" title="mini-mammoth-final-01" width="300" height="231" class="alignnone size-full" /><img src="http://chrislesage.com/wp-content/uploads/2012/03/mini-mammoth-final-02.jpg" alt="" title="mini-mammoth-final-02" width="300" height="231" class="alignnone size-full" /><img src="http://chrislesage.com/wp-content/uploads/2012/03/mini-mammoth-final-03.jpg" alt="" title="mini-mammoth-final-03" width="300" height="231" class="alignnone size-full" /><img src="http://chrislesage.com/wp-content/uploads/2012/03/mini-mammoth-final-04.jpg" alt="" title="mini-mammoth-final-04" width="300" height="231" class="alignnone size-full" /><img src="http://chrislesage.com/wp-content/uploads/2012/03/mini-mammoth-final-05.jpg" alt="" title="mini-mammoth-final-05" width="300" height="231" class="alignnone size-full" /></p>
<h3>Next Step: Export to Maya for Rigging</h3>
<p>With a nice clean mesh, I think it will be possible to create some great squash-and-stretch cartoony effects. I&#8217;ll save the UV unwrapping for later. (This is another easy tool in 3D-Coat.) The next step is to begin doing some rig tests and prototyping. There is a chance I&#8217;ll have to make some changes.<br />
- Will the geometry deform properly? (quick skinning tests)<br />
- Should the trunk have been modelled straight? (I might still have to fix this.)<br />
- Prototype a cylindrical auto foot-roll, which can roll in any direction.<br />
- Model small details like tongue, tail, teeth and eyebrows. (and possibly some tufts of fur and other details.)<br />
- Create some nicer, asymmetrical tusks.</p>
]]></content:encoded>
			<wfw:commentRss>http://chrislesage.com/character-rigging/mini-mammoth-part-3-modelling-and-topology-in-3d-coat/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<series:name><![CDATA[Making of Mini Mammoth]]></series:name>
	</item>
		<item>
		<title>Using Proxy Geometry For Better Skinning Results</title>
		<link>http://chrislesage.com/character-rigging/using-proxy-geometry-for-better-skinning-results/</link>
		<comments>http://chrislesage.com/character-rigging/using-proxy-geometry-for-better-skinning-results/#comments</comments>
		<pubDate>Fri, 10 Feb 2012 16:07:57 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Character Rigging]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[character rigging]]></category>
		<category><![CDATA[maya]]></category>
		<category><![CDATA[rig techniques]]></category>
		<category><![CDATA[skinning]]></category>

		<guid isPermaLink="false">http://chrislesage.com/?p=179</guid>
		<description><![CDATA[Here is a simple skinning trick I like to use, which comes in handy for a lot of different rigging situations. In the images below, I was rigging a wolf&#8217;s tongue with spline IK that needed to be very flexible. (If you count, you&#8217;ll notice that there are 12 controllers. 4 main controllers and 8 [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>Here is a simple skinning trick I like to use, which comes in handy for a lot of different rigging situations.</p>
<p>In the images below, I was rigging a wolf&#8217;s tongue with spline IK that needed to be very flexible. (If you count, you&#8217;ll notice that there are 12 controllers. 4 main controllers and 8 extra offset controllers to bend and twist the tongue into a variety of shapes.) The skinning was proving to be tedious, because the geometry kept collapsing and self-colliding. So here is what I did:</p>
<p><strong>The Scenario</strong>: You have some tongue geometry (or other semi-flat geometry) which needs to be very flexible but the rig has a lot of bones and painting accurate weights is tedious and error-prone!</p>
<div id="attachment_185" class="wp-caption alignnone" style="width: 360px">
	<img src="http://chrislesage.com/wp-content/uploads/2012/02/wolf_tongue_colliding.jpg" alt="" title="wolf_tongue_colliding" width="360" height="312" class="size-full wp-image-185" />
	<p class="wp-caption-text">Look at that unsightly and embarrassing interpenetration!</p>
</div>
<p><strong>Solution</strong>: Use a poly plane or other simplified geometry as a proxy. Fit it inside the geometry, and skin that instead. When you are done painting, use Copy Skin Weights to copy the weights from the proxy geometry to the full geometry.</p>
<p>The settings I use for Copy Skin Weights are:<br />
Surface Association: Closest point on surface<br />
Influence Association 1: Closest Joint<br />
Influence Association 2: Closest Bone<br />
Influence Association 3: Name (This 3rd entry is usually optional and makes no difference. When copying from the same geometry, like a body to a body, use &#8220;One to One&#8221; instead.)<br />
Normalize: Not checked</p>
<div id="attachment_181" class="wp-caption alignnone" style="width: 368px">
	<img src="http://chrislesage.com/wp-content/uploads/2012/02/skinning_a_tongue_using_poly_plane.jpg" alt="" title="skinning_a_tongue_using_poly_plane" width="368" height="364" class="size-full wp-image-181" />
	<p class="wp-caption-text">Using a proxy object to skin the 3D geometry</p>
</div>
<div id="attachment_180" class="wp-caption alignnone" style="width: 318px">
	<img src="http://chrislesage.com/wp-content/uploads/2012/02/flexible_tongue_rig.jpg" alt="" title="flexible_tongue_rig" width="318" height="395" class="size-full wp-image-180" />
	<p class="wp-caption-text">The final result is fast and flexible</p>
</div>
<p>This makes it very easy for both sides of the tongue to have the same weighting, without tedious painting, which means it will twist and bend a lot further without self-colliding. When your geometry has a lot of folds and wrinkles it is also a lot easier to get your brush along the flat, uniform geometry of a plane. This technique also works in any 3D package which supports copying weights from one object to another. In XSI you can do the exact same thing using GATOR.</p>
<p>I have also used this technique to copy weights from a stretched sphere to weight complex hair geometry. You could also use it to copy weights from low-res geometry to high-res geometry. You will likely have to do a bit of cleaning up afterwards, but it could be a good way to get 90% of your weight painting done very quickly.</p>
<p>When you are done, you can simply delete the geometry, or tuck it away in a hidden group for later editing.</p>
<p>My next goal with this is to figure out a way to copy weights locally on complex geometry. For example, if the tongue is attached to the body, how would you grab just the tongue weights?</p>
]]></content:encoded>
			<wfw:commentRss>http://chrislesage.com/character-rigging/using-proxy-geometry-for-better-skinning-results/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Mini Mammoth Part 2: Sketching &amp; 3D Sculpting</title>
		<link>http://chrislesage.com/character-rigging/mini-mammoth-part-2-sketching-3d-sculpting/</link>
		<comments>http://chrislesage.com/character-rigging/mini-mammoth-part-2-sketching-3d-sculpting/#comments</comments>
		<pubDate>Mon, 23 Jan 2012 18:10:50 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Character Rigging]]></category>
		<category><![CDATA[3d-coat]]></category>
		<category><![CDATA[character design]]></category>
		<category><![CDATA[character rigging]]></category>
		<category><![CDATA[sketches]]></category>

		<guid isPermaLink="false">http://chrislesage.com/?p=127</guid>
		<description><![CDATA[So now we are on to part 2 of the Making Of Mini Mammoth where I am documenting the entire process of designing a cartoony character rig. In this step, I am doing a bunch of sketching from photo references and sculpting a quick prototype 3D model to get even more ideas. We&#8217;re almost ready [...]]]></description>
			<content:encoded><![CDATA[<p></p><p><img src="http://chrislesage.com/wp-content/uploads/2012/01/mini-mammoth-walking.jpg" alt="" title="mini mammoth walking" width="300" height="220" class="alignright size-full wp-image-146" />So now we are on to <strong>part 2 of the Making Of Mini Mammoth</strong> where I am documenting the entire process of designing a cartoony character rig. In this step, I am doing a bunch of sketching from photo references and sculpting a quick prototype 3D model to get even more ideas. We&#8217;re almost ready to start the actual modelling, but first&#8230;</p>
<h3><strong>Sketching Solves Problems</strong></h3>
<p>Design-based drawing is ultimately about solving problems, so quality isn&#8217;t at all important compared to just looking and observing the world.</p>
<p><div id="attachment_128" class="wp-caption alignnone" style="width: 590px">
	<img src="http://chrislesage.com/wp-content/uploads/2012/01/mini-mammoth-sketchsheet-001.jpg" alt="Design sketches for Mini Mammoth" title="Mini Mammoth Sketchsheet 1" width="590" height="474" class="size-full wp-image-128" />
	<p class="wp-caption-text">Design sketches for Mini Mammoth</p>
</div><br />
I&#8217;m not the best draftsman, and they are definitely not going to dedicate an Art-Of book to me just yet, but it is a very important step to visually work out all the things we&#8217;ll have to pay attention to when we get to the character rigging stage. Drawing is also very important <strong>because it is fast</strong>. You can collect a lot of ideas in a short period of time and end up surprising yourself with ideas you would not have thought of if you had been tempted to jump straight into modelling.</p>
<p>Even when I am coding Python tools, I often find it very helpful to draw out my ideas first. I constantly keep a notebook full of notes and doodles beside me.</p>
<p>At this point, I&#8217;m just trying to get lots of ideas for shapes, style and proportions. This is one of the most fun steps because anything goes. I even spent some time drawing bears.</p>
<div id="attachment_129" class="wp-caption alignnone" style="width: 590px">
	<img src="http://chrislesage.com/wp-content/uploads/2012/01/mini-mammoth-sketchsheet-002.jpg" alt="Some more design sketches for Mini Mammoth" title="mini-mammoth-sketchsheet-002" width="590" height="473" class="size-full wp-image-129" />
	<p class="wp-caption-text">Some more design sketches for Mini Mammoth</p>
</div>
<p><strong>Design Considerations So Far:</strong></p>
<ul>
<li>The mammoth&#8217;s trunk is mostly drawn in an interesting S shape, but I want it to be completely flexible and stretchy, including doing a water-passing-through-a-hose effect. So ultimately, I&#8217;ll likely model it in a straight line. When making a rig, <strong>it is usually easier to bend straight geometry than it is to straighten bent geometry</strong>. This is true when modelling any body part that will need to bend a lot, like a trunk, tongue or tail.</li>
<li>In some of the drawings I noticed that the tusks will overlap with the mouth, and it will be an important part of how the mouth looks. The trunk and tusks will <em>essentially be the upper lips</em>.</li>
<li>I&#8217;ve learned that there are a wide variety of mammoth and elephant ears. I&#8217;ll need to decide how floppy and how big they will be.</li>
<li>The long tusks of a mammoth make a really beautiful curve. This will be an important part to get right.</li>
<li>I am imagining giving him a thick coat of fur. How will I do it? There a few ways I could do it. Geometry, Maya hair, separate pieces of geometry? A lot to think about.</li>
<li>Did you know that <a href="http://www.youtube.com/watch?v=PKWRCW7PYKw" title="Elephant third eyelid">elephants have a 3rd eyelid membrane that slides sideways as they blink</a>?</li>
</ul>
<h3>Building a Prototype Model in 3D-Coat</h3>
<p>My original sketch wasn&#8217;t very detailed, and I wasn&#8217;t sure if the shapes I was drawing were even possible in 3D! So I started to model a prototype in <a href="http://3d-coat.com/" title="Modelling in 3D-Coat">3D-Coat</a>.</p>
<div id="attachment_130" class="wp-caption alignnone" style="width: 400px">
	<img src="http://chrislesage.com/wp-content/uploads/2012/01/mini-mammoth-turntable.gif" alt="3D turntable of Mini Mammoth" title="Mini Mammoth Turntable" width="400" height="320" class="size-full wp-image-130" />
	<p class="wp-caption-text">A digital sculpt in 3D-Coat</p>
</div>
<p>I really like how it turned out! At this point, I am just playing with shapes in 3D. <em>This is not a final model</em>. A lot of details like the ears will still change a lot so I am not too worried about following the design so far. Its just a 3D doodle.</p>
<p>Digital voxel sculpting in 3D-Coat is a lot of fun! You are very free to push and pull your model and experiment. It feels as loose as drawing, the tools are very intuitive. You can even build an armature (The &#8216;Curves&#8217; tool) or drop shapes in (The &#8216;Primitives&#8217; tool) using spheres, squares and cylinders to build up a model very quickly.</p>
<div id="attachment_167" class="wp-caption alignnone" style="width: 300px">
	<img src="http://chrislesage.com/wp-content/uploads/2012/01/3d-coat-armature.jpg" alt="" title="3d-coat armature" width="300" height="233" class="size-full wp-image-167" />
	<p class="wp-caption-text">Building an armature in 3D-Coat</p>
</div>
<p>Immediately, I began to see some interesting patterns emerge:</p>
<ul>
<li>The legs are almost perfect cylinders. I like this a lot. They will bend and stretch, but their default shape will be very simple.</li>
<li>The trunk makes some really cool undulating waves all the way up to the top of the head.</li>
<li>The eyebrows need more design work so they don&#8217;t look like Groucho Marx. (Though that could be fun too!) Right now he looks angry in a lot of the drawings, but he&#8217;ll have a wider range of expressions when I design the facial rigging.</li>
<li>I like how the foundation of Mini Mammoth is a simple egg shape. But I also started getting some interesting square shapes in the hindquarters. I will hint at real anatomy in the pelvis.</li>
</ul>
<h3>The Lessons</h3>
<h4>#1. Always use references.</h4>
<p>I started out drawing a lot of sketches from my imagination, but the ones I sketched while looking at references of other animals were the ones that solved the most problems and made the design more clear in my mind. As I said earlier; drawing for design is a problem-solving process. At this point, it is not about creating art. The more I drew from references, the more I realized things that I would have to think about during the modelling and rigging stages.</p>
<h4>#2. Don&#8217;t Limit Your Inspiration</h4>
<p>I was looking at one of my drawings and it reminded me of a bear walking. So I studied a few pictures of bears. A bear has a big, lumbering walk with shorter legs than an elephant (just like Mini Mammoth.) So when I go to create a walk cycle, I&#8217;ll be largely inspired by bears. Mini Mammoth might look very small but he is going to walk with a big, heavy, camera-shaking gait!</p>
<p><img src="http://chrislesage.com/wp-content/uploads/2012/01/bear-walking-reference1.jpg" alt="" title="bear-walking-reference" width="400" height="276" class="alignnone size-full wp-image-132" /></p>
<p><img src="http://chrislesage.com/wp-content/uploads/2012/01/mini-mammoth-3d-prototype.jpg" alt="" title="mini mammoth 3d prototype" width="300" height="225" class="alignright size-full wp-image-136" /><strong>Coming Up Next:</strong> I&#8217;ll finalize the design, make a couple of polished drawings, and then go back to 3D-Coat to start the actual modelling. After that, I&#8217;ll go through the auto re-topology of the model (an amazing feature of 3D-Coat which generates the polygon edge-loops) and create the texture UV&#8217;s for preparing the model to export into Maya.</p>
<p>Until then!</p>
]]></content:encoded>
			<wfw:commentRss>http://chrislesage.com/character-rigging/mini-mammoth-part-2-sketching-3d-sculpting/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<series:name><![CDATA[Making of Mini Mammoth]]></series:name>
	</item>
		<item>
		<title>Mini Mammoth Part 1: The Making Of A Cartoon Character Rig</title>
		<link>http://chrislesage.com/character-rigging/mini-mammoth-part-1-the-making-of-a-cartoon-character-rig/</link>
		<comments>http://chrislesage.com/character-rigging/mini-mammoth-part-1-the-making-of-a-cartoon-character-rig/#comments</comments>
		<pubDate>Tue, 17 Jan 2012 03:50:16 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Character Rigging]]></category>
		<category><![CDATA[character design]]></category>
		<category><![CDATA[character rigging]]></category>
		<category><![CDATA[sketches]]></category>

		<guid isPermaLink="false">http://chrislesage.com/?p=104</guid>
		<description><![CDATA[Hi everyone. This is the first post in a series where I take this simple doodle of a cartoon mammoth: &#8230;and turn him into a fully animated, super-flexible cartoony character rig in Maya! I&#8217;ll be documenting the entire process from design and modelling to the creation of the entire rig. It won&#8217;t be a step-by-step [...]]]></description>
			<content:encoded><![CDATA[<p></p><p><b>Hi everyone. This is the first post in a series where I take this simple doodle of a cartoon mammoth:</b><br />
<img src="http://chrislesage.com/wp-content/uploads/2012/01/mini-mammoth-first-sketch.jpg" alt="" title="mini mammoth first sketch" width="400" height="300" class="alignnone size-full wp-image-106" /><br />
<b>&#8230;and turn him into a fully animated, super-flexible cartoony character rig in Maya!</b></p>
<p>I&#8217;ll be documenting the entire process from design and modelling to the creation of the entire rig. It won&#8217;t be a step-by-step tutorial, but it will show my entire thought process as I rig, mistakes and all. It might get messy, but I know I&#8217;ll learn a lot and hopefully you will too.</p>
<p>This isn&#8217;t the full &#8220;design&#8221;. That will come a bit later. Right now it is just a quick 3-inch doodle that I sketched while at work. I am choosing this funny little character for a few reasons, because it will be especially challenging in a few ways:</p>
<h4>The Challenge</h4>
<p>1. The challenge of small cartoony rigs is that there is lots of overlapping influence between the different body parts. Take a look at this image.<br />
<img src="http://chrislesage.com/wp-content/uploads/2012/01/mini-mammoth-design-considerations.jpg" alt="" title="mini mammoth design considerations" width="457" height="333" class="alignnone size-full wp-image-105" /><br />
For example, the cavity of the mouth and the shape of the lips is going to overlap all the way down to his knees. So when he opens his mouth his legs are going to move! His head is so big in relation to his body that he is basically a walking face. When rigging a normal-sized human or creature, all the body parts are distinct and separate and it is easier to paint the influence. So I am going to have to very carefully consider how I do everything from the facial rig to the way the limbs bend the body.</p>
<p>2. I am going to design him so that he has a lot of exaggerated squash and stretch. His trunk will stretch, bulge and grab on to things. How will such a short little trunk grab things? We will see!</p>
<p>3. It will just be a lot of fun figuring out how to make this guy move in an appealing and believable way!</p>
<h4>The End Result?</h4>
<p>The end result will be an animated short, featuring &#8220;Mini Mammoth&#8221;. I am not sure yet if I am going to texture and render it, but we will see! Stay tuned!</p>
]]></content:encoded>
			<wfw:commentRss>http://chrislesage.com/character-rigging/mini-mammoth-part-1-the-making-of-a-cartoon-character-rig/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<series:name><![CDATA[Making of Mini Mammoth]]></series:name>
	</item>
	</channel>
</rss>

