线性IK高级旋转属性.docx

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
线性IK高级旋转属性

spline?IK?Advanced?Twist?controls设置详解  在做角色绑定的时候我们通常会用spline IK的高级旋转设置来模拟角色肩部和臀部的Twist,有时候还用这个高级旋转设置来模拟角色手臂的twist 而且效果非常好,控制很方便,但里面的参数设置往往让初学的朋友迷惑,我以前也迷惑过,好在请教老师弄明白了其中的原理,也就不迷惑了,下面来详细介绍搭建方法,希望可以帮助到岗接触这方面知识的朋友。选择joint tool在side 视图下用XYZ方式创建骨骼链,如下图: 为了使骨骼轴向统一,选择orient joint把最后一节骨骼oriention改为none,然后选择IK spline handle tool 为骨骼链创建线性IK。(本节教程主要讲线性IK的高级扭曲,参数我们就不调整了) Tips:当场景物体过多不好选择骨骼创建spline IK的时候可以按住ctrl键,在outliner里点选骨骼创建。如下图 ? 然后在骨骼链的开始端和结束端分别创建两个骨点,为了方便讲解和利于大家观察我先把他们吸附在离目标一个单位的网格上,如下图。(这两个骨点以后是要对spline IK的曲线进行蒙皮的,到时候再移回去即可。) 很好,然后进透视图打开骨骼的轴向显示看看 然后选择IK handle1, ctrl+A 进入attribute editor ,选择 IK solver attributes --- Advanced Twist controls ,勾选Enable Twist controls,这时会发现骨骼链的轴向变乱了, 这很正常,因为系统默认的约束轴向设置与我们需要的不相符,需要进一步设置。 下面来介绍下各个参数的意义: World up type :这个是设置spline IK的跟随方式 UP axis :这个在animator friendly rigging里的定义是在控制器上的轴向,下面会着重讲解。 Up vector :骨骼链开始方向的轴向。(用World up object的轴向来约束UP axis) Up vector2 :骨骼链结束的方向的轴向。(用World up object1的轴向来约束UP axis) World up object :控制骨骼链开始端的控制器。 World up object2:控制骨骼链结束端的控制器。 好,下面来重点讲讲UP axis,这里借用animator friendly rigging里的几幅图,我觉得很能说明问题。看下图 UP轴向不是骨骼的朝向,而是要与骨骼朝向有一定角度的,而且他们的轴向要一致,就像下图这样 用绿色标示的轴向就是UP axis 由此可知我们用XYZ方式创建的骨骼链UP轴向只可能是排除X 和 –X的所有轴向了,即Y , –Y? ,Z? , -Z ,所以你每次设置UP axis的时候是没有X 和 –X轴的选项的。 相信看到这你已经明白这里面的奥妙了吧,UP轴向我们可以有4种选择,下面开始设置 World up type :object rotation up (start/end) (这个选物体旋转向上) UP axis :positive Y 【还记得轴向没变乱之前骨骼链的轴向吗,我选的是没变乱之前的positive Y方向做UP(Y , –Y? ,Z? , -Z你可以随便选任意一个,接近轴向我们暂时不考虑,当然根据UP轴向选择的不同,下面的Up vector的轴向设置也就不同)】 ? Up vector : -1? 0? 0? (这个选项就是让你用World up object的哪个轴向来控制UP axis。三组数分别代表 X轴 Y轴和Z轴,用正负1表示正负轴) ? Up vector2 :-1? 0? 0?? (这个选项就是让你用World up object2的哪个轴向来控制UP axis) World up object :joint8? (这个就是控制hip部位的骨点) World up object2:joint9? (这个就是控制shoulder部位的骨点) OK 选择两个骨点twist测试下吧,没问题。 ? 为了进一步讲解UP轴向与 up vector 之间的关系 我们把Enable Twist controls选项先关掉。如下图 应为我们刚才是把骨骼链的正Y轴设为了UP,所以下面的UP vector 我们设置的是控制器的-X轴,因为控制骨骼的-X轴正好与骨骼连的正Y轴一致,用它来控制骨骼链的正Y轴即UP axis而使骨骼都不会出现翻转。(这里值得注意的是不要认为控制骨骼的轴向就是世界坐标轴,虽然这个例子很巧合地与世界坐标一致了,但控制骨骼的轴向一定要写它的自身轴向) ? 说以说在这个例子中的参数设

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档