0

我刚开始使用 cocos2d 并不能自己解决这个问题。

我想创建一个精灵,添加另一个精灵作为它的孩子,然后全部显示。我也不想改变它们的大小,因为我的图像对于我的屏幕来说太大了,所以我正在缩放我的精灵。问题是,当我缩放我的父精灵时,它的比例会应用于子精灵,所以简单的缩放不是解决方案,我需要改变实际的纹理。我现在有点堆栈。有谁能够帮我?

    CCSprite* parent = [CCSprite spriteWithFile: @"some_picture.png"];
    parent.position = ccp(300, 300);
    [parent setSizeX:400 andY:400]; //currently this function added in category just scales sprite

    CCSprite* child = [CCSprite spriteWithFile: @"some_other_picture.png"];
    child.position = ccp(200, 200);
    [child setSizeX:200 andY:200]; //currently this function added in category just scales sprite


    [parent addChild:child];
    [someCCLayer addChild:parent];

所以我需要这个 set size 函数的解决方案。

非常感谢!

4

1 回答 1

0

任何 CCNode 子类的所有变换都应用于它的子类。你不应该改变这一点。所以你可以将你的精灵添加到一个父级。

如果您想同时转换两个精灵(移动、旋转等),您可以创建自己的控件,例如,简单的 CCNode 子类,它将包含两个精灵

于 2012-05-25T15:23:16.110 回答