[发明专利]一种基于GPU加速的实体面片模型间碰撞检测方法有效
申请号: | 201410766711.X | 申请日: | 2014-12-11 |
公开(公告)号: | CN104408774A | 公开(公告)日: | 2015-03-11 |
发明(设计)人: | 赵锦波;李廷;何桃;龙鹏程;吴宜灿 | 申请(专利权)人: | 中国科学院合肥物质科学研究院 |
主分类号: | G06T17/30 | 分类号: | G06T17/30;G06T1/00 |
代理公司: | 北京科迪生专利代理有限责任公司 11251 | 代理人: | 杨学明;贾玉忠 |
地址: | 230031 *** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于GPU加速的实体面片模型间碰撞检测方法。与常规方法不同之处在于:对模型中的所有顶点创建平行射线并设定相同的射线长度作为碰撞精度,碰撞精度可根据需要进行人工调节,碰撞检测过程中所有的碰撞射线有相同的执行程序,因而运用GPU进行所有碰撞射线与模型所有三角面片的相交计算,缩短计算时间,提高计算效率,实现实体面片模型间实时精确的碰撞检测方法。 | ||
搜索关键词: | 一种 基于 gpu 加速 实体 模型 碰撞 检测 方法 | ||
【主权项】:
一种基于GPU加速的实体面片模型间碰撞检测方法,其特征在于,实现步骤包括:步骤(1)、获取第一模型A所有顶点信息,获取第二模型B的AABB层次包围盒位置信息;步骤(2)、判断模型B是否为实体三角面片模型,如果是,则不做处理,否则,先对模型B进行三角面片处理;步骤(3)、获取模型B各三角面片的顶点信息,并将所有顶点信息构建成顶点纹理V加载至GPU显存中;步骤(4)、为模型A各个顶点创建射线,设定阈值作为碰撞精度,所有射线相互平行,且阈值相同,由各个顶点与阈值求得射线的另一端点,将所有顶点射线两端点位置信息存储至系统内存中;步骤(5)、在模型A向模型B运动靠近过程中,判断模型A各顶点射线与模型B层次包围盒是否相交,如果是,则模型A与模型B的包围盒发生碰撞,否则,模型A与模型B不发生碰撞;步骤(6)、根据步骤(5),如模型A与模型B的层次包围盒发生碰撞,则为GPU分配存储空间,向GPU传送发生碰撞的射线端点位置信息;步骤(7)、根据步骤(6),利用GPU进行碰撞射线与模型B的顶点纹理V的相交运算,判断碰撞射线是否与模型B任何一个三角面片都不相交,如果是,则模型A与模型B不发生碰撞,否则,模型A与模型B发生碰撞。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院合肥物质科学研究院,未经中国科学院合肥物质科学研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201410766711.X/,转载请声明来源钻瓜专利网。