2012-02-19 37 views
0

这是一个真正的快速问题。看起来超级初始化有它自己的方式锚定周围的东西。这里是例子。 下面我有超级初始化与精灵帧“image1”,我有“image2”内的初始化。问题是,这两个图像不会像你想象的那样相互溢出,看起来像init'image1'的锚点是0,0和0.5,0.5的“image2”,所以“image1”的左下边缘“会与”image2“的中心过度缠绕。super init sprites不匹配

-(id) initWithSpriteImage 
{ 
    if ((self = [super initWithSpriteFrameName:@"image1.png"])) 
    { 

     CCSprite *image2=[CCSprite spriteWithSpriteFrameName:@"image2.png"]; 
    } 
    return self; 

} 

任何想法我可以解决这个问题,除去init精灵?

+0

我不明白你在试图达到什么...... – EmilioPelaez 2012-02-19 17:24:01

+0

如果你不使用它,创建第二个CCSprite的目的是什么? – dreamlax 2012-02-19 19:33:55

+0

要将每个节点添加为哪个节点? – richard 2012-02-19 20:58:24

回答

2

假设image2是image1精灵的孩子,您看到的行为是正确的。我希望它是不同的,因为它是一个非常烦人和难以理解的初学者行为。

会发生什么情况是,子节点不在父节点的anchorPoint上,而是在父节点的纹理的原点(0,0)上。因此,每个孩子都集中在父母的左下角,除非父母是像CCScene,CCLayer或CCNode这样的非可视节点。

+0

感谢您的回答。所以我认为有没有办法解决这个问题?另外我已经在cocos2d-central关于mousejoint发布了一个问题。如果你能看一看,那会很棒。 http://cocos2d-central.com/topic/772-get-body-with-b2mousejoint/祝你有美好的一天! – Bek 2012-02-20 07:28:32

相关问题