网站建设的目的与意义是什么,网站建设经费保障,网络营销方式整理,php制作网站温馨提示#xff1a;本文基于前一篇“Unity的碰撞检测(三)”继续探讨两个游戏对象具备刚体的触发检测#xff0c;阅读本文则默认已阅读前文。
#xff08;一#xff09;测试说明 在基于两个游戏对象都具备触发器和刚体且属性一致的条件下#xff0c;若二者刚体的BodyType…温馨提示本文基于前一篇“Unity的碰撞检测(三)”继续探讨两个游戏对象具备刚体的触发检测阅读本文则默认已阅读前文。
一测试说明 在基于两个游戏对象都具备触发器和刚体且属性一致的条件下若二者刚体的BodyType有所不同是否会出现不同的测试结果。 本次测试我们约定如此Player与Enemy都具备触发器和刚体默认属性如图1和图2所示 图 1 触发器默认属性 图 2 刚体默认属性 二测试用例
表 1 Player和Enemy的刚体的BodyType测试用例 游戏对象 测试用例序号 Static Kinematic Dynamic Player A1 √ × × A2 × √ × A3 × × √ Enemy B1 √ × × B2 × √ × B3 × × √
表 2 测试用例的控制台输出 组合序号 测试用例组合 控制台输出 G1 A1、B1 无 G2 A1、B2 Trigger输出 G3 A1、B3 Trigger输出 G4 A2、B1 Trigger输出 G5 A2、B2 Trigger输出 G6 A2、B3 Trigger输出 G7 A3、B1 Trigger输出 G8 A3、B2 Trigger输出 G9 A3、B3 Trigger输出
三测试总结 分析1由G1可知当Player和Enemy的刚体的BodyType均为Static时不会产生有效触发。 分析2由G2和G3可知当Player的刚体的BodyType为Static时Enemy的刚体的BodyType为Kinematic或Dynamic都会产生有效触发。 分析3由G4-G6可知当Player的刚体的BodyType为Kinematic时无论Enemy的刚体的BodyType为什么都会产生有效触发。 分析4由G7-G9可知当Player的刚体的BodyType为Dynamic时无论Enemy的刚体的BodyType为什么都会产生有效触发。 根据上述分析可得以下结论 结论1两个游戏对象发生有效触发的必要条件之一是至少有一个游戏对象的刚体的BodyType为Kinematic或Dynamic。
四问题 本文的测试进一步验证了”Unity的碰撞检测(二)”中的结论3至此关于有效碰撞和有效触发的必要条件的探索告一段落。但是对于Unity的碰撞检测而言这仅仅是一个开始对于刚体的BodyType为Dynamic时它的Collision Detection属性会对碰撞检测产生什么影响呢我们在下一篇继续探讨吧。
如果这篇文章对你有帮助请给作者点个赞吧