簡體   English   中英

不同位置和旋轉的不同CCNode上CCSprite的Cocos2D碰撞檢測

[英]Cocos2D collision detection of CCSprites on different CCNodes with different position and rotation

我有這樣的層次結構:

現場
-gameWorld(CCLayer Z:0)
-玩家(CCSprite Z:1)
-spriteWorld(CCNode Z:0)
-bgSprite(CCSprite Z:0)
-敵人(CCSprite Z:0)

spriteWorld旋轉並且bgSprite到處移動,因此與gameWorld坐標系相比,放置在bgSprite上的所有CCSprite都具有旋轉和移動的坐標系。

我需要檢測同時放置在gameWorld和bgSprite上的CCSprite之間的沖突。 現在我在這里看到了這篇文章:

Cocos2D CCNode在絕對屏幕坐標中的位置

可以給我每個精靈相對於屏幕的位置,但是如何計算或獲取這些精靈的邊界框? 這些邊界框都通過spriteWorld旋轉而旋轉,但是每個sprite也在bgSprite上旋轉。

對我來說,聽起來像是個瘋狂的數學,而且我是數學的傻瓜,所以我真的很需要這里的幫助。

謝謝塞倫

實際上,cocos2D不直接支持碰撞檢測,因此您需要自己進行所有計算。

無論如何,您可以使用Chipmunk-physicsBox2D之類的框架為您完成此任務。 基本思想是,將一個主體/形狀與您的精靈相關聯,然后設置一個碰撞回調,當檢測到碰撞時將觸發該回調,而無需擔心數學問題...

看一下有關僅將Box2D用於碰撞檢測的文章

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM