0
我還沒有看到有關在指定點周圍旋轉的簡單示例。我想是這樣的,但它不工作:Cocos2d。繞另一點旋轉點而不需要進行數學計算?
//CCNode *node is declared
//In a function of a subclass of CCSprite
- (void)moveWithCicrlce
{
anchorNode = [CCNode node];
anchorNode.position = ccpSub(self.position, circleCenter);
anchorNode.anchorPoint = circleCenter;
[anchorNode runAction:[CCRotateBy actionWithDuration:1 angle:90]];
[self runAction:[CCRepeatForever actionWithAction:[CCSequence actions:[CCCallFunc actionWithTarget:self selector:@selector(rotate)], [CCDelayTime actionWithDuration:0.1], nil]]];
}
- (void)rotate
{
self.position = ccpAdd(anchorNode.position, anchorNode.anchorPoint);
}
我必須添加「中心」變量作爲孩子嗎? – Gargo
當然,您創建但不作爲子項添加的任何節點都將從內存中釋放。和它的所有孩子一起。 – LearnCocos2D
我試過了。如果你想簡單地旋轉精靈,它是完美的。但碰撞檢測有很多問題,因爲有些精靈使用絕對位置,有些使用相對位置。 – Gargo