微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

当第二层在它们之间时,如何避免第一层和第三层之间的碰撞?统一 2D C#

如何解决当第二层在它们之间时,如何避免第一层和第三层之间的碰撞?统一 2D C#

我有 3 个层:cartrackoutOfTrack 层。 cartrack 下是 outOfTrack 层。当汽车轨道上时,检测到汽车outOfTrack间的碰撞,所以我想以某种方式避免它.
汽车轨道上时,如何避免汽车outOfTrack间的碰撞检测,并检测仅当汽车接触 outOfTrack 时?

解决方法

转到编辑->项目设置->物理。 你有碰撞矩阵。通过复选框,您可以定义哪个图层与哪个图层发生碰撞。

enter image description here

编辑:碰撞矩阵不应实时更改所有现有联系人。如果我们要这样做,我们就必须重新评估世界上的每一个联系人,这可能非常昂贵且容易被滥用。检查this。因此,您可以尝试使用代码更改碰撞矩阵,您可能可以这样做,但是我建议根据空间而不是时间来处理碰撞.

我的意思是,您不是在汽车偏离轨道时尝试检测碰撞,而是使用相应的层和碰撞器检测碰撞在哪里 跑偏了。

如果您仍然想在运行时更改碰撞矩阵,您可以尝试查看 docs

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。