gpt4 book ai didi

c++ - 简单的碰撞检测

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:56:51 24 4
gpt4 key购买 nike

我想写一个平台游戏,我以前做的都是不需要物理的益智游戏。
我所需要的只是简单的碰撞检测,我将为物理引擎提供的是所有对象的位置,它应该输出:

  1. 与任何对象(以及什么对象)发生碰撞的特定对象类型(子弹)的所有对象,只是一对列表。
  2. 对于特定对象类型(玩家和 NPC)的每个对象,无论是在地面上还是在半空中。

所有移动/速度/重力/命中/反射的模拟都将使用自定义代码完成,因为我想要实现的是一个具有奇怪物理的世界。
我应该推出自己的引擎吗?我可以使用现有的像 chipmunk/box2d 吗?如果我需要实现我自己的,我将如何使碰撞检测不是一个昂贵的操作? (就像一个天真的实现,只检查 O(n^2) 中的所有内容。
我可以使用 objective-c 或 c++,我更喜欢 c++(它应该有更好的性能)。

最佳答案

如果您正在编写自己的物理学,您可能希望包括您自己的碰撞检测。还有一些公开可用的免费物理引擎,您可以像 bullet 一样尝试。 (http://www.bulletphysics.org)

但是您可能只想在 google 上搜索碰撞检测算法,这些算法可能适用于您正在制作的游戏类型以及您需要测试的交叉点类型。

这是我随机找到的一篇文章:http://www.gamespp.com/algorithms/collisionDetection.html

关于c++ - 简单的碰撞检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8521356/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com