我正在花栗鼠中创建一个静态形状(使用 SpaceManager)并将 cpCCSprite 附加到它。
但是,我需要精灵的锚点偏离中心,但是当我更改精灵的锚点时,形状和精灵不再对齐。
所以如果我像这样改变锚点
[sprite setAnchorPoint:ccp(0.5, 0.3)];
相应地绘制了精灵,但我希望形状会随之“移动”。这是我的意思的图片。
大炮的外观 http://www.tomelders.com/bin/cannon.png
左边是正确对齐的形状和精灵。我没有改变锚点。
右边是带有锚点的精灵ccp(0.5, 0.3)
我也在每帧重新散列静态形状。
这是它的创建方式
// create the sensor
sensor = [spaceMgr addRectAt:pPoint mass:STATIC_MASS width:53 height:81 rotation:0];
sensor->sensor = YES;
sensor->collision_type = 2;
//Create the sprite
CCTexture2D *texture = [[CCTextureCache sharedTextureCache] addImage:@"bownce-sprites-comic-sized.png"];
barrel = [[cpCCSprite node] initWithShape:sensor texture:texture rect:CGRectMake(3, 428, 53, 82)];
[self addChild:barrel];
// set the ancor point
[barrel setAnchorPoint:ccp(0.5, 0.3)];
[barrel setPosition:pPoint];