CN111739132A - 一种基于局部控制器的全身骨骼运动效果修改方法 - Google Patents
一种基于局部控制器的全身骨骼运动效果修改方法 Download PDFInfo
- Publication number
- CN111739132A CN111739132A CN202010623529.4A CN202010623529A CN111739132A CN 111739132 A CN111739132 A CN 111739132A CN 202010623529 A CN202010623529 A CN 202010623529A CN 111739132 A CN111739132 A CN 111739132A
- Authority
- CN
- China
- Prior art keywords
- chain
- skeleton
- controller
- bone
- whole body
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/04—Indexing scheme for image data processing or generation, in general involving 3D image data
Abstract
本发明提供一种基于局部控制器的全身骨骼运动效果修改方法,包括通过对骨架层级分析,将整个骨架按照树状结构展开,从骨骼起始到每个骨骼分叉点确定一条骨骼链,然后将整个骨架结构分解成由骨骼链确定父子关系的一个骨骼树,根据骨骼的位置确定局部控制器,并根据末端控制器的输入情况对对应的IK链进行计算并检查其是否超限,从最外围末端控制器重复进行计算与检查是否超限,实现对所述全身骨骼层次从最外围的IK链到所述根部骨骼的更新,相比于传统的绑定做法,本发明效率高、更新速度快,能够快速高效的得到合适的全身反向动力学效果。
Description
技术领域
本发明涉及人物动画编译与动画的重映射技术领域,具体涉及一种基于局部控制器的全身骨骼运动效果修改方法。
背景技术
fullbody ik(全身IK)是一种根据局部控制器输入修改全身骨骼运动效果的方法,主要用于人物动画编译以及动画的重映射;
传统任务编辑都是单纯的组件编辑,比如说先将人整体移动到某个位置,然后再单独的控制手和腿等等,速度慢,效果不易控制,如果有办法能够通过单个控制器直接影响全身,并且能够与其他控制器联动的话,那么就可以用很少的操作直接操作整个人物,在合理的计算方式下,这样就可以极大的提升制作速度;
另外在动画制作过程中,有时候还涉及到动作数据的迁移,比方说我有两个角色,他们的骨架结构相近但并不相同,例如有的动画角色脊柱骨骼会多一点,有的会少一点,这个时候如果已经在其中一个角色上存在动画了,另一个角色想沿用这个动画,在传统方法上是很难的,一般传统的做法是重新在新的角色上制作动画,或者用某种过程把动画传递过去,前者非常耗时,后者可能会出现动画不匹配的问题(例如人物比例不一致时);
现阶段同类型的方法一般存在于绑定系统中,通过复杂的节点计算将角色的动作与控制器关联,并且在控制的时候需要频繁的参数设置,让角色能够在各种情况中选择适合的计算模式(例如IK FK切换),并且这样的系统十分笨重,运算速度也十分低下,多数情况下,在效果全开时,不能做到实时(24FPS);
另外传统工具motionbuilder中也存在着相应的功能,不过motionbuilder是针对动画映射的单一目标,并且结构固定,无法进行结构修改。
发明内容
本发明的目的是提供一种基于局部控制器的全身骨骼运动效果修改方法,相比于传统的绑定做法,本发明效率高,速度快,无需复杂的参数设置,能够快速高效的得到合适的全身反向动力学效果;
本发明提供了如下的技术方案:
一种基于局部控制器的全身骨骼运动效果修改方法,包括以下步骤:
S1、对全身骨骼层级进行分析,将整个骨架按照树状结构展开,将所有的骨骼分叉点标记为终点骨骼;
S2、从根部骨骼开始搜索,将所述根部骨骼到每个所述骨骼分叉点之间确定为一条骨骼链,并将所述骨骼链标注为其父骨骼链的子链;
S3、按照步骤S2确定所有骨骼链关系后,根据每个骨骼的位置设置对应的控制器;
S4、为所述根部骨骼添加控制器,确定每个控制器的输入状态以及输入值,然后在骨骼链中搜索,确定控制器之间的父子关系;
S5、从最外围存在末端控制器输入的IK链进行计算并检查IK计算是否超限;
S6、如果超限,则根据所述控制器之间的父子关系对其父级IK链是否有末端控制器输入进行检查,如果没有超限,更新其父级IK链的末端控制器输入;
S7、当所有外围的IK链更新完成后,根据子级 IK链的所有输入对当前IK链进行计算并检查其是否超限,如果超限,则对所述子级IK链的起始位置进行修改,然后重复步骤S1-S6,再次对修改了末端控制器位置的父级IK链进行计算并检查其是否超限,如果再次超限,则根据超限偏移量更新当前IK链的父级IK链的末端控制器;
S8、重复步骤S5-S7,从最外围末端控制器重复进行计算与检查是否超限,实现对所述全身骨骼层次从最外围的IK链到所述根部骨骼的更新;
优选的,步骤S3中所述的根据每个骨骼的位置设置控制器的步骤如下:
如果骨骼位于其对应的骨骼链的末端,则在该骨骼处设置控制器并将所述控制器标注为该骨骼链的末端控制器以及其子链的起始控制器;如果骨骼位于骨骼链的中部,则将所述骨骼链拆分为两条骨骼链,并分别设置末端控制器与起始控制器;
优选的, 步骤S6中所述的更新父级IK链的末端控制器输入为当前IK链的超限偏移量,即所述末端控制器到目标位置的空间转换;
优选的,步骤S8的重复次数等于所述最外围IK链到所述全身骨骼层级根部的深度;
优选的,对于所述IK链的计算方法包括jacobian IK计算、spline IK运算或朝向计算;
本发明的有益效果是:本发明不需要固定的骨骼结构,只需要满足是一个完整的角色骨骼即可进行对全身骨骼的更新;相比于传统的绑定做法,本发明效率高,速度快,无需复杂的参数设置;在动画迁移时,能够进行缺省操作,而不是完全的一一匹配,保有完全的全身反向动力学计算功能,能够快速高效的得到合适的全身反向动力学效果。
具体实施方式
一种基于局部控制器的全身骨骼运动效果修改方法,包括以下步骤:
S1、对全身骨骼层级进行分析,将整个骨架按照树状结构展开,将所有的骨骼分叉点标记为终点骨骼;
S2、从根部骨骼开始搜索,将根部骨骼到每个骨骼分叉点之间确定为一条骨骼链,并将骨骼链标注为其父骨骼链的子链;
S3、按照步骤S2确定所有骨骼链关系后,根据每个骨骼的位置设置对应的控制器:如果骨骼位于其对应的骨骼链的末端,则在该骨骼处设置控制器并将控制器标注为该骨骼链的末端控制器以及其子链的起始控制器;如果骨骼位于骨骼链的中部,则将骨骼链拆分为两条骨骼链,并分别设置末端控制器与起始控制器;
S4、为根部骨骼添加控制器,确定每个控制器的输入状态以及输入值,然后在骨骼链中搜索,确定控制器之间的父子关系;
S5、从最外围存在末端控制器输入的IK链进行计算并检查IK计算是否超限;
S6、如果超限,则根据控制器之间的父子关系对其父级IK链是否有末端控制器输入进行检查,如果没有超限,更新其父级IK链的末端控制器输入(输入为当前IK链的超限偏移量,即末端控制器到目标位置的空间转换);
S7、当所有外围的IK链更新完成后,根据子级 IK链的所有输入对当前IK链进行计算并检查其是否超限,如果超限,则对子级IK链的起始位置进行修改,然后重复步骤S1-S6,再次对修改了末端控制器位置的父级IK链进行计算并检查其是否超限,如果再次超限,则根据超限偏移量更新当前IK链的父级IK链的末端控制器;
S8、重复步骤S5-S7,从最外围末端控制器重复进行计算与检查是否超限,实现对全身骨骼层次从最外围的IK链到根部骨骼的更新;
一种基于局部控制器的全身骨骼运动效果修改方法,步骤S8的重复次数等于最外围IK链到全身骨骼层级根部的深度;
对于所IK链的计算方法包括jacobian IK计算、spline IK运算或朝向计算;
一种基于局部控制器的全身骨骼运动效果修改方法,不需要固定的骨骼结构,只需要满足是一个完整的角色骨骼即可进行对全身骨骼的更新;相比于传统的绑定做法,本发明效率高,速度快,无需复杂的参数设置;在动画迁移时,能够进行缺省操作,而不是完全的一一匹配,保有完全的全身反向动力学计算功能,能够快速高效的得到合适的全身反向动力学效果;
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种基于局部控制器的全身骨骼运动效果修改方法,其特征在于,包括以下步骤:
S1、对全身骨骼层级进行分析,将整个骨架按照树状结构展开,将所有的骨骼分叉点标记为终点骨骼;
S2、从根部骨骼开始搜索,将所述根部骨骼到每个所述骨骼分叉点之间确定为一条骨骼链,并将所述骨骼链标注为其父骨骼链的子链;
S3、按照步骤S2确定所有骨骼链关系后,根据每个骨骼的位置设置对应的控制器;
S4、为所述根部骨骼添加控制器,确定每个控制器的输入状态以及输入值,然后在骨骼链中搜索,确定控制器之间的父子关系;
S5、从最外围存在末端控制器输入的IK链进行计算并检查IK计算是否超限;
S6、如果超限,则根据所述控制器之间的父子关系对其父级IK链是否有末端控制器输入进行检查,如果没有超限,更新其父级IK链的末端控制器输入;
S7、当所有外围的IK链更新完成后,根据子级 IK链的所有输入对当前IK链进行计算并检查其是否超限,如果超限,则对所述子级IK链的起始位置进行修改,然后重复步骤S1-S6,再次对修改了末端控制器位置的父级IK链进行计算并检查其是否超限,如果再次超限,则根据超限偏移量更新当前IK链的父级IK链的末端控制器;
S8、重复步骤S5-S7,从最外围末端控制器重复进行计算与检查是否超限,实现对所述全身骨骼层次从最外围的IK链到所述根部骨骼的更新。
2.根据权利要求1所述的一种基于局部控制器的全身骨骼运动效果修改方法,其特征在于,步骤S3中所述的根据每个骨骼的位置设置控制器的步骤如下:
如果骨骼位于其对应的骨骼链的末端,则在该骨骼处设置控制器并将所述控制器标注为该骨骼链的末端控制器以及其子链的起始控制器;如果骨骼位于骨骼链的中部,则将所述骨骼链拆分为两条骨骼链,并分别设置末端控制器与起始控制器。
3.根据权利要求1所述的一种基于局部控制器的全身骨骼运动效果修改方法,其特征在于, 步骤S6中所述的更新父级IK链的末端控制器输入为当前IK链的超限偏移量,即所述末端控制器到目标位置的空间转换。
4.根据权利要求1所述的一种基于局部控制器的全身骨骼运动效果修改方法,其特征在于,步骤S8的重复次数等于所述最外围IK链到所述全身骨骼层级根部的深度。
5.根据权利要求1所述的一种基于局部控制器的全身骨骼运动效果修改方法,其特征在于,对于所述IK链的计算方法包括jacobian IK计算、spline IK运算或朝向计算。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010623529.4A CN111739132B (zh) | 2020-07-02 | 2020-07-02 | 一种基于局部控制器的全身骨骼运动效果修改方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010623529.4A CN111739132B (zh) | 2020-07-02 | 2020-07-02 | 一种基于局部控制器的全身骨骼运动效果修改方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111739132A true CN111739132A (zh) | 2020-10-02 |
CN111739132B CN111739132B (zh) | 2020-12-11 |
Family
ID=72652320
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010623529.4A Active CN111739132B (zh) | 2020-07-02 | 2020-07-02 | 一种基于局部控制器的全身骨骼运动效果修改方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111739132B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022242038A1 (zh) * | 2021-05-19 | 2022-11-24 | 深圳市慧鲤科技有限公司 | 动画迁移方法和装置、设备、存储介质和计算机程序产品 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104077797A (zh) * | 2014-05-19 | 2014-10-01 | 无锡梵天信息技术股份有限公司 | 三维游戏动画系统 |
CN110570455A (zh) * | 2019-07-22 | 2019-12-13 | 浙江工业大学 | 一种面向房间vr的全身三维姿态跟踪方法 |
WO2020070928A1 (ja) * | 2018-10-03 | 2020-04-09 | 株式会社ソニー・インタラクティブエンタテインメント | スケルトンモデル更新装置、スケルトンモデル更新方法及びプログラム |
CN111015653A (zh) * | 2019-12-13 | 2020-04-17 | 深圳市优必选科技股份有限公司 | 机器人控制方法、装置、计算机可读存储介质及机器人 |
-
2020
- 2020-07-02 CN CN202010623529.4A patent/CN111739132B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104077797A (zh) * | 2014-05-19 | 2014-10-01 | 无锡梵天信息技术股份有限公司 | 三维游戏动画系统 |
WO2020070928A1 (ja) * | 2018-10-03 | 2020-04-09 | 株式会社ソニー・インタラクティブエンタテインメント | スケルトンモデル更新装置、スケルトンモデル更新方法及びプログラム |
CN110570455A (zh) * | 2019-07-22 | 2019-12-13 | 浙江工业大学 | 一种面向房间vr的全身三维姿态跟踪方法 |
CN111015653A (zh) * | 2019-12-13 | 2020-04-17 | 深圳市优必选科技股份有限公司 | 机器人控制方法、装置、计算机可读存储介质及机器人 |
Non-Patent Citations (1)
Title |
---|
袁铨: "基于物理的虚拟角色运动重定向研究与实现", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022242038A1 (zh) * | 2021-05-19 | 2022-11-24 | 深圳市慧鲤科技有限公司 | 动画迁移方法和装置、设备、存储介质和计算机程序产品 |
Also Published As
Publication number | Publication date |
---|---|
CN111739132B (zh) | 2020-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | A heuristic rescheduling algorithm for computer-based production scheduling systems | |
Gero et al. | An exploration‐based evolutionary model of a generative design process | |
CN107875632B (zh) | 实现人工智能行为的方法、系统及人工智能行为编辑器 | |
JPH06259400A (ja) | 複雑なシステムのシミュレーション操作方法 | |
Lu et al. | Automated box–jenkins forecasting modelling | |
CN111652453A (zh) | 用于零件设计、仿真和制造的智能工作流程顾问 | |
CN111739132B (zh) | 一种基于局部控制器的全身骨骼运动效果修改方法 | |
CN112307628B (zh) | 一种基于映射的机电产品绿色设计方案生成方法及系统 | |
EP1901235B1 (en) | Free style deformation (FSD) | |
WO2018223196A1 (en) | Improvements to artificially intelligent agents | |
CN113220664A (zh) | Lua脚本规则快速生成的卫星遥测智能判读系统及方法 | |
Huang et al. | Dynamic task sequencing of manipulator by Monte Carlo tree search | |
CN110928253A (zh) | 自动制造系统的动态加权启发式调度方法 | |
Ramírez et al. | Deep drawing tool for e-learning: A didactic approach for manufacturing engineering education | |
Di Donato et al. | Procedural modelling for HBIM of Italian railways iron bridges | |
US20050102645A1 (en) | Method of generating a schematic driven layout for a hierarchical integrated circuit design | |
Keto et al. | Expanding on the Process Perspective in Software Process Improvement Practices. | |
CN101826013A (zh) | 一种智能规划系统中操作行为的可视化方法 | |
US20070018987A1 (en) | Plane shape creation system, plane shape creation method and program recording medium | |
Ramirez-Serrano et al. | Supervisory control of reconfigurable flexible-manufacturing workcells-temporary addition of resources | |
Haq et al. | A design language for generic space-frame structure design | |
Lee et al. | Grammar-based generation of equilibrium structures through graphic statics | |
Bregulla et al. | Improving the engineering process in the automotive field through AutomationML | |
Desclaux et al. | MLC: A Language for the Specification of the FMS Control Systems | |
Kim et al. | Software Development Method Using the Concurrency Control Approach Based on DEVS Simulation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |