cocos2d-x学习笔记1:简单动画

本文介绍如何使用Cocos2d-x游戏引擎创建动画。通过加载图片资源并利用CCSpriteFrame分切每一帧,再将这些帧组合成动画序列。最终通过CCAnimate播放动画,实现了流畅的角色动作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文是参考了老G的小屋的的博客和无脑码农的视频写的一个学习笔记,大致内容可以参考他们的博客;需要说明的是:cocos2d-x的版本是:cocos2d-2.1rc0-x-2.1.2-hotfix + VS2010。
 
使用了一张草稚京的动画资源图片,自己制作的大笑
 
主要的动画代码如下:
CCSize size = CCDirector::sharedDirector()->getWinSize();
		
		//生成动画所需要的数据
		CCTexture2D* pTexture = CCTextureCache::sharedTextureCache()->addImage("caozhijing2.png");

		CCSpriteFrame* pFrame = NULL;
		CCArray* pArray = CCArray::createWithCapacity(48);

		for (int i = 0; i < 8; i++)
		{
			for (int j = 0; j < 6; j++)
			{
				pFrame = CCSpriteFrame::createWithTexture(pTexture,CCRectMake(304 * j, 224 * i, 304, 224));
				pArray->addObject(pFrame);
			}
		}

		CCAnimation* pAnimation = CCAnimation::createWithSpriteFrames(pArray,0.2f);
		pArray->release();

		CCSprite* pSprite = CCSprite::createWithSpriteFrame(pFrame);
		pSprite->setPosition(ccp(size.width/2, size.height/2));
		addChild(pSprite);

		CCAnimate* pAnimate = CCAnimate::create(pAnimation);
		pSprite->runAction(CCRepeatForever::create(pAnimate));

 
绘制效果如图:
 
简单介绍一下代码的流程,使用 CCTexture2D 加载图片 ,使用CCSpriteFrame创建动画的每一帧pFrame并将这些帧存储在数组中,将保存帧的数组加入到 CCAnimation生成动画数据,用CCAnimation生成CCAnimate(就是最终的动画动作),最后用CCSprite执行这个动作。其中调用的函数由于cocos2d-x的版本不同,成员函数也跟新了。
 
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值