Как конвертировать CCSprite в CCTexture2d - PullRequest
1 голос
/ 01 марта 2012

Я делаю приложение для iPhone с использованием cocos2d, и у меня есть CCSprite, и мне нужно преобразовать его в CCTexture2d, чтобы я мог поместить его в box2d.Вот код, который у меня есть, он вылетает с ошибкой во время выполнения ...

    //Set up sprite
    // Use batch node. Faster
    CCSprite *parent = [CCSpriteBatchNode batchNodeWithFile:@"egg.png" capacity:100];

    eggSprite_ = [CCSprite spriteWithTexture:[parent texture]];

    [eggSprite_ setScaleX: .5/eggSprite_.contentSize.width];
    [eggSprite_ setScaleY: .5/eggSprite_.contentSize.height];


    [eggSprite_ setTexture:eggTexture_];

    [self addChild:parent z:0 tag:kTagParentNode];

1 Ответ

5 голосов
/ 01 марта 2012

Вы можете получить текстуру и спрайт с изображения, подобного этому:

    NSString* file = @"myImage.png";
CCTexture2D* texture = [[CCTextureCache sharedTextureCache] addImage:file];
CGSize texSize = texture.contentSize;
CGRect texRect = CGRectMake(0, 0, texSize.width, texSize.height);
CCSpriteFrame* frame = [CCSpriteFrame frameWithTexture:texture rect:texRect];
...