1:CCSpriteFrameCache
1): 从*.plist文件中读取内容设置 CCSpriteFrameCache ,该对象是一个全局对象
// Load all of the game's artwork up front.
CCSpriteFrameCache* frameCache = [CCSpriteFrameCache sharedSpriteFrameCache];
[frameCache addSpriteFramesWithFile:@"game-art.plist"];
2): Now uses the image from the Texture Atlas.
//bullet.png文件名称是在*.plist文件中定义的
CCSpriteFrame* bulletFrame = [[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:@"bullet.png"];
CCSpriteBatchNode* batch = [CCSpriteBatchNode batchNodeWithTexture:bulletFrame.texture];
从CCSpriteFrameCache 直接创建CCSprite对象
for (int i = 0; i < 7; i++)
{
NSString* frameName = [NSString stringWithFormat:@"bg%i.png", i];
CCSprite* sprite = [CCSprite spriteWithSpriteFrameName:frameName];
sprite.position = CGPointMake(screenSize.width / 2, screenSize.height / 2);
[spriteBatch addChild:sprite z:i];
}
spriteWithSpriteFrameName方法的源代码为:(也是从CCSpriteFrameCache读取数据)
+(id)spriteWithSpriteFrameName:(NSString*)spriteFrameName
{
CCSpriteFrame *frame = [[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:spriteFrameName];
return [self spriteWithSpriteFrame:frame];
}
2:ccpAdd(point1,point2);
CGPoint velocity=ccp(1,2);
self.position = ccpAdd(self.position, velocity);
从point1开始按照point2的增量增加