检测 2D 游戏精灵中的碰撞的最佳方法是什么?我目前从事 allegro 和 G++ 工作
有多种方法可以检测碰撞检测。根据您使用的是 2d 还是 3d 环境,您使用的方法将略有不同。还要记住,在建立碰撞检测系统时,要考虑到您可能想要在游戏中实现的任何物理原理(大多数下降 3D 游戏需要),以增强其真实性。
简短的版本是使用边界框。或者换句话说,让世界中的每个实体成为一个盒子,然后检查盒子的每个轴是否与其他实体发生碰撞。
对于需要测试碰撞的大量实体,您可能需要签入八叉树。您可以简单地将世界划分为多个扇区,然后仅检查同一扇区中的对象之间的碰撞。
如需更多资源,您可以访问 sourceforge 并搜索 Bullet 动力学引擎,这是一个开源碰撞检测和物理引擎,或者您可以查看http://www.gamedev.net其中有大量关于丰富的游戏开发主题的资源。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)