搜索
首页数据库mysql教程cocos2dx 3.0 飞机大战

由于课程需要,然后又水平有限,所以写了个飞机大战,加上不会画画,所以图片资源也是从微信apk解压出来的,设计思路参考的偶尔e网事。 闲话不说,先讲一下设计,大体上一共分为3个场景,场景下面是Layer 开始场景:WelcomeScene --WelcomeLayer 类欢迎界面

由于课程需要,然后又水平有限,所以写了个飞机大战,加上不会画画,所以图片资源也是从微信apk解压出来的,设计思路参考的偶尔e网事。


闲话不说,先讲一下设计,大体上一共分为3个场景,场景下面是Layer


开始场景:WelcomeScene -->WelcomeLayer  类似欢迎界面

游戏主场景:GameScene  --> GameLayer  游戏元素添加 和 碰撞检测

结束场景:GameOverScene -->GameOverLayer


然后是游戏的元素,在GameLayer添加,一个分为4个Layer:


PlaneLayer:主角层 

EnemyLayer:敌机层 ,分为3种,每种敌机生命值不一样

UFOLayer: 道具层,bullet和加bomb

BulletLayer:子弹层 bullet 和mutiBullet


然后简单讲一下碰撞检测的实现:

if(bullet->boundingBox().intersectsRect(enemy1->getBoundingBox())){
				if(enemy1->getLife() == 1){
					enemy1->loseLife();
					bulletsToDelete->addObject(bullet);
					enemy1ToDelete->addObject(enemy1);
					score += ENEMY1_SCORE;
					this->mControlLayer->updateScore(score);
				}
			}
Rect Enemy::getBoundingBox(){
	Rect rect = this->m_sprite->boundingBox();
	Point pos = this->convertToWorldSpace(rect.origin);
	return Rect(pos.x, pos.y, rect.size.width, rect.size.height);
}


还有再来就是子弹层的处理:

子弹发射需要步骤:1.添加子弹,2.移动子弹,3移除子弹

由于需要源源不断的发射子弹,所以将子弹添加到一个SpriteBatchNode节点中,然后在这个SpriteBatchNode节点对子弹进行添加,移动,和移除,这样子做的好处是只需要渲染一次,降低内存消耗

auto texture = TextureCache::getInstance()->textureForKey("shoot.png");
	bulletBatchNode = SpriteBatchNode::createWithTexture(texture);
	this->addChild(bulletBatchNode);


然后再讲一下图片资源的处理:


下载这个工具:plist解析工具

将微信需要的资源解析出来,然后可以用photoshop处理一下,哈哈,可以将微信的图片去掉,随便p上自己的名字

然后用TexturePacker打包,恩,大概就像这样子


cocos2dx 3.0 飞机大战


最后再讲一下编译成android工程的步骤和细节:


1.先在Android.mk文件中添加所有必须的cpp

2.记得在AppDelegate cpp 中添加分辨率适应

glview->setDesignResolutionSize(480,800,ResolutionPolicy::SHOW_ALL);
3.在proj.android文件夹下面修改AndroidManifest.xml 竖屏属性:
android:screenOrientation="portrait"

4.cmd到工程目录,命令:cocos compile -p android -j 4




源码:飞机大战



声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
mysql:blob和其他无-SQL存储,有什么区别?mysql:blob和其他无-SQL存储,有什么区别?May 13, 2025 am 12:14 AM

mysql'sblobissuitableForStoringBinaryDataWithInareLationalDatabase,而alenosqloptionslikemongodb,redis和calablesolutionsoluntionsoluntionsoluntionsolundortionsolunsolunsstructureddata.blobobobsimplobissimplobisslowderperformandperformanceperformancewithlararengelitiate;

mySQL添加用户:语法,选项和安全性最佳实践mySQL添加用户:语法,选项和安全性最佳实践May 13, 2025 am 12:12 AM

toaddauserinmysql,使用:createUser'username'@'host'Indessify'password'; there'showtodoitsecurely:1)choosethehostcarecarefullytocon trolaccess.2)setResourcelimitswithoptionslikemax_queries_per_hour.3)usestrong,iniquepasswords.4)Enforcessl/tlsconnectionswith

MySQL:如何避免字符串数据类型常见错误?MySQL:如何避免字符串数据类型常见错误?May 13, 2025 am 12:09 AM

toAvoidCommonMistakeswithStringDatatatPesInMysQl,CloseStringTypenuances,chosethirtightType,andManageEngencodingAndCollat​​ionsEttingsefectery.1)usecharforfixed lengengters lengengtings,varchar forbariaible lengength,varchariable length,andtext/blobforlabforlargerdata.2 seterters seterters seterters seterters

mySQL:字符串数据类型和枚举?mySQL:字符串数据类型和枚举?May 13, 2025 am 12:05 AM

mysqloffersechar,varchar,text,and denumforstringdata.usecharforfixed Lengttrings,varcharerforvariable长度,文本forlarger文本,andenumforenforcingDataAntegrityWithaEtofValues。

mysql blob:如何优化斑点请求mysql blob:如何优化斑点请求May 13, 2025 am 12:03 AM

优化MySQLBLOB请求可以通过以下策略:1.减少BLOB查询频率,使用独立请求或延迟加载;2.选择合适的BLOB类型(如TINYBLOB);3.将BLOB数据分离到单独表中;4.在应用层压缩BLOB数据;5.对BLOB元数据建立索引。这些方法结合实际应用中的监控、缓存和数据分片,可以有效提升性能。

将用户添加到MySQL:完整的教程将用户添加到MySQL:完整的教程May 12, 2025 am 12:14 AM

掌握添加MySQL用户的方法对于数据库管理员和开发者至关重要,因为它确保数据库的安全性和访问控制。1)使用CREATEUSER命令创建新用户,2)通过GRANT命令分配权限,3)使用FLUSHPRIVILEGES确保权限生效,4)定期审计和清理用户账户以维护性能和安全。

掌握mySQL字符串数据类型:varchar vs.文本与char掌握mySQL字符串数据类型:varchar vs.文本与charMay 12, 2025 am 12:12 AM

chosecharforfixed-lengthdata,varcharforvariable-lengthdata,andtextforlargetextfield.1)chariseffity forconsistent-lengthdatalikecodes.2)varcharsuitsvariable-lengthdatalikenames,ballancingflexibilitibility andperformance.3)

MySQL:字符串数据类型和索引:最佳实践MySQL:字符串数据类型和索引:最佳实践May 12, 2025 am 12:11 AM

在MySQL中处理字符串数据类型和索引的最佳实践包括:1)选择合适的字符串类型,如CHAR用于固定长度,VARCHAR用于可变长度,TEXT用于大文本;2)谨慎索引,避免过度索引,针对常用查询创建索引;3)使用前缀索引和全文索引优化长字符串搜索;4)定期监控和优化索引,保持索引小巧高效。通过这些方法,可以在读取和写入性能之间取得平衡,提升数据库效率。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境

SecLists

SecLists

SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用