- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Mel在三套骨骼相互转换时的应用
Mel 在三套骨骼相互转换时的应用
苏华岭
在maya骨骼的绑定过程中,有很多步骤都需要重复制作,这不仅增加的工作量而且制作过程枯燥无味,并且容易出现错误严重影响工作效率,给动画的工作人员带来很大的麻烦。在这时如果适当的用Mel来编写一段小代码或者表达式往往会给整个绑定过程带来事半功倍的效果。
一个正常人物的设定往往需要至少三套骨骼的相互协作才能完成一套和谐的稳定的动作,所谓三套骨骼就是指FK骨骼、IK骨骼以及刷权重用的绑定骨骼。在工作的时候IK和FK只能显示其中的一套并且依附于绑定骨骼,而且需要另外的一套自动的隐藏,其工作原理是将IK控制骨骼和FK控制骨骼分别用父子约束命令到绑定骨骼上,然后在通过控制约束接点来控制绑定骨骼是跟随FK骨骼还是跟随IK骨骼。
下面就用人体绑定这一例子来解释说明一下:
首先建立骨骼及其控制器如图所示:
蓝色代表IK骨骼系统,红色代表FK骨骼系统,黄色代表绑定骨骼系统
控制器FK1FK2FK3分别与骨骼FK1FK2FK3执行父子约束,并且依次FK3_con_gp与FK2_con ”P”上,FK2_con_gp与FK1_con ”P”上;IK控制器与IK手柄父子约束,IK_lct与IK手柄矢量约束;然后要做的就是分别把FK骨骼和IK骨骼约束到绑定骨骼上:选择IK1、bone1执行父子约束,IK2、bone2执行父子约束,IK3、bone执行父子约束。选择FK1、bone1执行父子约束,FK2、bone2执行父子约束,FK3、bone执行父子约束。做完之后会是这种效果:
接下来要做的就是使用Mel来控制FK及IK的显示或隐藏
上图黄色圆圈命名为IKFK,给IKFK添加属性Switch,并编写一下语言:
if (IKFK.switch == 0)
{
FK1.visibility = FK2.visibility = FK3.visibility = 0;
IK1.visibility = IK2.visibility = IK3.visibility = 1;
FK 1_con.visibility = FK 2_con.visibility = FK 3_con.visibility = 0;
IK_con.visibility = 1;
IK_lct.visibility = 1;
}
if (IKFK.switch == 1)
{
FK1.visibility = FK2.visibility = FK3.visibility = 1;
IK1.visibility = IK2.visibility = IK3.visibility = 0;
IK_con.visibility = 0;
FK 1_con.visibility = FK 2_con.visibility = FK 3_con.visibility = 1;
IK_lct.visibility = 0;
}
这个表达式的原理是:当IKFK.switch的属性为0时,FK的骨骼及控制器隐藏,IK的骨骼及控制器显示;当IKFK.switch的属性为1时,FK的骨骼及控制器显示,IK的骨骼及控制器隐藏。
由于FK、IK同时与绑定骨骼进行了父子约束,因此FK与IK对绑定骨骼的影响值各位0.5,所以还要再添加上一句表达式来消除绑定骨骼父子约束的偏移误差:
bone1_parentConstraint1.FK1W1 = bone2_parentConstraint1.FK2W1 = bone3_parentConstraint1.FK3W1 = IKFK.switch;
bone1_parentConstraint1.IK1W0 = bone2_parentConstraint1.IK2W0 = bone3_parentConstraint1.IK3W0 = 1- IKFK.switch;
表达式原理:第一句中将IKFK中的switch属性值赋给了FK对绑定骨骼的父子约束值。第二句中1减去IKFK中switch属性值,赋给了IK对绑定骨骼的父子约束值。
Ok,大功告成
参考文献:maya绑定的艺术
您可能关注的文档
- java验证码的用法.doc
- jaxws,jaxrs规范的webservice客户端调用方式及soap安全验证.doc
- jbosscluster环境的安装与配置.doc
- JBoss安装加固及日志分析.pdf
- JCPNet Tool and Automated Analysis of Distributed Systems ABSTRACT.pdf
- JDBC中,如果ResultSet和Statement不关闭的话,会有什么影响.doc
- JBOSS常见问题.docx
- jdbc知识点.doc
- jdk的安装手顺.xls
- Jive源代码研究(免积分版).doc
- Memorybased onestep namedentity recognition Effects of seed list features, classifier st.pdf
- Merit Review Broader Impacts Criterion Representative Activities.pdf
- MetalFerroelectricMetal heterostructures with Schottky contacts I. Influence of the ferro.pdf
- Methods of Setting Maximum Speed Limits on Freeways(高速公路最高车速限制的设置方法).pdf
- Method for Comprehensive Evaluation.pdf
- Metric Suite for Directing the Failure Mode Analysis of Embedded Software Systems.pdf
- MFC中滑动条的使用.doc
- MFC中MSChart的使用示例.pdf
- MFC中数组类的使用分析.doc
- mhy常见问题.doc
文档评论(0)