首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >XNA碰撞检测

XNA碰撞检测
EN

Stack Overflow用户
提问于 2009-05-28 19:13:50
回答 1查看 1.9K关注 0票数 0

我有一个球在立方体内移动,当它离开立方体时,我会检测到它(使用一个边界球体和一个边界框)。现在我想检测一下球是从哪一边出去的。然后我可以将球重新定向到正确的方向。我如何使用球的“world”矩阵做到这一点呢?

我是应该自己跟踪球的坐标,还是应该从世界矩阵中推断出它们?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-05-28 19:24:48

我会从碰撞开始。您有六个平面(每个平面一个点,法线单位向量对)和一个球体(一个点,半径对)。

对照每个平面检查该点。要执行此操作,请从该点减去平面的单位向量,单位向量按球体半径放大。(Point -= PlaneUnitVector * radius)

现在,通过一些向量数学,你可以看到它在平面的哪一边。

然后,您将使用平面的单位向量进行反弹计算。

您将遇到的下一个问题是您一次穿越多个平面的情况。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/922677

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档