不得不说要说总结,因为Cocos2d-X的代码和Cocos2d-iphone两个引擎除了语言不同外(Cocos2d-X使用C++,Cocos2d-iphone使用Object-C)可以说没有其他差异。
<wbr></wbr>
<wbr><wbr><wbr>下面举例对比几段代码来说明吧:</wbr></wbr></wbr>
<wbr><wbr><wbr><span style="word-wrap:normal; word-break:normal; line-height:24px; margin:0px; padding:0px; border-width:0px; font-size:16px"><span style="margin:0px; padding:0px; border-width:0px"><wbr><wbr></wbr></wbr></span></span><span style="word-wrap:normal; word-break:normal; line-height:24px; margin:0px; padding:0px; border-width:0px; font-size:16px"><span style="word-wrap:normal; word-break:normal; margin:0px; padding:0px; border-width:0px; color:rgb(255,0,0)">创建添加一个精灵代码对比:</span></span></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr><wbr>使用Cocos2d-X:</wbr></wbr></wbr></wbr></wbr></wbr></wbr><wbr></wbr>
-
//---------Cocos2d-X代码部分--<wbr><wbr></wbr></wbr>
-
<wbr><wbr><wbr><span style="word-wrap:normal; word-break:normal; margin:0px; padding:0px; border-width:0px; border-style:none; color:rgb(0,130,0)">//创建一个精灵</span><span style="word-wrap:normal; word-break:normal; margin:0px; padding:0px; border-style:none"><wbr><wbr></wbr></wbr></span></wbr></wbr></wbr>
-
<wbr><wbr><wbr>CCSprite<wbr>*spriteTemp<wbr>=CCSprite::spriteWithFile(<span style="word-wrap:normal; word-break:normal; margin:0px; padding:0px; border-width:0px; border-style:none; color:blue">"icon.png"</span><span style="word-wrap:normal; word-break:normal; margin:0px; padding:0px; border-style:none">);<wbr><wbr></wbr></wbr></span></wbr></wbr></wbr></wbr></wbr>
-
<wbr><wbr><wbr><span style="word-wrap:normal; word-break:normal; margin:0px; padding:0px; border-width:0px; border-style:none; color:rgb(0,130,0)">//设置精灵的坐标</span><span style="word-wrap:normal; word-break:normal; margin:0px; padding:0px; border-style:none"><wbr><wbr></wbr></wbr></span></wbr></wbr></wbr>
-
<wbr><wbr><wbr>spriteTemp->setPosition(ccp(size.width*0.5,size.height*0.5));<wbr><wbr></wbr></wbr></wbr></wbr></wbr>
-
<wbr><wbr><wbr><span style="word-wrap:normal; word-break:normal; margin:0px; padding:0px; border-width:0px; border-style:none; color:rgb(0,130,0)">//将精灵添加到layer中</span><span style="word-wrap:normal; word-break:normal; margin:0px; padding:0px; border-style:none"><wbr><wbr></wbr></wbr></span></wbr></wbr></wbr>
-
<wbr><wbr><wbr><span style="word-wrap:normal; word-break:normal; margin:0px; padding:0px; border-width:0px; border-style:none; color:rgb(0,102,153)"><strong>this</strong></span><span style="word-wrap:normal; word-break:normal; margin:0px; padding:0px; border-style:none">->addChild(spriteTemp,1);
<wbr></wbr></span></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr><wbr><span style="margin:0px; padding:0px; border-width:0px">使用Cocos2d-iphone:<wbr><wbr><wbr></wbr></wbr></wbr></span></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
-
//---------Cocos2d-iphone代码部分--<wbr><wbr></wbr></wbr>
-
//创建一个精灵<wbr><wbr></wbr></wbr>
-
CCSprite<wbr>*spriteTemp<wbr>=[CCSprite<wbr>spriteWithFile:@<span style="word-wrap:normal; word-break:normal; margin:0px; padding:0px; border-width:0px; border-style:none; color:blue">"icon.png"</span><span style="word-wrap:normal; word-break:normal; margin:0px; padding:0px; border-style:none">];<wbr><wbr></wbr></wbr></span></wbr></wbr></wbr>
-
//设置精灵的坐标<wbr><wbr></wbr></wbr>
-
spriteTemp.position=ccp(size.width*0.5,size.height*0.5);<wbr><wbr></wbr></wbr>
-
//将精灵添加到layer中<wbr><wbr></wbr></wbr>
-
[self<wbr>addChild:spriteTemp<wbr>z:0<wbr>tag:1]; <wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><span style="word-wrap:normal; word-break:normal; line-height:24px; margin:0px; padding:0px; border-width:0px; font-size:16px"><wbr><span style="word-wrap:normal; word-break:normal; margin:0px; padding:0px; border-width:0px; color:rgb(255,0,0)">添加一个粒子代码对比:</span></wbr></span></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr><wbr><span style="margin:0px; padding:0px; border-width:0px">使用Cocos2d-X:<wbr></wbr></span></wbr>
-
//---------Cocos2d-X代码部分--<wbr></wbr><wbr><wbr></wbr></wbr>
-
<wbr><wbr><wbr>CCParticleSystem<wbr>*tempSystem<wbr>=ARCH_OPTIMAL_PARTICLE_SYSTEM:</wbr></wbr></wbr></wbr></wbr>
-
:particleWithFile("himi.plist");<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
-
<wbr><wbr><wbr>tempSystem->setPosition(ccp(100,100));<wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
-
<wbr><wbr><wbr><span style="word-wrap:normal; word-break:normal; margin:0px; padding:0px; border-width:0px; border-style:none; color:rgb(0,102,153)"><strong>this</strong></span><span style="word-wrap:normal; word-break:normal; margin:0px; padding:0px; border-style:none">->addChild(tempSystem);<wbr><wbr></wbr></wbr></span></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr>使用Cocos2d-iphone:</wbr></wbr></wbr></wbr>
-
//---------Cocos2d-iphone代码部分--<wbr><wbr></wbr></wbr>
-
CCParticleSystem<wbr>*tempSystem<wbr>=[ARCH_OPTIMAL_PARTICLE_SYSTEM<wbr></wbr></wbr></wbr>
-
particleWithFile:@"himi.plist"];<wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
-
tempSystem.position=ccp(100,100);<wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr>
-
[self<wbr>addChild:tempSystem];<wbr><wbr></wbr></wbr></wbr>
<wbr><wbr><wbr></wbr></wbr></wbr>OK,不在举例了,通过以上随便举例的两段代码童鞋们很清楚的看出来,基本上没有差异,
以后主要会继续更新Cocos2d(Cocos2d-iphone)博文的,以后童鞋们不管是做Cocos2d-X
还是做Cocos2d-iphone都可以看我的【iOS-Cocos2d游戏开发系列博文的】谁让它们通用呢 ?
<wbr><wbr><wbr><wbr><span style="margin:0px; padding:0px; border-width:0px">这里还有三点要说下:</span></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr>第一:现在很多游戏公司都趋向于Cocos2d-X引擎开发游戏的趋势,不得不说Cocos2d-X多平台平移确实很诱惑人,Cocos2d-X已成熟!</wbr></wbr></wbr>
<wbr><wbr>第二:不少童鞋肯定会很想知道Cocos2d-X能多平台平移,那么平移稳定性如何?</wbr></wbr>
<wbr><wbr><wbr><wbr>通过我的了解,Cocos2d-X开发都会使用统一的C++语言开发,例如在iOS开发中使用Xcode+cocos2d-X,在Android上一般使用Eclipse+Android NDK+ADT....</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><span style="word-wrap:normal; word-break:normal; line-height:21px; margin:0px; padding:0px; border-width:0px; color:rgb(255,0,0)">其实总结一句,Cocos2d-iphone并不像很多童鞋认为的只要的一人开发就可打包多平台包这样子~<wbr>如果说用一句话更贴切的形容Cocos2d-X,我会用“Cocos2d-X代码通用”来形容;</wbr></span></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><span style="margin:0px; padding:0px; border-width:0px">从CC(CocoChina)上我看到王哲<span style="word-wrap:normal; word-break:normal; line-height:20px; margin:0px; padding:0px; border-width:0px; font-family:Arial,Helvetica,sans-serif">walzer</span>(cocos2d-x
游戏引擎作者)在回复一童鞋问题时候这么说的:</span></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr>问:关于如何打包cocos2d-x程序的问题 <wbr>本人新手,想请教一下如何将Cocos2d-x win32的程序打包成iphone能够运行的程序,请各位大大不吝赐教!谢谢!</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><span style="margin:0px; padding:0px; border-width:0px">王哲<span style="word-wrap:normal; word-break:normal; line-height:20px; margin:0px; padding:0px; border-width:0px; font-family:Arial,Helvetica,sans-serif">walzer</span></span><wbr>答:win32上只是让你调试方便,要发布到appstore上,你还是得有个mac机,装好cocos2d-x
template,新建工程,然后把win32上代码拷过来,手工地加入xcode工程里面,编译运行</wbr></wbr></wbr></wbr></wbr>
<wbr></wbr>
<wbr><wbr><wbr>从上面的对话可以证实我所说的Cocos2d-X是代码通用!</wbr></wbr></wbr>
分享到:
相关推荐
在cocos2d-x这个强大的2D游戏开发框架中,我们常常需要添加各种控件来增强用户交互体验。...在实践中不断探索,你会发现cocos2d-x提供的这些控件为你的游戏或应用程序带来丰富的交互性和用户体验。
总的来说,掌握基于BSD Socket的网络通讯模块对于Cocos2d-x游戏开发者来说至关重要,它能够实现游戏的网络功能,使游戏具备更丰富的交互性和可玩性。通过对提供的文件进行学习和理解,开发者可以更好地将网络通信...
最后,为了提高代码复用性和模块化,Cocos2d-x推荐使用组件(Component)系统,将游戏对象的功能拆分为独立的组件,这样可以轻松地在不同对象间共享和组合功能。 总结来说,《Cocos2d-x权威指南》的源代码涵盖了...
对于那些仍在使用Cocos2d-x 2.1.5的开发者来说,这个资源可能是宝贵的,因为它可以解决他们可能遇到的兼容性和更新问题。 从提供的文件名列表中,我们可以解读出以下几个关键知识点: 1. **AUTHORS**:这个文件...
本篇总结了cocos2d-x面试的常见问题,涵盖了C++基础知识、cocos2d-x特性和实现机理等方面。下面是根据给定的文件信息生成的相关知识点: 一、C++基础知识 1. C和C++的区别:C++在C的基础上拓展了面向对象的内容,...
在游戏开发领域,Cocos2d-x 是一个广泛使用的开源跨平台2D游戏引擎,它支持多种编程语言,包括C++、Lua和JS。在这个场景中,我们关注的是一个特定的自定义精灵(Sprite)类,名为“TempTouchSprite”,它是针对Cocos...
通过充分利用Cocos2D-X的特性,开发者可以构建出具有高度互动性和趣味性的游戏,同时兼顾多平台发布,满足广泛的用户群体。无论是从技术层面还是市场角度来看,采用Cocos2D-X进行游戏开发都是一个明智的选择。
cocos2d-x 面试题 cocos2d-x 是一个流行的开源游戏引擎,广泛应用于游戏开发领域。以下是 cocos2d-x 相关的知识点总结: 1. New 和 malloc 的区别: New 和 malloc 都是用于申请动态内存和释放内存的,但是它们...
在Cocos2d-x游戏开发框架中,处理键盘事件对于创建交互式游戏至关重要。Cocos2d-x是一个跨平台的2D游戏开发框架,支持多种操作系统,包括Windows。在这个场景下,我们将深入探讨如何在Windows平台上自定义键盘事件,...
在cocos2d-x 3.0-alpha0版本中,SDK包含了重要的头文件和动态链接库(DLL)文件,这些文件是构建和运行Cocos2d-x游戏的基础组件。本文将深入探讨这些文件的作用以及它们在游戏开发中的关键角色。 首先,头文件在...
通常,这里会包含Cocos2d-x的基础库导入,全局宏定义以及一些常用的类型声明。 "PackTextures.sh"是一个Shell脚本,用于打包游戏资源,如纹理精灵。在Cocos2d-x中,为了优化性能和减少内存占用,游戏的图片资源经常...
### COCOS2d-X by Example Beginner's Guide #### 知识点概览: 1. **Cocos2d-x框架介绍** 2. **C++在游戏开发中的应用** 3. **跨平台游戏开发概述** 4. **游戏设计与开发基础知识** 5. **Cocos2d-x核心组件详解**...
不过,实际开发过程中可能会遇到更复杂的情况,比如某些特殊字符的处理、不同平台的差异等,这时需要深入研究Cocos2d-x的文档和社区资源,找到针对性的解决方案。在不断学习和实践中,你将能更好地掌握这个强大的...
总的来说,利用iconv库可以帮助我们在Cocos2d-x 3.4中轻松解决中文乱码问题,使得游戏本地化和跨平台兼容性更加完善。只要理解了基本的使用方法和流程,就能避免许多不必要的麻烦,提升开发效率。
在IT行业中,游戏开发是一个非常活跃的领域,而Cocos2d-x是一个广泛使用的开源游戏引擎,它允许开发者创建跨平台的2D游戏。本文将深入探讨如何在Cocos2d-x环境中,利用socket技术来实现HTTP下载以及断点续传功能。 ...
本篇文章将详细讲解如何利用Cocos2d-x框架中的音频功能来为您的Uphone游戏增添音乐与音效,并进行一些最终的润色工作。在上一篇文章中,我们已经完成了游戏的基本原型构建,接下来我们将通过添加音效和背景音乐来...
在IT行业中,游戏开发是极具挑战性和创新性的一个领域,而cocos2d则是广泛应用于2D游戏开发的一款开源框架。这个压缩包文件“cocos2d-0.6.9-py3-none-any.whl.zip”正是cocos2d的一个特定版本,用于Python 3环境,...
在cocos2d-x3.0游戏开发框架中,实现资源下载并支持断点续传是一项重要的技术。这里我们主要探讨如何使用curl库来完成这一功能。curl是一个强大的URL传输库,广泛应用于各种网络数据传输场景,包括文件的下载。 ...
总之,"cocos2dx用c++实现MoonWarriors"是一个综合了C++编程、Cocos2d-x游戏引擎特性和游戏设计原理的项目,涵盖了游戏开发的多个关键领域,包括图形渲染、物理模拟、用户交互、资源管理和网络通信等。通过这个项目...
Cocos2d-x使用C++语言进行编程,同时提供了Lua和JavaScript的接口,允许开发者能够用不同语言进行开发,提高了框架的灵活性和易用性。 跨平台游戏开发意味着开发者能够在多种设备上创建统一的游戏体验,无论是在PC...