[发明专利]一种虚拟人物抓握目标物体动作的实现方法及系统有效
申请号: | 202110348111.1 | 申请日: | 2021-03-31 |
公开(公告)号: | CN112907709B | 公开(公告)日: | 2023-07-25 |
发明(设计)人: | 刘德建;王赫放;吴少林;陈宏展 | 申请(专利权)人: | 福建天晴在线互动科技有限公司 |
主分类号: | G06T13/40 | 分类号: | G06T13/40;G06T17/20;G06T19/20 |
代理公司: | 福州旭辰知识产权代理事务所(普通合伙) 35233 | 代理人: | 程勇 |
地址: | 350212 福*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 虚拟 人物 目标 物体 动作 实现 方法 系统 | ||
本发明涉及一种虚拟人物抓握目标物体动作的实现方法及系统,按照以下步骤实现:步骤S1、初始化,步骤S2、获取手指数据,步骤S3、手指碰撞体计算,步骤S4、目标物体碰撞体计算,步骤S5、抓握动作计算,步骤S6、抓握动作实现模块,将记录的抓握数据与当前动作根据设置的权重值进行差值处理;将处理后的数据应用至虚拟人物模型上。本方案实现了,自动计算手部抓握任意物体的手型动作。使要实现虚拟人物抓握动作的3D动画或者游戏,在生产流程上无需制作抓握物体的手型动作。而且由于可以实现根据物体形状自动计算手型的机制,被抓握对象的尺寸也无需进行标准化,增强了可抓握对象的丰富度。
技术领域
本发明涉及虚拟人物动作执行技术领域,特别是一种虚拟人物抓握目标物体动作的实现方法及系统。
背景技术
目前实现虚拟人物抓握物体的方法为使用的软件编辑的手部抓取动画。此方案缺点为需要人力进行动画编辑,和被抓取的物体尺寸必须标准化。否则使用同一个手部抓取动作,会产生穿帮的效果。
发明内容
为解决上述问题,本发明的目的是提供一种虚拟人物抓握目标物体动作的实现方法,实现虚拟人物抓握目标物体不穿帮。
本发明实施例中采用以下方案实现:提供一种虚拟人物抓握目标物体动作的实现方法,按照以下步骤实现:
步骤S1、初始化,解析虚拟人物的人体骨骼,将骨骼记录的模型手掌紧握的最大极限值显示在模型上,然后将双手每一个手指关节骨骼的四元数旋转值记录下来;
步骤S2、获取手指数据,在虚拟人物上查找绑定左手和右手的网格模型;遍历查找网格模型上所有绑定每一个手指关节骨骼的顶点,建立顶点字典以骨骼为Key将顶点根据骨骼分类存储起来;遍历顶点字典中所有顶点的网格位置,获取每个顶点相对骨骼节点的相对位置;
步骤S3、手指碰撞体计算,遍历顶点字典,计算获取手指每一个关节的半径和每一个关节的长度;根据获取的关节半径和长度,给每一节手指骨骼上建立圆柱型碰撞器;
步骤S4、目标物体碰撞体计算,获取目标物体的网格;遍历网格顶点建立网格碰撞器;
步骤S5、抓握动作计算,检测目标物体是否在可被抓取范围;在范围内则虚拟人物手掌张开至记录的最大极限值,虚拟人物手掌由最大极限值不断向最小极限值进行线性差值,当手指碰撞体与目标物体进行碰撞时,则该手指停止聚拢动作;直到所有手指都停止运动时,记录当前所有手指关节骨骼四元数旋转值作为抓握数据;
步骤S6、抓握动作实现模块,将记录的抓握数据与当前动作根据设置的权重值进行差值处理;将处理后的数据应用至虚拟人物模型上。
本发明一实施例中,所述步骤S1进一步具体为:解析虚拟人物的人体骨骼,模型手掌张开至骨骼记录的极限状态,记录模型手掌极限张开状态的手指关节骨骼的四元数旋转值;模型手掌握拳至骨骼记录的极限状态,记录手掌极限握拳状态的手指关节骨骼的四元数旋转值。
本发明一实施例中,所述步骤S5进一步具体为,
步骤S51、首先检测目标物体是否在可被抓取范围的范围内;
步骤S52、若不在可抓取范围内,则结束计算;若在范围内则虚拟人物手掌张开至记录的最大极限值,进入下一步;
步骤S53、虚拟人物手掌由最大极限值不断向最小极限值进行线性差值,当手指碰撞体与目标物体进行碰撞时,则该手指停止聚拢动作,进入下一步;
步骤S54、判断所有的手指碰撞体是否都与目标物体碰撞停止运动;若还有手指碰撞体未与目标物体碰撞则重复步骤S53;若所有手指都停止运动时,记录当前所有手指关节骨骼四元数旋转值作为抓握数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福建天晴在线互动科技有限公司,未经福建天晴在线互动科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110348111.1/2.html,转载请声明来源钻瓜专利网。