如何檢測遊戲中旋轉圖像上的碰撞?我正在製作一個小行星遊戲,我無法弄清楚如何讓小行星與旋轉的太空船正確碰撞。旋轉圖像上的碰撞檢測
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. 使用CSS動畫旋轉圖像之間的碰撞檢測
- 5. 在javascript中旋轉圖像的碰撞檢測
- 6. 用於旋轉圖像的碰撞檢測
- 7. JFrame圖像碰撞檢測
- 8. 多圖像碰撞檢測
- 9. 碰撞檢測旋轉矩形
- 10. 碰撞檢測在旋轉矩形
- 11. 圈旋轉矩形碰撞檢測
- 12. 碰撞檢測旋轉立方體
- 13. Libgdx旋轉橢圓碰撞檢測
- 14. cocos2d旋轉精靈碰撞檢測
- 15. 如何,直到檢測到碰撞旋轉圖像
- 16. Android上旋轉位圖的碰撞檢測
- 17. KineticJS - 檢測多個圖像的碰撞
- 18. 像素碰撞檢測?
- 19. cocos2d像素碰撞檢測
- 20. 每像素碰撞檢測
- 21. Android - 通過矩陣旋轉後設置位圖碰撞檢測
- 22. SpriteKit碰撞檢測與透明圖像
- 23. 碰撞檢測
- 24. 碰撞檢測
- 25. 碰撞檢測
- 26. Android位圖:碰撞檢測
- 27. 測試圖像碰撞Pygame
- 28. 旋轉的碰撞邊界
- 29. 像素完美碰撞紋理旋轉
- 30. 碰撞檢測不檢測
該對象是一個圖像,所以不幸的是不會工作。 – 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