红莲劫焰

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2013年9月1日

摘要: 首先说点题外话,对于任何大型项目来说,coding的规范重要,在cocos2dx-jsbinding这个框架中,javascript是一个绝对核心的脚本语言,99%的游戏逻辑都由js完成。脚本的编写量绝对大于大多数的web项目,掌握javascript的扎实的基础至关重要,这里推荐一篇好的博客,由浅入深的讲解从js的一些编写习惯,到设计模式,值得细细品读。汤姆大叔的博客:http://www.cnblogs.com/TomXu/archive/2011/12/15/2288411.html。 进入正题,今天讨论的是如何使用jsb来处理移动平台的多分辨率适配问题。就目前的移动平台来讲,分辨率.. 阅读全文
posted @ 2013-09-01 23:03 红莲劫焰 阅读(4371) 评论(6) 推荐(0) 编辑

2013年8月25日

摘要: cocos2dx没有直接给出资源下载的api,可能是因为资源的管理每个项目的需求不太一样,所以完整的资源下载功能需要我们自己去实现。 资源下载分为两部分,一部分是资源请求,另一部分是资源文件写入。资源请求模块,cocos2d-x封装了curl的功能,主要实现是extensions\network下的几个类,通过他们我们可以方便的实现Http请求的功能。资源的写入主要是利用fwrite函数将数据流写入文件。完成了C++模块的实现以后,我们要做的是绑定到js,这样我们就可以在js端发起请求,将资源下载到手机。这里C++绑定还有Http请求的封装主要借鉴了https://github.com/... 阅读全文
posted @ 2013-08-25 22:12 红莲劫焰 阅读(2216) 评论(0) 推荐(1) 编辑

2013年8月16日

摘要: 在线更新是用脚本编写游戏逻辑的特有功能,由于脚本语言是边解释边编译的特性,使得游戏在运行的时候可以通过下载最新的脚本来执行游戏逻辑。在不修改Native接口的情况下,在线更新每次更新只需要下载一个(500k-1M)的zip脚本压缩包即可。相比较而言,传统的apk打包或者ios的ipa打包且不说打包花费的时间,用户每次更新必须重新下载整个程序包(一般在30M以上,甚至到几百M),更要命的是ios上传发布必须通过苹果审核,一个审核周期就是至少一周,还有几率被苹果打回,其实有的时候只是修改了一个比较重要的bug而已。cocos2d-x的CCFileUtil有一个比较重要的功能,就是设定资源的搜... 阅读全文
posted @ 2013-08-16 16:54 红莲劫焰 阅读(3493) 评论(0) 推荐(2) 编辑

摘要: 实际做项目的时候会有很多的XML配置文件,有些XML多达上千行,比如物品,武将的配置,一般的手游项目是直接解析XML文件,这就引发2个问题。 1.XML是明文,代码中解析必要要做加密。 2.有些配置过大,必须放在载入的时候解析存入内存,这就会牺牲载入的时间。 针对cocos2d-x jsb的特点。我们把xml全部转成json,这有什么好处呢,第一是由于是js文件,可以转成bytecode,省去了加密解密的过程,第二可以把大数据的列表型xml直接转成Map格式,省去了解析的时间。 这里推荐一个xml2js的利器https://github.com/Leonidas-from-... 阅读全文
posted @ 2013-08-16 16:09 红莲劫焰 阅读(1554) 评论(0) 推荐(0) 编辑

2013年8月13日

摘要: 如果你是一个cocos2d-x的老手,那你可以忽略这篇博文,如果你是一个接触过javascript,想通过HTML5做游戏的,但是苦于不知道如何下手,那么这篇博文可能会帮到你。 cocos2dx-jsb的主要运用的语言是javascript,其实简单的说jsb就是cocos2d-x提供的C++ -> javascript的一系列接口,通过编写js的脚本来调动C++的接口做一系列的动作。实际的运行顺序是:js执行接口->spidermonkey解析js,判断调用了哪个C++接口->执行2dx的相应的接口->opengl 渲染... 知道了这个顺序以后,关键是怎么来写js呢 阅读全文
posted @ 2013-08-13 18:11 红莲劫焰 阅读(4971) 评论(0) 推荐(0) 编辑

2013年8月12日

摘要: 下载最新的cocos2d-x,解压完之后呈现出如下的目录结构:cocos2dx:框架核心目录,里面是存放了2dx引擎的核心代码。CocosDenshion:各个平台的音效实现。document:文档。extension:例外目录,你可以理解为扩展目录,存放了一些官方的扩展。external:扩展需要用到的库。licenses:各种证书。plugin:plugin-x项目目录,plugin-x是一个可以快速接入第三方SDK的框架,官网链接http://www.cocos2d-x.org/projects/cocos2d-x/wiki/Plugin-X_Overviewprojects:新建出来的 阅读全文
posted @ 2013-08-12 23:02 红莲劫焰 阅读(1986) 评论(2) 推荐(1) 编辑

摘要: 俗话说,工欲行其事,必先利其器。开发的时候有一款好的IDE,对开发效率的提升是非常帮助的,在此强烈推荐Webstorm,官网网址http://www.jetbrains.com/webstorm/ 主要的几个优点: 1.自动提示方法名,属性名,函数名,只要是定义过的名字,引入的js文件,都可以提示,没有做不到,只有想不到,让你事半功倍。 2.任意目录可以作为项目,大大提高了灵活性,大部分js项目是都是web项目,webstorm都可以引入进来,并自动导入这个目录下的所有文件,你都可以在左侧的资源界面中找到它。 3.js错误代码,警告代码提示,比如少个分号,或者关键字拼写错... 阅读全文
posted @ 2013-08-12 22:07 红莲劫焰 阅读(1048) 评论(8) 推荐(0) 编辑

摘要: 近年来HTML5风起云涌,特别在移动端已经被更多的人熟识。H5跨平台,在线更新等特性,被人们津津乐道。然后就出现了各种H5的框架,甚至多达100种,真是让开发者眼花缭乱,笔者作为一个从事H5游戏开发一年的开发者,从我这一年的摸索,比较,最终选择cocos2d-x jsbinding(以下简称jsb)作为移动游戏开发框架,并在接下来的几篇博文中慢慢讲述一些我对这个框架的认识和感受。 就目前来讲,移动端的框架最火,最牛叉的非cocos2d-x莫属,甚至达到了每上10款手游,7款是cocos2d-x的境界。jsb作为cocos2d-x的javascript脚本调用版本,保持了cocos2d-x... 阅读全文
posted @ 2013-08-12 13:23 红莲劫焰 阅读(2853) 评论(1) 推荐(0) 编辑