⑴ cocos2dx怎么用
Cocos2d-x是一个开源的移动2D游戏框架,MIT许可证下发布的。这是一个C++ Cocos2d-iPhone项目的版本。Cocos2d-X发展的重点是围绕Cocos2d跨平台,Cocos2d-x提供的框架。
手机游戏,可以写在C++或者Lua中,使用API是Cocos2d-iPhone完全兼容。Cocos2d-x项目可以很容易地建立和运行在iOS,Android,黑莓Blackberry等操作系统中。Cocos2d-x还支持Windows、Mac和Linux等桌面操作系统,因此,开发者编写的源代码很容易在桌面操作系统中编辑和调试。
cocos2d-x主要功能:
流程控制(Flow control):非常容易地管理不同场景(scenes)之间的流程控制。
精灵(Sprites):快速而方便的精灵。
动作(Actions):告诉精灵们该做什么。可组合的动作如移动(move)、旋转(rotate)和缩放(scale)等更多。
特效(Effects):特效包括波浪(waves)、旋转(twirl)和透镜(lens)等更多。
平面地图(Tiled Maps):支持包括矩形和六边形平面地图。
转换(Transitions):从一个场景移动到另外一个不同风格的场景。
菜单(Menus):创建内部菜单。
文本渲染(Text Rendering):支持标签和HTML标签动作。
文档(Documents):编程指南 + API参考 + 视频教学 + 很多教你如何使用的简单测试例子。
BSD许可:尽管用就是了。
基于Pyglet:没有外部的依赖。
基于OpenGL:支持硬件加速。
cocos2d-x基本介绍:
Cocos2d-x是MIT许可证下发布的开源游戏引擎,游戏开发快速、简易、功能强大。2015年2月,触控科技正式推出了游戏开发一站式解决方案cocos,将Cocos 2d-x、Cocos Studio、Cocos Code IDE等框架及工具整合在一起。
Cocos2d-x核心优势在于允许开发人员利用C++、Lua及Javascript来进行跨平台部署,覆盖平台包括iOS、Android、Windows Phone、Windows, Mac OSX 3及Tizen等等,省事省力省成本。
Cocos2d-x用户不仅包括个人开发者和游戏开发爱好者,还包括许多知名大公司如Zynga、Wooga、Gamevil、Glu、GREE、Konami、TinyCo、HandyGames、IGG及Disney Mobile等。截止2013年9月,全球基于Cocos2d-x引擎的游戏下载量高达逾15亿,其中许多还占据苹果应用商店(AppStore)和谷歌应用商店(Google Play)排行榜。同时许多公司如触控、谷歌、微软、ARM、英特尔的工程师在Cocos2d-x领域也非常活跃。
另外,Cocos2d-x版本升级困难的问题,是许多开发者的一大苦恼,而经过整合的cocos,解决了Cocos2d-x的这一问题。升级cocos,其相匹配的Cocos2d-x也将自动进行升级,这极大的提高了开发效率,为开发者们带来便利,同时也为Cocos2d-x的进一步发展打下基础。
cocos2d-x特点:
易于使用:游戏开发者可以把关注焦点放在游戏设置本身,而不必消耗大量时间学习晦涩难懂的OpenGL ES,此外,Cocos2d-x还提供了大量的规范。
高效:Cocos2d-x基于OpenGL ES进行图形渲染,从而让移动设备的GPU性能发挥到极致。
灵活:方便扩展,易于集成第三方库。
免费:基于MIT协议的免费开源框架,用户可以放心使用,不用担心商业授权的问题。
社区支持:关心Cocos2d-x开发者自发建立了多个社区组织,可以方便查阅各类技术资料
⑵ 自学cocos2d js游戏开发应该按什么步骤进行
跟你简要说一下我的自学路,以免你走弯路
背景:
有工作,而且很忙;在不影响工作基础上用业余时间鼓捣(经常会因为工作耽搁学习进度);基本没技术背景(初中qbasic、高中pascal半吊子),大学文科,工作也不是搞代码。因此我感觉我的自学路跟你还是挺契合的。
1
两年前的一天,决定要做独立游戏制作人。选定引擎cocos2d,开始学习objective-c语言;(如果你打算只在iOS平台开发可以学obj-c配合cocos2d或者sprite kit;如果打算跨平台就要用cocos2d-x和c++了;当然unity什么的也不错但是我还没尝试过,一直很向往)
2
我跳过了iOS程序开发(似懂非懂看完了斯坦福那一系列的教学视频),结合当时情况直接选择了cocos2d引擎,这时开始接触 @吴一刀 推荐的博客;我主要看的是子龙山人<子龙山人 - 博客园>、Ray Wenderlich<Ray Wenderlich>、Himi<黑米GameDev街区>这些博客里最基本的例子,知易那个以我当时的水平还看不懂。
3
尝试开始设计自己的简单游戏,我做打地鼠!当然比教学例子里的打地鼠复杂多了
4
这个过程中发现自己懂的实在是不够,所以又开啃这本书:Learn cocos2d 2 by Steffen Itterheim & Andreas Low
5
慢慢的发现需要一些趁手的工具和编辑器,并发展出一套自己构建于cocos2d之上的游戏设计架构。我目前的情况是这样:
关卡编辑我使用plist文件配合自己写的类;
sprite sheet使用TexturePacker<TexturePacker>;
动画/UI编辑最初自己手写太累,后来选择了cocosbuilder,请注意现在这个软件已经停止维护,转而引导用户使用SpriteBuilder<SpriteBuilder>(域名都做了自动跳转;SpriteBuilder我木有研究过,建议你研究一下)。
粒子编辑我自己还没实际用到,如果真正需要我感觉cocosbuilder的够我用的。//更新:后来用到了ParticleDesigner和cocosbuilder两个软件的粒子编辑混搭
我当时遇到的一个大麻烦是如何让cocosbuilder、cocos2d版本互相兼容且cocosbuilder无问题。大概情况是这样:cocosbuilder2.1和cocos2d-iphone2.0及2.1版本都不协调怎么办?;What version of Cocosbuilder and Cocos2d-iphone should I choose?
目前我使用的cocosbuilder 2.1版本(渐变层有bug、并且很可惜动画播放完没有触发消息的机制,我只好把每个动画时长都手动记录一下自己处理)
======3月12日更新======
在 @GarfieldKwong 指点下发现这个版本动画播放完是可以触发消息机制的,更高级版本3.x支持的效果应该是在动画中就加入callback的关键帧
新技能get√
具体代码可见下面学习案例的第一个例子里Explosion部分
=====================
cocosbuider的学习可以看两个例子Creating a Game with CocosBuilder;Introction to CocosBuilder;然后就是多用多尝试。
6
整个学习过程要学会查资料、学会寻求帮助,我主要用的stackoverflow(话说刚刚发现stackoverflow的reputation喜过15,终于可以投票了:)
在学习过程中得到了子龙山人(我认为本尊是这位 @屈光辉 )、LearnCocos2d作者Steffen、 @kubisoft 以及众多网上朋友的帮助,再次表示感谢。
7
硬件及开发者资格:看完c++开始看obj-c,这个过程一直是使用的vmware虚拟机安装的mac系统写程序;然后入手一个最便宜的mac pro、以及iPhone,尝试玩各种游戏;从看c++开始大约过了1年半(已经有非常简陋的游戏demo)才真正购入iOS开发者资格并开始真机测试。
8
尝试过的一些其他工具、各种弯路和坑、以及发散内容:
可以拖拽方式写代码的stencyl <Stencyl: Make iPhone, iPad, Android & Flash Games without code>;
最初学的不是ojc-c而是谭浩强老师的c++程序设计(虽然有人不喜谭老师,但那书是中文的让我对面对对象程序设计有一些初步的概念,再看英文的obj-c不至于太摸不着头脑,反正手头正好有这么一本买了6年没看的c++。。。);
尝试过<Tiled Map Editor>但自己目前的坑没有用到;
尝试过一点物理引擎和粒子,但自己目前的坑没有用到;现在粒子用到了,做了火焰等效果,也挺美的;但是一定要注意CPU占用优化,内存方面我最低支持4S没遇到大问题
学习音乐制作,这个我小时候学琴一直也喜欢音乐所以有一点点底子,如果没有基础可能上手有门槛;开始用的软件LMMS,但是音源插件在64位系统的问题我一直没解决掉时间精力也不多,所以是暂时停滞了;最近发现Garage Band可能也可以写歌;另外还试过一个很有历史的微软的音乐自动编辑器,很好玩,用来做背景音乐也不错。
入手手绘板学画画(这中间纠结了好久才决定用位图不用矢量图),如果你能找到热爱游戏的美术同学一起搞那最好不过。但是我一直对画画心痒难搔。。。所以入了这个深坑,晒一晒:
转载
z