当前位置:首页>>生活百科>>正文

碰撞检测

什么是碰撞检测

碰撞检测是检测两个或多个物体相交的计算问题。碰撞检测是计算几何学的一个经典问题,在各种计算领域都有应用,主要是在计算机图形学、计算机游戏、计算机模拟、机器人和计算物理学中。碰撞检测算法可以分为对2D和3D对象的操作。

计算机模拟中的碰撞检测

物理模拟器的不同之处在于它们对碰撞的反应方式。有些使用材料的柔软度来计算力,这将在以下时间步长中解决碰撞,就像在现实中一样。由于某些材料的柔软度较低,这会占用大量CPU。一些模拟器通过线性插值估计碰撞时间,回滚模拟,并通过更抽象的守恒定律方法计算碰撞。


【资料图】

一些迭代线性插值(牛顿法)以比模拟的其余部分更高的精度计算碰撞时间。碰撞检测利用时间一致性来允许更精细的时间步长,而不会增加CPU需求,例如在空中交通管制中。

在非弹性碰撞之后,可能会出现滑动和静止的特殊状态,例如,开放动力学引擎使用约束来模拟它们。约束避免了惯性,从而避免了不稳定。通过场景图实现休息避免了漂移。

换句话说,物理模拟器通常以两种方式运行,其中碰撞是后验(碰撞发生后)或先验(碰撞发生前)检测到的。除了后验和先验的区别之外,几乎所有现代碰撞检测算法都分为算法层次结构。通常使用术语“离散”和“连续”而不是后验和先验。

后验(离散)与先验(连续)

在后验情况下,物理模拟前进一小步,然后检查是否有任何对象相交或明显被认为相交。在每个模拟步骤中,都会创建一个包含所有相交物体的列表,并且这些物体的位置和轨迹被“固定”以解决碰撞问题。这种方法被称为后验方法,因为它通常会错过碰撞的实际瞬间,并且只在碰撞实际发生后才捕获它。

在先验方法中,有一种碰撞检测算法,它将能够非常精确地预测物理物体的轨迹。碰撞的瞬间以高精度计算,并且物理身体从未真正相互渗透。这被称为先验,因为碰撞检测算法在更新物理物体的配置之前计算碰撞的瞬间。

后验方法的主要优点如下。在这种情况下,碰撞检测算法不需要知道无数的物理变量;一个简单的物理物体列表被提供给算法,程序返回一个相交物体的列表。碰撞检测算法不需要了解摩擦、弹性碰撞,或者更糟的是,非弹性碰撞和变形体。此外,后验算法实际上比先验算法简单一维。一个先验算法必须处理的时间的变量,它是从缺席的后验问题。

另一方面,后验算法会在“修复”步骤中引起问题,需要更正交叉点(物理上不正确)。此外,如果离散步长太大,碰撞可能无法检测到,如果一个物体足够快或足够小,就会导致它穿过另一个物体。

先验算法的好处是增加了保真度和稳定性。很难(但并非完全不可能)将物理模拟与碰撞检测算法分开。然而,除了最简单的情况外,提前确定两个物体何时碰撞(给定一些初始数据)的问题没有封闭形式的解决方案——通常涉及数值求根。

有些物体处于静止接触状态,即碰撞,但既不会弹开,也不会相互穿透,例如放在桌子上的花瓶。在所有情况下,静止接触都需要特殊处理:如果两个对象碰撞(后验)或滑动(先验)并且它们的相对运动低于阈值,则摩擦变为静摩擦并且两个对象都排列在场景图的同一分支中。

碰撞检测的优化

对多个对象进行碰撞检测的明显方法非常缓慢。对照每个其他对象检查每个对象当然是可行的,但是当对象数量非常大时,效率太低而无法使用。以明显的方式检查具有复杂几何形状的对象,通过检查每个面与彼此的面,本身非常慢。因此,已经进行了大量的研究来加速这个问题。

电子游戏

电子游戏必须在多个任务之间分配非常有限的计算时间。尽管存在这种资源限制,并且使用了相对原始的碰撞检测算法,但程序员已经能够创建可信的(如果不准确的话)用于游戏的系统。

长期以来,电子游戏要处理的对象数量非常有限,因此检查所有对不是问题。在二维游戏中,在某些情况下,硬件能够有效地检测和报告屏幕上精灵之间的重叠像素。在其他情况下,简单地平铺屏幕并将每个精灵绑定到它重叠的平铺中就可以提供足够的修剪,并且对于成对检查,使用称为命中框的边界矩形或圆形被认为足够准确。

三维游戏使用空间划分方法,长期以来,每个实际3D对象使用一个或几个球体进行成对检查。除了在尝试密切模拟现实的游戏中,精确检查非常罕见。即便如此,也不一定在所有情况下都使用精确检查。

因为游戏不需要模仿实际的物理,所以稳定性不是什么大问题。几乎所有游戏都使用后验碰撞检测,并且碰撞通常使用非常简单的规则来解决。例如,如果一个角色被嵌入墙壁中,他们可能会被简单地移回他们最后一个已知的好位置。有些游戏会计算角色在嵌入墙壁之前可以移动的距离,并且只允许他们移动那么远。

在许多视频游戏的情况下,通过一个点来逼近角色就足以实现与环境的碰撞检测。在这种情况下,二元空间分区树提供了一种可行、高效且简单的算法来检查一个点是否嵌入到风景中。当角色在地面上奔跑时,这样的数据结构也可以用来优雅地处理“休息位置”的情况。角色之间的碰撞,以及与射弹和危险的碰撞,是分开处理的。

一个强大的模拟器会以合理的方式对任何输入做出反应。例如,如果我们想象一个高速赛车视频游戏,从一个模拟步骤到下一个模拟步骤,可以想象汽车会沿着赛道前进很长一段距离。如果赛道上有一个较浅的障碍物(比如砖墙),赛车完全跳过它也不是完全不可能的,这是非常不可取的。在其他情况下,后验算法要求的“修复”没有正确实现,导致错误可以将角色困在墙壁中或允许他们穿过墙壁并陷入无尽的虚空,那里可能有也可能没有致命的无底洞坑,有时也称为“黑色地狱”、“蓝色地狱”或“绿色地狱”,具体取决于主要颜色。这些是碰撞检测和物理模拟系统失败的标志。BigRigs:OvertheRoadRacing是一个臭名昭著的例子,游戏的碰撞检测系统失败或可能丢失。

标签:

下一条:证券投资分析

最新推荐

教育部:2022年九年义务教育巩固率为95.5%

数据显示,2022年,九年义务教育巩固率95 5%,比上年提高0 1个百分点。

2023-03-24

加快县域优质医疗卫生资源扩容(民生观)

持续提升县域医疗卫生服务能力,让医疗资源沉得下去、医疗人才留得下来,群众能就近获得更加公平可及、系统连续的医疗卫生服务,

2023-03-24

威海文旅消费券怎么领 济南文旅优惠券怎么领

第六届威海市文化和旅游惠民消费季每个人都可以领的微信文旅惠民消费券来了!全市百家景区景点、影院、书店等文旅商家门店,使用微信支付购买

2023-03-24

威海市文化和旅游惠民消费券发放安排

第六届威海市文化和旅游惠民消费季每个人都可以领的微信文旅惠民消费券来了!全市百家景区景点、影院、书店等文旅商家门店,使用微信支付购买

2023-03-24

威海家电消费券什么时候能领 威海家电消费券什么时候能领到

2022年9月15日上午10:00,300万元家电消费券准时开抢!活动时间2022年9月15日-2022年10月7日,每日上午10:00开始抢券,资金核销完,活

2023-03-24

威海家电消费券使用后需要进行资料备案吗

威海家电消费券资料备案消费者使用消费券购买家电后,务必于两日内在云闪付APP家电消费券“资料备案”端口上传与云闪付注册名一致的实名制发票

2023-03-24

威海家电消费券领取规则 家电消费券怎么领

威海家电消费券领取规则为保证消费券政策普惠性,消费者每人每日仅限领取一张(即10种组合消费券中一种),先到先得,领完为止。消费券当日有

2023-03-24

威海哪些商家参与了家电消费券活动 威海惠民消费券

威海家电消费券参与商家名单参与活动商家名单(扫码查看)用券标准1 个人消费者在威海市报名的家电销售企业(名单见后)实名制购买电视、冰箱

2023-03-24

威海家电消费券使用标准(威海家家悦电子券怎么用)

威海家电消费券用券标准1 个人消费者在威海市报名的家电销售企业(名单见后)实名制购买电视、冰箱、洗衣机、空调、燃气灶、抽油烟机、手机、

2023-03-24

威海家电消费券使用时有什么要求

威海家电消费券使用规则1 消费者在参与活动商家消费时,若满足使用标准,可使用消费券抵扣相应金额,单个订单限使用1张家电消费券,对应开具1

2023-03-24

威海家电消费券每天只能领取一张吗 威海家电消费券每天只能领取一张吗是真的吗

威海家电消费券领取方式1 个人消费者在参与活动商家,使用云闪付APP扫描对应面值消费券二维码进行领取。2 消费者在云闪付APP页面领券端口领取

2023-03-24

常态化防控区域是什么风险等级 防控地区风险等级动态管理

根据国家卫健委官网最新发布《新型冠状病毒肺炎防控方案(第九版)》:☞常态化防控区域:没有疫情发生的县(市、区、旗)全域实行常态化防控措施;

2023-03-24

9月威海家电消费券发放安排

2022年9月15日上午10:00,300万元家电消费券准时开抢!活动时间2022年9月15日-2022年10月7日,每日上午10:00开始抢券,资金核销完,活

2023-03-24

常态化防控区域可以自由出入吗(常态化防控区域可以去外地吗)

常态化防控区域可以自由出入吗?答:可以,常态化防控地区为所有中高风险区解除后,没有疫情发生的县(市、区、旗)全域实行常态化防控措施区

2023-03-24

台风梅花对威海有什么影响(台风梅花对威海有什么影响没)

台风蓝色预警今年第12号台风“梅花”(强台风级)14日06时中心距离浙江省象山县东南方向约260公里,中心附近最大风力14级,中心气压955百帕。预

2023-03-24

2022常态化​防控区域是低风​险区吗?

2022常态化防控区域是低风险区吗?答:不是。二者是不同的概念。根据国家卫健委官网最新发布《新型冠状病毒肺炎防控方案(第九版)》:☞常态化

2023-03-24

山东威海退役军人成人高考怎么报名(威海成人高考去哪里报名)

山东威海退役军人成人高考如何报名?山东省教育招生考试院官网(www sdzk cn)是山东省唯一报名网站。考生必须本人登录网上报名系统完成报名,

2023-03-24

威海市气象台9月15日14时00分发布暴雨黄色预警信号

市气象台9月15日14时00分将暴雨蓝色预警信号升级为暴雨黄色预警信号!天气预报威海市气象台2022年9月15日14时00分将暴雨蓝色预警信号升级为暴

2023-03-24

威海什么企业可以参与消费季活动

什么样的企业可以参与消费季活动?一、行业界定(1)A级旅游景区,以及其他景点、采摘园、游乐园、海洋馆等各种观光游乐类;(2)锡镶、剪纸等

2023-03-24

台风梅花最新消息 台风梅花最新消息2022

台风“梅花”最新消息据气象部门预报,今年第12号台风“梅花”已于9月13日凌晨移入东海南部海面,将以每小时10-15里的速度向偏北转西北方向移

2023-03-24

2022年9月15日20时聊城东昌府区新增2例无症状感染者

聊城疫情情况:以下内容来源于2022年9月15日聊城疾控账号2022年9月15日20时,聊城市新增2例新冠肺炎本土无症状感染者,均在东昌府区,均系集中

2023-03-24

山东省气象台于9月14日06时继续发布海上大风黄色预警

山东省气象台于9月14日06时继续发布海上大风黄色预警:受“梅花”外围及本体影响,14日白天到夜间,黄海中部东北风转偏东风7~8级阵风9~10级

2023-03-24

立春也称作什么 立春也叫做什么

1、立春又叫“打春”,是表示一年的春天开始的意思,也表示一年开始的意思。立春,意味着新的一个轮回已开启,乃万物起始、一切更生之义也。立

2023-03-24

台球厅转让合同

台球厅转让合同(汇编9篇)在人们愈发重视契约的社会中,随时随地,各种场景都有可能使用到合同,签订合同能促使双方规范地承诺和履行合作。那么

2023-03-24

描写雨水节气的唯美句子(描写雨水节气的唯美句子有哪些)

1、细雨飘飞精神爽,小雨滴答喜气添,大雨倾盆福满聚,暴雨袭来,嘿嘿,赶紧躲!2、雨水到来天地欢,万物焕发新容颜。甘霖普降润无声,田野蓬

2023-03-24

学校招生代理合同

学校招生代理合同(3篇)随着人们对法律的了解日益加深,合同的地位越来越不容忽视,在达成意见一致时,制定合同可以享有一定的自由。合同有不同

2023-03-24

立春什么日子(立春什么日子结束)

1、立春,为二十四节气之首,又名正月节、岁节、改岁、岁旦等。立,是“开始”之意;春,代表着温暖、生长。二十四节气最初是依据“斗转星移”

2023-03-24

大学学期学习计划

大学学期学习计划精选15篇时间就如同白驹过隙般的流逝,迎接我们的将是新的生活,新的挑战,做好计划,让自己成为更有竞争力的人吧。那么你真

2023-03-24

立春暖心祝福语 立春温馨祝福

1、春雨浸润了大地生命,百花争艳。2、游玩踏青,春季旅行,心平处处风景。立春旅行,一路顺风!3、保持青春添活力,功成名就,必定春风得意。4

2023-03-24

幼儿园中班下学期班级计划

幼儿园中班下学期班级计划(通用14篇)时间过得太快,让人猝不及防,前方等待着我们的是新的机遇和挑战,不妨坐下来好好写写计划吧。我们该怎么

2023-03-24

词条信息

赤道 117
词条创建者
  • 浏览次数:172

Copyright@  2015-2022 百科大全版权所有  备案号:豫ICP备2021032478号-16   联系邮箱:89 71 80 9@qq.com