如何检测游戏中旋转图像上的碰撞?我正在制作一个小行星游戏,我无法弄清楚如何让小行星与旋转的太空船正确碰撞。旋转图像上的碰撞检测
1
A
回答
2
如果旋转的对象是一个实现Shape
接口的对象,那么它可能会有一个有用的方法实现方法。
1
在paint()中,当您准备绘制活动图像时,请检查目标点的像素颜色并查找目标对象的颜色。运动中的图像和目标物体当然必须是不同的颜色。
0
你用于小行星的碰撞边界究竟是什么?
最简单的可能是你可以对所有事物使用圆圈并实现圆圈碰撞检测(只是谷歌它)。如果你的图像不是非常圆形的,这可能不会令人满意。否则,如果你有旋转矩形与其他旋转矩形碰撞,那么你将不得不使用Separating Axis Theorem for 2D Rotated Rectangle Collision实现算法。
另一种选择可能是像素完美的碰撞检测,这是Chuck正在谈论。快速搜索出现了这个论坛post。请谨慎行事,但这种方法的性能会随着图像的大小而降低。
1
像素完美的碰撞检测,即。图像之间的碰撞检测通常很难有效地进行。出于这个原因,使用为此目的而构建的现有优化库通常是一个好主意。
由于您还需要支持旋转图像,我推荐PoxelColl。它支持像素完美的碰撞检测以及缩放和旋转等基本转换。它提供了一个与Java兼容的Scala端口。
相关问题
- 1. Android - 位图碰撞检测(旋转)
- 2. 带旋转矩形的碰撞检测
- 3. Cocos2d - 旋转Sprite的碰撞检测
- 4. 多图像碰撞检测
- 5. Android上旋转位图的碰撞检测
- 6. 碰撞检测在旋转矩形
- 7. 碰撞检测旋转立方体
- 8. cocos2d旋转精灵碰撞检测
- 9. 碰撞检测旋转矩形
- 10. cocos2d像素碰撞检测
- 11. 像素碰撞检测?
- 12. Android - 通过矩阵旋转后设置位图碰撞检测
- 13. SpriteKit碰撞检测与透明图像
- 14. 碰撞检测
- 15. 测试图像碰撞Pygame
- 16. 旋转的碰撞边界
- 17. 碰撞检测不检测
- 18. 碰撞检测和碰撞响应
- 19. 碰撞检测与旋转的精灵SharpDX
- 20. 我该如何改变旋转线的碰撞检测?
- 21. 两个旋转矩形之间的java碰撞检测
- 22. 2D旋转矩形碰撞
- 23. 旋转矩形碰撞
- 24. Cocos2D碰撞检测
- 25. GameQuery碰撞检测
- 26. 检测墙碰撞
- 27. 检测碰撞JavaScript
- 28. Java碰撞检测
- 29. XNA碰撞检测
- 30. 碰撞检测Javascript
该对象是一个图像,所以不幸的是不会工作。 – user1150769 2012-03-13 18:05:41
也许现有的“形状”可以用来近似图像的碰撞边界。 – trashgod 2012-03-13 18:28:49
@ user1150769更快地帮助您更快地编辑您的问题[SSCCE](http://sscce.org/) – mKorbel 2012-03-13 18:44:10