Cocos2d-Html5--打怪升级之路

Cocos2d-Html5--打怪升级之路

自己正式开始使用cocos2d-html5是在今年的2月份,虽然只是在少量的业余时间使用,不过就时间上来说也要半年多了~
之前就一直很关注这个分支,原因很简单,大学的时候,就一直很想学一些浏览器相关的前端技术 — html,css,js,jquery之类的,但每次都是看了《XXX入门教程》的第一个例子 — 做一个注册登录页面 — 就没兴趣在学下去了 ~
于是就又回研究室搞C++,MFC和图像处理去了 ~
所以cocos2d-html5让自己又看到了希望,因为之前一直用cocos2d-iphone版,期间-x,-python,-javascript (很久以前旧的那个) 也都用过,所以对整套API是非常熟悉的,所以cocos2d-html5的上手可以说是毫无障碍 ~
自己的框架学习习惯就是先大概熟悉下语言(30%就够了),然后是API(10%就够了),然后赶紧开始刷项目练级,在实践中把语言和API的熟练度提升上去 ~
刚开始当然是最简单的,刷了几个简单的UI控件小怪,或是效果,像是CCLabelTTF的简单特效:
接着是一个Timeline的控件:
到此为止差不多大致熟悉了JS语言和框架API与-iphone或-x版的些微差异 ~ 升级到LV5 ~
接着继续刷UI控件小怪,写了个相对复杂的日历控件:
这个东西做完以后,基本上对cocos2d最基础的核心CCLayer,CCSprite,CCAction之类的使用和扩展都有了完整的掌握 ~ 升级到LV8 ~
在这之前的项目,都是用记事本notepad++ (win) / textmate (mac) 来开发,靠cc.log来进行调试的 — 标准的不穿装备全裸练级 ~
当然这个对于刚开始起步是好事情,自己是反对刚接触就搞个牛X的IDE,补全提示功能齐全,这不利于熟悉API,有些时候自动补全,提示玩过头了就导致只是把参数填一下就了事,联函数名都不知道,只知道是cc.xxxxxxx ~
不过既然等级已经到一定程度了,那就该买装备了,于是开始四处找装备,最后确定了WebStrom IDE + MAMP的组合,试用下来也确实是相当不错,开发效率提高了而且调试也轻松多了 ~
于是,就开始考虑去刷高级怪练级,开始难度高的挑战,最终选取的目标,就是把自己2年前做的一个棋牌小游戏从cocos2d-iphone移植到cocos2d-html5,然后在发布到微博和Facebook上面去 ~
这个在当时来说可以算是刷LV30级的Boss,首先这是一个完整的游戏,不是刷个简单的UI控件小怪所能比拟的,再加上后期的平台对接部署这个就脱离了cocos2d-html5的范畴,需要各种浏览器前端知识的支撑 ~
虽然目标很高也很难达到,过程也很曲折,但是在一群NPC — gooole,yahoo.ip,baidu,stackoverflow,各种博客文章 – 的帮助下,总算顺利拿下Boss,虽然并不完美(微博至今不批准审核,连个详细的原因也没有) ~
另外在刷怪成功的同时还顺便将心得做了整理:
这一战可以说是能力全面大幅提升,首先对cocos2d-html5和-iphone分支的区别有了更深的认识;其次JS语言的熟悉度也提升了不止一个档次;再接着cocosbuilder的联合使用也有了掌握;最后还有cocos2d范畴之外的,应用部署,发布的经验和html,css基础知识的掌握 ~ 一口气飙到LV40 ~
游戏做完了,稍作休息,开始寻找下一个目标,毫无疑问cocos2d是个游戏引擎,但是谁说它只能做游呢?
至少cocos2d-html5分支,我看到的是后面的”-html5″ — 这是一个浏览器的窗口,不仅仅是移动平台,是通过浏览器面向世界的窗口 ~
于是下一个挑战的目标, 决定是一个怪是service类的新闻应用,使用cocos2d-html5 + python的架构 ~
说实话这次应用的客户端前端UI之类的完全是没难度,配合cocosbuilder轻松愉快的完成了,难点在于后台的服务器架构实现,再加上通过cocos2d-html5和后台服务器的交互(这里只是http的,没有socket) ~ 完成度不是很高,小升至LV45 ~
应用小怪刷完了,还有什么可能性呢? 这时候想到的,是HTML5的在线简历,一方面自己整理简历中,另一方面想到以前看到的一些不错的HTML5在线简历,很是羡慕,至少比普通的pdf cv要有吸引力多了,而且在一定程度上也是能力的证明 — 至少制作者有这个想法,而且付诸实施,并且实现了 ~
于是就决定刷CV小怪,这个当然也没什么压力,轻松小升至48级 ~
到这里为止,已经用cocos2d-html5做了很多东西,而且是不仅限于游戏范畴的东西,其中最大的一个体会,首先是语言上带来的便利性,对于JS这类动态语言来说相比C++或者OC,在学习难度和使用复杂度上是有绝对的优势的,再加上项目调试的方便快捷,现在的浏览器的内置debugger都是很强大的,项目修改后只要ctrl+s一下马上就生效,不用反复的编译连接安装运行~
那么这种优势,怎么能够把它延伸到移动平台上呢,这时候出现了野生的 — JSBinding ~
虽说是JSB,但是实际上最大的对手是SpiderMonkey,如果能把SpiderMonkey搞定,掌握C++和JS的交互方法,那么JSB也就拿下了 ~
当然还是老规矩,先翻翻文档,然后就是动手上项目,把之前的几个cocos2d-html5做的UI控件拿来做样品,试着在cocos2d-x中来进行交互调用 ~ 过程还是挺曲折的,不过最终还是搞定 ~ LV.50达成 :)
同样顺便整理了下心得(虽然还没完成):
捕获了JSB这个强力的帮手后,自己的第一反应就是 — 之前看来已经走到头的cocos2d-html5的路,又再次延伸下去了 — 因为JSB的存在,使得JS和C++这两个世界得以交互,那就意味着JS世界中的一些好动西完全有可能拿到C++来用 ~
首先的想法自然是数不胜数的JS特效,JS插件,以前就一直很羡慕,原因很简单 — 它们都很炫,都很实用,而且自己看不懂也做不到 – 但是现在不一样了,首先因为cocos2d-html5的帮助,自己已经对JS有了相当的熟悉;其次因为JSB的存在,一些JS插件甚至可以直接拿来在cocos2d-x中使用,即使不能直接用,也一定可以拿来参考并做到cocos2d-html5的实现 ~ 于是就有了下面的各种尝试 ~
以前就很喜欢的手写识别,可以自定义任何复杂的手势:
一个cocos2d的CLI命令行,可以支持游戏运行时的日志输出,逻辑控制,而且可以JSB后在cocos2dx中使用:
至此,LV.60达成 ~
到这里为止,做了不少的项目,于是就有了建一个专门的网页的想法,最自己而言这在以前是做不到的,但是现在有了cocos2d-html5 + cocosbuilder,网页小怪轻松搞定 ~
至此,LV.62达成 ~
到这里对于cocos2d-html5的使用感觉已经是到了80%熟练的成都了,这一点也得到了证实,最近的一道面试题,要求做一个变则三消游戏,听完需求,直接cocos2-html5 + sublime text + chrome 做起,大约三天左右的时间(当然只是业余时间),完成到了一个可以发布的程度 ~ 再花半天的时间完成微博和FB的接入和提交申请(其实80%的时间花在整理素材填写app内容上) ~ 再花半天的时间完成JSB,结合cocos2d-x 可以在ios设备上流畅运行 ~
至此,算是对所掌握的东西的巩固,LV.65达成 ~
灵感总是突如其来的,就在前两天看到了raphaeljs库,一个可以绘制svg矢量图形的,在前端世界大名鼎鼎的JS库,对于崇尚“极简游戏”的我来说,这个当然得拿下,可以不用准备图片,直接svg path生成图形,那当然是再好不过了 ~
于是就有了下面的小老虎(虽然再试还没做优化,性能还比较低):
至此,LV.70达成 ~
回头看看这条练级之路,自己觉得是走的相当精彩,相当愉快的,因为这不是枯燥的练级 ~
对我而言,cocos2d-html5这条路还会继续走下去 ~ 只要一个灵感,一个目标,就算在困难,也一定能到达(实在不行就靠NPC们的帮助了,呵呵) ~
最后要感谢一下cocos2d-html5,让我真正进入了曾经一直想要进入的世界 ~ 对我而言,这个分支不仅仅是的游戏引擎那么简单,它意味着更多 — 那就是视野的开阔,这个极其重要,原来自己相当于是局限在c++/oc和移动平台上,但是通过cocos2d-html5 + JSB 这个范围被无限制的扩大,思维的范围也被扩大,遇到问题时的解决方案搜索空间也就变得更广 ~
现在LV.70 ~ 我想还会继续的 (貌似满级是Lv.999 ) ~
PS:
1.文章里提到的项目基本都开源并上传github了,有兴趣请戳: https://github.com/supersuraccoon/
2.个人建立的CocosLab,有兴趣请戳: http://www.supersuraccoon-cocos2d.com/CocosJSBLab/CocosJSBLab-HTML5/
3.给同样想开始cocos2d-html5之旅的朋友说几句
. cocos2d-html5真的不难
. 自己是JS零基础,前段零基础起步,现在Lv.70,所以你也可以
. 稍微看看看文档,看几篇号的博客教程,然后就开始刷怪练级吧
. cocos2d-html5对于环境硬件要求极低,所以刚开始不要拘泥于什么装备
. 不要眼高手低,觉得这怪等级太低,刷了没意义 ~ 其实你未必能赢 ~
. 初期问题多很正常,在求助真人前,至少找过5个以上NPC,这年头NPC都很强的,呵呵
. 小怪刷几个后,有了一定的经验等级,就可以买点装备,然后刷大怪了
. 可以尝试做个小游戏,但是一定要功能完整
. 尝试部署接入各大平台
. 尝试JSB然后在移动平台运行
. 祝打怪升级愉快 :)


版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


    本文实践自 RayWenderlich、Ali Hafizji 的文章《How To Create Dynamic Textures with CCRenderTexture in Cocos2D 2.X》,文中使用Cocos2D,我在这里使用Cocos2D-x 2.1.4进行学习和移植。在这篇文章,将会学习到如何创建实时纹理、如何用Gimp创建无缝拼接纹
Cocos-code-ide使用入门学习地点:杭州滨江邮箱:appdevzw@163.com微信公众号:HopToad 欢迎转载,转载标注出处:http://blog.csdn.netotbaron/article/details/424343991.  软件准备 下载地址:http://cn.cocos2d-x.org/download 2.  简介2.1         引用C
第一次開始用手游引擎挺激动!!!进入正题。下载资源1:从Cocos2D-x官网上下载,进入网页http://www.cocos2d-x.org/download,点击Cocos2d-x以下的Download  v3.0,保存到自定义的文件夹2:从python官网上下载。进入网页https://www.python.org/downloads/,我当前下载的是3.4.0(当前最新
    Cocos2d-x是一款强大的基于OpenGLES的跨平台游戏开发引擎,易学易用,支持多种智能移动平台。官网地址:http://cocos2d-x.org/当前版本:2.0    有很多的学习资料,在这里我只做为自己的笔记记录下来,错误之处还请指出。在VisualStudio2008平台的编译:1.下载当前稳
1.  来源 QuickV3sample项目中的2048样例游戏,以及最近《最强大脑》娱乐节目。将2048改造成一款挑战玩家对数字记忆的小游戏。邮箱:appdevzw@163.com微信公众号:HopToadAPK下载地址:http://download.csdn.net/detailotbaron/8446223源码下载地址:http://download.csdn.net/
   Cocos2d-x3.x已经支持使用CMake来进行构建了,这里尝试以QtCreatorIDE来进行CMake构建。Cocos2d-x3.X地址:https://github.com/cocos2d/cocos2d-x1.打开QtCreator,菜单栏→"打开文件或项目...",打开cocos2d-x目录下的CMakeLists.txt文件;2.弹出CMake向导,如下图所示:设置
 下载地址:链接:https://pan.baidu.com/s/1IkQsMU6NoERAAQLcCUMcXQ提取码:p1pb下载完成后,解压进入build目录使用vs2013打开工程设置平台工具集,打开设置界面设置: 点击开始编译等待编译结束编译成功在build文件下会出现一个新文件夹Debug.win32,里面就是编译
分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!http://www.captainbed.net前言上次用象棋演示了cocos2dx的基本用法,但是对cocos2dx并没有作深入的讨论,这次以超级马里奥的源代码为线索,我们一起来学习超级马里奥的实
1. 圆形音量button事实上作者的本意应该是叫做“电位计button”。可是我觉得它和我们的圆形音量button非常像,所以就这么叫它吧~先看效果:好了,不多解释,本篇到此为止。(旁白: 噗。就这样结束了?)啊才怪~我们来看看代码:[cpp] viewplaincopyprint?CCContro
原文链接:http://www.cnblogs.com/physwf/archive/2013/04/26/3043912.html为了进一步深入学习贯彻Cocos2d,我们将自己写一个场景类,但我们不会走的太远,凡是都要循序渐进,哪怕只前进一点点,那也至少是前进了,总比贪多嚼不烂一头雾水的好。在上一节中我们建
2019独角兽企业重金招聘Python工程师标准>>>cocos2d2.0之后加入了一种九宫格的实现,主要作用是用来拉伸图片,这样的好处在于保留图片四个角不变形的同时,对图片中间部分进行拉伸,来满足一些控件的自适应(PS: 比如包括按钮,对话框,最直观的形象就是ios里的短信气泡了),这就要求图
原文链接:http://www.cnblogs.com/linji/p/3599478.html1.环境和工具准备Win7VS2010/2012,至于2008v2版本之后似乎就不支持了。 2.安装pythonv.2.0版本之前是用vs模板创建工程的,到vs2.2之后就改用python创建了。到python官网下载版本2.7.5的,然后
环境:ubuntu14.04adt-bundle-linux-x86_64android-ndk-r9d-linux-x86_64cocos2d-x-3.0正式版apache-ant1.9.3python2.7(ubuntu自带)加入环境变量exportANDROID_SDK_ROOT=/home/yangming/adt-bundle-linux/sdkexportPATH=${PATH}:/$ANDROID_SDK_ROOTools/export
1开发背景游戏程序设计涉及了学科中的各个方面,鉴于目的在于学习与进步,本游戏《FlappyBird》采用了两个不同的开发方式来开发本款游戏,一类直接采用win32底层API来实现,另一类采用当前火热的cocos2d-x游戏引擎来开发本游戏。2需求分析2.1数据分析本项目要开发的是一款游
原文链接:http://www.cnblogs.com/linji/p/3599912.html//纯色色块控件(锚点默认左下角)CCLayerColor*ccc=CCLayerColor::create(ccc4(255,0,0,128),200,100);//渐变色块控件CCLayerGradient*ccc=CCLayerGradient::create(ccc4(255,0,0,
原文链接:http://www.cnblogs.com/linji/p/3599488.html//载入一张图片CCSprite*leftDoor=CCSprite::create("loading/door.png");leftDoor->setAnchorPoint(ccp(1,0.5));//设置锚点为右边中心点leftDoor->setPosition(ccp(240,160));/
为了答谢广大学员对智捷课堂以及关老师的支持,现购买51CTO学院关老师的Cocos2d-x课程之一可以送智捷课堂编写图书一本(专题可以送3本)。一、Cocos2d-x课程列表:1、Cocos2d-x入门与提高视频教程__Part22、Cocos2d-x数据持久化与网络通信__Part33、Cocos2d-x架构设计与性能优化内存优
Spawn让多个action同时执行。Spawn有多种不同的create方法,最终都调用了createWithTwoActions(FiniteTimeAction*action1,FiniteTimeAction*action2)方法。createWithTwoActions调用initWithTwoActions方法:对两个action变量初始化:_one=action1;_two=action2;如果两个a
需要环境:php,luajit.昨天在cygwin上安装php和luajit环境,这真特么是一个坑。建议不要用虚拟环境安装打包环境,否则可能会出现各种莫名问题。折腾了一下午,最终将环境转向linux。其中,luajit的安装脚本已经在quick-cocos2d-x-develop/bin/中,直接luajit_install.sh即可。我的lin
v3.0相对v2.2来说,最引人注意的。应该是对触摸层级的优化。和lambda回调函数的引入(嗯嗯,不枉我改了那么多类名。话说,每次cocos2dx大更新。总要改掉一堆类名函数名)。这些特性应该有不少人研究了,所以今天说点跟图片有关的东西。v3.0在载入图片方面也有了非常大改变,仅仅只是