The Life of Animation
If I can see it, then I can do it.
2013-05-25
2012-11-07
2011-11-19
2011-11-09
2011-09-12
kz_correctiveShape v1.0
This is a part of new facial system, the script can to correctivve deform shape, I always say deform shape is very important in rigging, special for facial rig, I like this time update :)2011-05-28
2009-04-06
Update Facial System 2.1
2009-03-12
Pixar Ratatouille(料理鼠王)制作流程分解
Ratatouille Progression Reel from Animator.K on Vimeo.
making Of Flushed-Away from Animator.K on Vimeo.
2009-03-06
Victor 的来信 :-)
路漫漫其修远兮,吾将上下而求索,继续努力吧!!!
2009-03-03
My latest rigging demo reel 2009
Kevin Zheng Character Rigging Demo from Animator.K on Vimeo.
2009-02-27
给学绑定 (rigging) 的同仁推荐几套教程
2009-02-21
Victor 的 non roll 设置场景

这个是经典的victor的那套绑定,好多朋友都是后来才看到这个作品的,里面有个亮点就是肩部的 non-roll 设置,手臂可以任意的旋转而不会影响到肩部短袖,抬起来手臂的时候短袖还会跟着走,很有意思的设置。刚发贴的时候就有n多朋友想知道这个是怎么做的,victor就发到网上了,好象是后来时间长了就不能下了(还好我先下了),现在还有很多朋友对这个感兴趣想研究一下,我在这放上来,这可是victor发的原始场景哦,喜欢的朋友不要错过!
2009-02-16
2009-02-05
动画牛人又更新作品了
CamAnimation08 from Cameron Fielding on Vimeo.
2009-02-02
2009-02-01
wall - e 的动画小样
msn 网络硬盘测试
2009-01-19
2009-01-17
auto rig 系统
眨眼又是半个月了,就是一个快,最近写的 一个 auto rig 系统,就是一个骨骼的自动建立系统,可以把角色的骨骼,控制器,以及其他的很多功能都建立好,放两张图片来show一下。

2009-01-01
新年了,回顾了,多谢大家来关注啦!
2008-12-29
2008-12-05
《花足球》预告片
,要不是他妈在,没人能管得了他
,这个片子倾注了我不少精力,我的家人也是全力配合,这小子的一身行头,从帽子到裤子,全是为了片子现买的,花了500多大洋
。
片子前期是文字脚本,台词,手绘分镜头,到找场地,拍摄,中期就是把拍摄的素材导入电脑,进行处理,该抠像的抠像,改镜头跟踪的跟踪。
然后就是三维的部分了,按照前期设计好的足球形象(也是本人设计
),三维建模,材质,绑定,动画,灯光,渲染,然后就是跟实际拍摄的镜头进行匹配合成。
最后就是把各个做好的镜头剪辑成片,加音乐、转场、字幕什么的了,(足球的声音好听吧,是我老婆配地
)这其中的工作量可想而知,以至于后来好友好几个镜头没有做完
。
说了这么多,上面这些东西全部都是我自己一个人完成,有些辛苦,但也蛮有意思,下面就是成片,希望大家喜欢,片子后面是制作花絮。放出来算是第二个年终总结,嘿嘿,点击 football preview 可以直接去网站看清晰的
2008-12-03
2008-12-02
maya脚本共享 - transformToZero
2008-12-01
Pixar的动画总监和指导们教你怎样做动画的Demo
Pixar的动画指导和动画总监们建议你在动画的Demo里应该放什么他们爱看。
And in an effort to hit you with even more information, below are some quotes from our Directing and Supervising Animators about what they like to see in reels:
我宁可看15秒的美妙动画,也不想看3分钟那么长的没法看的电影。如果样样不行那三分钟会非常的难熬。
"I'd rather see 15 seconds of amazing animation than 3 looooooooooong minutes of an unwatchable film. Those 3 minutes can feel like an eternity if everything isn't perfect."
你想申请动画方面职位?好——展示好的动画给我!给我看表演。展示思考。告诉我角色是活的。我不在乎灯光,模型,材质,粒子特效,或者你多聪明。给我些我没看过的东西让我折服。一个拥有独特个性的原创角色!
"You’re applying for Animation? Well--show me good animation! Show me acting. Show me thinking. Show me a character that is alive. I don't care about lighting, modeling, shading, particle effects, or how clever you are. Blow me away with something I've never seen. An original character with a distinct personality!"
你画画吗?你是个好设计师吗?很好!确保你在电脑动画中也展示这些出来!
"Do you draw? Are you a good designer? That's great! Make sure it's in your computer animation as well!"
动画。电脑。手绘。定格。玻璃下沙画。如果你的Reel超级棒,我们会要你的。不管什么介质。我们不要看只有电脑起作用的那点东西。
"Animation. Computer. Drawn. Stop Motion. Sand under glass. If your reel kicks arse, we may hire you regardless of the medium. We don't want to see only computer stuff."
保持你的Reel简短凝练。我们在Reel中看很多东西,所以如果奇怪的,老套的,不太好的东西在开始,我们可能会在你的好动画出现前退出带子!我们不管你从哪来——我们需要知道你现在有多棒。最好的放最前面。
"Keep your reel short n' sweet. We watch a lot of these things in reel review so if there's weird, older, not-so-good stuff at the beginning we might pull the tape out before your great stuff! We don't need to see where you came from--we need to know how good you are right now. Edit down to your best stuff."
传统动画师受现实生活的启发,还有所有他们周围的电影。你也一样。我们不要动画书呆子。我们要那些从他们自身的经历中,从真人影片,还有当然从动画泰斗们那里汲取养料做动画的人!
" The classic animators were inspired by real life and all of the other films around them. And so are we. We're not looking to hire Animation Nerds. We want people who draw from their own other experiences, from live action, and yes, from the Old Masters!"
2008-11-30
两年的绑定学习过程日志
),到现在写自动绑定系统、表情系统,速度非常慢,进步也很慢,困难无奇数,但从来没动摇,市场不好我等,工资不高我认,我只相信实力,我用实力说话,或许我现在的能力还不够高,或许我的经验还不够多,只要坚持就有希望,只要不放弃就有机会,继续蛰伏,蓄势待发。我此生注定为动画而生,此生注定为动画而狂,不管前面是康庄大道还是荆棘密布,我要一如既往的继续走我的动画梦之路,谱写我的动画人生!2007.10.3
可開關的拉伸彈性手臂ik完成
用两个condition和一个multiply节点完成对骨骼的缩放控制
@@@ 需要在drv的x scale上面添加condition控制他的縮放屬性,跟隨ik的時候由ik控制,跟隨fk的時候由fk控制縮放
@@@ 右側手臂控制器可以實現跟骨胳一樣的對稱旋轉,身體其它部分的控制器都需要重新做,右腳ik control
@@@ make spine ribbon skeleton
2007.10.6
@@@ finish ik fk spine. first add parent constrain, and then createNode md, make new group x and z axis is negative
OOO make foot skeleton
OOO drv scaleX follow ik/fk
OOO inverse foot skeleton
2007.10.11
*** Mirror Control:
1) 複製控制器的所在組,然後繼續成組,把新組的X軸設置為-1
2) Unparent new group,here original group scale Z is -1, and then Freeze it, change to positive 1.
3) X axis rotate 原来的值 + 180 degree,Y axis is negative of original.
4) and then adjust curve control CVs,relative scale x = -1 y = -1.
===========================
OOO finish leg ribbon setup
@@@ 在設置腳部旋轉的時候,要跟隨fk/ik旋轉,複製兩個inverseFoot_con
成爲fk/ik控制器的子物體,用這兩個骨骼來orient inverseFoot_con
SSS setup foot control.
??? 反轉腳于腳部的ik控制器有衝突
@@@ 腳部bone全部完成,並完成foot 與ik/fk變換跟隨
2007.10.14
@@@ 開始設置ik/fk自動捕捉匹配
OOO objExists 可以判斷場景中是否存在某個物體的名稱
OOO 解決ik switch to fk問題 使用一個locator成爲l_arm01_fk的子物體,然後
l_armPoleVec01_ctl捕捉到上面就可以了
2007.10.16
@@@ 繼續完善fk/ik auto snap mel
OOO 基本完成L arm fk/ik auto snap 還差ik scale有點問題
??? iK拉長以後,再切換回fk還有點問題
OOO 全部完成左右手臂的 arm fk/ik auto snap 歐也!!!
OOO 繼續完成其他部位的 ik/fk auto snap
OOO 右侧手臂骨骼的 transformX 為負數, fk to ik mode 要注意,把長度數值變爲負數
OOO 左右手臂的fk/ik auto snap全部完成 歐也!
OOo 右臂drv skeleton ScaleX Ik mode 要跟每段的fk/ik骨骼相匹配
??? they are not orient match of foot ik control and fk control
*** Leg drv skeleton 每一個scaleX都要用單獨的cnd運算連接
OOO 完成左腿的ik/fk auto snap
2007.10.20
OOO 全部完成四肢的 ik/fk auto snap操作,帶縮放可控制的 :)
*** 做雙關節骨骼兩個要素,才能保證ik變化時候2和3的角度一致
(1) 1根3段的骨骼長度要一致
(2) 2根3段骨骼默認的Joint Orient要一致
(感謝manitou的靈感)
2007.10.21
@@@ 開始製作腳部控制器
2007.10.22
OOO 修改腳設計,把反轉腳改稱層級控制,簡化腳部骨骼,用CSik來控制骨骼
??? 發現了一條骨骼鏈的ik fk seamless switch 測試一下
2007.10.24
@@@ 重新製作limb骨骼系統,使用單獨一套骨骼,重新優化mel,繼續使用雙關節骨骼
按照雙關節要素來做
*** 夢工場那人的mel使用了下面這種命名方式,可以使用IkFk_switch( "giant01", "_l_", "arm" );這種調用方式,場景中的任意角色都可以使用通一段mel來實現ikfk_switch
global proc IkFk_switch( string $nameSpace, string $side, string $limb )
而不用不同的角色使用不同的mel,而且還大大的簡化了mel數量,牛逼阿
不愧是greamwork的
2007.10.25
OOo 完成左臂的新獨立骨骼ik/fk轉換
??? 左臂還有問題,切換到fk的時候,ik控制器位置不變,身體移動,長度發生變化,影響骨骼長度,需要在切換fk的時候就把骨骼的長度修改,縮放值恢復到1,然後關閉縮放功能即可
OOO 左右臂的ikfk切换全部完成,注意控制其和骨骼的Rotate Order is xzy, not xyz
OOO 完成左右手的跟隨設置,復制兩個手部根部con骨骼,分別命名為ori,然后設置orient約束到手部,并且指定給ik fk子物體
OOo left leg finish
OOO 四肢的新的独立骨骼的ik/fk切换完成,同一段mel,實現左右自動切換
pow 2 6;的意思是2的6次冪 (乘方,冪power)
sqrt 是平方根 square root
1) Stretchy the spine chain
2) Twisting the spine chain
4) Enhancing the Stretch
OOO frameCache的用法:
stream給定一個動畫曲線,然后通過vary time來返回一個數值。
for example, stream是一段1-6幀的弧形曲線,當vary time為1的時候,返回就是曲線第一幀的數值,當vary time為3的時候,返回的就是曲線在第三幀時候的數值,以此類推,可以通過動畫曲線來控制一個幾個物體屬性的變化值。又弄明白一個節點
2007.11.4
OOO 按住ctrl鍵可以在outliner里面添加ik
2007.11.8
@@@ 繼續制作右腳rigging
優化mel,規范制作流程,命令規則,把制作量減小到最少,代碼盡量能夠少修改,重復使用
沒有必要保持transform為0的物體就不用加group
2007.11.11
*** ribbon原始場景有嚴重重名,所有物體包括組都不要重名,否則experssion會有問題
2007.11.12
OOO orient 各骨骼鏈條
2007.11.13
@@@ 繼續orient bone chain
OOO 設置fk根部控制器Follow
*** 設置關節鏈跟隨的時候,把復制的兩個組的屬性全部 hide and lock,然后再進行約束,和parent
OOO 四肢 Follow設置完成
OOO head ik/fk ok
OOO head fk/ik switch finish(include mel)
*** mel里面設置約束的時候,需要先設置關鍵幀再刪除約束,這樣位置才不會有變化
OOo 基本完成骨骼設置
@@@ 開始skin
??? 新問題,膝關節大腿部骨骼有反轉現象
OOO 把大腿下端的segRibbon方向約束到leg01_drv上,使其方向與上面一致
2007.11.17
@@@ 開始制作character Selection GUI (感謝夢工廠的牛人)
OOO Giant01 GUI v0.1界面完成
@@@ GUI 0.2 鏈接代碼生成 內部命名規范化
OOO \为mel的转义符(escape character),在后面可以添加一些特殊的符號,如"
OOO 腿部反轉問題解決,修改頭部控制器歸零,然后完成右手控制器,開始skin
*** sdk = set driven key
2007.11.26
??? 大問題啊,切換ik/fk做動畫的時候,互相的動作不能顯示,調ik的時候,fk的動畫就沒有了,fk的時候ik的動畫也沒有了,弄了一大天,弄出來一個垃圾rigging,呵呵
2007.11.29
@@@ 開始解決骨骼問題,關鍵幀和ik手臂旋轉問題
*** mel里刪除臨時約束的時候要先key幀,然后再刪除,不然控制器會跳回上一個關鍵幀的位置
找到問題了,物體的visibility屬性也要打關鍵幀,然后kz_ikFkSwitch里面,armIk01_con的orient約束沒有setKey,愚蠢的錯誤
OOO OK,mel問題解決了
??? finger bone scale is not assign
2007.11.30
OOO GUI的mel基本上調節完畢了(還應該改成四根手指和五根手指可調的效果,以后再弄)
OOO clavicle_con用移動方式來控制 clavicle bone旋轉,更直觀
OOO 修改GUI mel,設置了Reset Selection效果,很實用,人家設計的牛逼啊
OOO Create autoClavicle feature.
*** Create autoClavicle attribute on shoulder control.
OOO MirrorBlendShape update mel
2007.12.3
OOO 優化了GUI,設置了四根手指的界面
OOO 手指的骨骼上級再添加一個joint, 就可以作為驅動幀來使用了,不用在制作額外的控制器
擴展名用 _sdk means set driven key
*** zero group must clear attributes to preserve position and rotate state.
OOO all button 的作用是用來選擇所有控制器然后歸零的
2007.12.8
OOO 弄好了卡通眼球材質
2007.12.10
_arm ribbon rotate must set rotate decay,跟随arm01_drv骨骼就可以,像前臂一样
2007.12.15
OOO enum控制兩個約束的開關更方便,blendcolor來控制三套骨骼比約束更方便
2007.12.16
OOO hide object visibility attribute will be hide all child objects, but hide object shape visibility attribute to only hide himself.
OOO it is very cool that use expression to control objects visibility.
OOO 手指不用特殊的控制器,把selection handle打開就好了,有干凈有方便
2007.12.23
@@@ hand setup
2008.1.1
@@@ 第二次重新rig,用新方法做fk/ik,重寫mel
2008.1.2
*** 制作好骨骼以后一定要調整 local rotation axis,使其與上級控制器一致
2008.1.4
OOO 修改了segRibbon模板,可以squash stretch,globalScale也沒問題了
2008.1.5
OOO 模型又改了,手部修改一下
2008.1.8
OOO 手部rig完成
??? 發現segRibbon的旋轉有問題,超過90度上部關節后兩個jnt會有反轉問題
XXX 使segRibbon里面的nurbs Surface法線朝向骨骼的旋轉方向即可解決,旋轉根部組即可
OOO 優化了segRibbon模板,解決了旋轉的時候反轉問題,為segPos01_geo制作四個cluster
然后兩個兩個分組,在重新給他們約束,用parent約束,但是要只選擇幾個旋轉軸可以達到
理想的過度旋轉效果
2008.1.10
@@@ 應該做l_leg 方向約束了
2008.3.1
*** min为最小值返回命令,返回后面给定的两个数值中最小的数值;
2008.3.2
*** linstep(0, 10, 5) // Result: 0.5 //
linstep 1 3 2.5; // Result: 0.75 //
linstep返回一个浮点数值 =(第三变量 - 第一变量)/(第二变量 - 第一变量)
第一个变量为最小值,第二个变量为最大值,如果第三个变量小于第一个变量,则返回0,如果第三个变量大于第二个变量则返回1.
l_ball_loc.rotateX = (linstep(0,$toeLift,$roll)) * (1-(linstep( $toeLift,$toeStraight,$roll))) * $roll;
这行可以让ball关节的度数这样变化,随着roll的在0到45的时候,ball也从0到45,也就做到了脚跟抬起脚掌不动
在roll从45到90的时候,ball会从45返回到0,也就做到了向前走步的时候,脚掌抬起,但脚变成了直的了
ik由noFlip和poleVector互相驱动,noFlip也是RP Solver,只不过把vector控制器放到了旁边,这样就能实现环绕无翻转了,然后通过knee spin属性来控制膝盖的方向。
pv骨骼就是正常的RP Solver来控制,添加一个Pole Vector控制器来控制膝盖方向。
OOO 解决blendshape in-between 模型问题,使用animToBlend脚本命令直接产生,把目标删除就好了
OOO 足球形象二次修改,比较满意,继续rig四肢
fk ik切换调试完成,fk拉伸,ik拉伸相互切换,之后reset都没有问题了
Char GUI优化基本完毕,fk/ik switch mel分离出来了 v0.91a
添加一些新功能:
只有选择了控制器才能允许弹出界面,不选择物体的话会出现提示按钮。
优化了mel里面的命名方式,全部以变量的名称进行命名,方便修改。
优化resetSelection,不会出现找不到物体的错误提示了
添加了手部 r01AllBttn l01AllBttn 按钮,可以选择全部三个手指的后三节骨骼
手部只做一个控制器就好,不用添加太多的手指形状控制,对手指控制用控制器倒不太方便,可以后面用poseLib来做
2008.5.4
01 根据选择不同角色的控制器来确定角色名称,里面的各项功能也都会针对相应的角色
conform character name according as selected control
02 低分辨率和高分辨率模型切换显示
03 镜像选择控制器
04 恢复选择的控制器到默认数值状态
05 可控制身体各部分的显示状态(如头、身体、左臂。。。)
06 可在面板直接选择角色各个部位的控制器
07 Fk手臂的方向无缝转换跟随
08 手臂和腿部Ik的方向位置无缝转换跟随
09 可拉伸的四肢Fk Ik.
10 手臂和腿部的Fk Ik 无缝转换,并且可以匹配各种模式下的不同的长度
11 各个手指每个方向快速选择(如食指的三个关节,或者食指中指小拇指的第一个关节)
2008.5.6
写了kz_createIkLenMdn.mel, 可以直接根据选择的节点来添加Ik骨骼的length参数和IkLen_mdn节点
下午左臂完成绑定,比较顺利了
??? ribbon出现新问题,global scale有问题了
OOO 在expression里面修改下面这行就可以,把golbalScale连接到##01_all_ctl上面就行了
$scale = segRibbon2008_seg_curveInfo.normalizedScale/giant01_all_con.golbalScale
腿部的rig流程制作完成,
应该在镜像物体之后再清理场景,锁定和隐藏控制器属性,要不然不能镜像骨骼
Fk腿部也可以暂不设置跟随





























