上一页 1 ··· 33 34 35 36 37 38 39 40 41 ··· 52 下一页
摘要: cocos2d 2.0之后加入了一种九宫格的实现,主要作用是用来拉伸图片,这样的好处在于保留图片四个角不变形的同时,对图片中间部分进行拉伸,来满足一些控件的自适应(PS:比如包括按钮,对话框,最直观的形象就是ios里的短信气泡了),这就要求图片资源的中间部分是纯色或者是简单的渐变了!1.cocos2d中九宫格CCScale9Sprite的实现(1)原理cocos2d的实现非常巧妙,是通过1个CCSpriteBatchNode和9个CCSprite来实现的,原理很简单,通过将原纹理资源切割成9部分(PS: 这也是叫九宫格的原因),根据想要的尺寸,完成以下的三个步骤:a. 保持4个角部分不变形b. 阅读全文
posted @ 2013-09-05 11:10 zhepama 阅读(860) 评论(0) 推荐(0) 编辑
摘要: 1:C++中调用js方法:问题:ios中当用户通过home键将游戏转入后台时,调用js中的暂停游戏方法;AppDelegate::applicationDidEnterBackground() 和 applicationDidEnterForeground()方法是C++方式处理程序进入后台与前台的代码,在此处添加C++调用js的代码:?//version 2.1.3ScriptingCore* sc = ScriptingCore::getInstance();jsval nsval;JS_GetProperty(sc->getGlobalContext(), sc->getGl 阅读全文
posted @ 2013-09-05 10:30 zhepama 阅读(858) 评论(1) 推荐(0) 编辑
摘要: 1.js调用c++函数在c++中声明函数,名为functionCpp,通过spidermonkey中jsapi的JS_DefineFunction绑定一个js函数,名为functionJS,此函数名可在js中直接调用,并可以传参,参数由functionCpp接收。2.c++调用js函数在js中声明函数,名为functionJS,通过spidermonkey中jsapi的JS_CallFunctoionName(也可用JS_CallFunction,但参数不一样),c++调用该函数,并传入参数,参数由functionJS接收。以上两种方法皆可接收返回值。示例代码:js中 var haha ... 阅读全文
posted @ 2013-09-05 10:29 zhepama 阅读(1632) 评论(0) 推荐(0) 编辑
摘要: 本文档主要涵盖如何嵌入SpiderMonkey javascript引擎到你自己的c++程序中。JavaScript在浏览器端已经被广泛使用了。但是,Mozilla的javascript引擎可以被嵌入到任何c++程序中,而不仅仅是应用于浏览器。许多应用程序开发可以通过脚本化的方式获益,这些程序可以使用SpiderMonkey API让c++代码里面跑js代码。What SpiderMonkey does?Javascript引擎编译并执行js脚本。引擎本身负责脚本执行时的对象内存分配,垃圾收集等工作。SpiderMonkey支持Javascript 1.0-1.8版本。Js 1.3以及后来的版 阅读全文
posted @ 2013-09-05 10:23 zhepama 阅读(3317) 评论(0) 推荐(0) 编辑
摘要: 第一部分:配置安装环境cxx-generator是由Zynga工程师贡献的C++代码绑定到js工具。用于将cocos2d-x 的c++代码,生成相应的js绑定代码(由c++写成),然后将这些函数注册到spidermonkey的解释器中。通过将js代码映射成c++代码,就可以使用相应的js接口了。所需要的环境mac os x系统python2.7py-yamlcheetah (for target language templates)libclang, from clang 3.1前三个可以通过macports自动安装macports下载地址http://www.macports.org/in 阅读全文
posted @ 2013-09-05 10:22 zhepama 阅读(353) 评论(0) 推荐(0) 编辑
摘要: 如果没有预先加载图片,则可以通过addImageAsync()函数实现异步加载,该函数通过创建一个加载线程来加载图片,并且在主线程中通过调用回调函数来读取该图片资源纹理。其主要过程如下:1.创建线程,用于后台加载图片2.将对于需要加载的图片放入图片资源队列中3.callback函数设定,用于将加载完成的图片转为纹理,等待使用其调用是由CCTimer::update调用的。4.addImageAsyncCallBack函数在处理完纹理转换,还会调用addImageAsync传入的SEL_CallFuncO selector,实现用户加载图片纹理之后的具体处理。void addImageAsync 阅读全文
posted @ 2013-09-05 10:21 zhepama 阅读(1068) 评论(0) 推荐(0) 编辑
摘要: 写程序,和做其他的事情一样,一开始要学招式,模仿用招式,最后才可以谈创新谈无招;但是现在人好像都忽略了这个常识。没开始学呢,就天马行空的想,那是浅薄。*****************************我们通过CCNode的position设定元素的位置使用的是相对与其父节点的本地坐标系而非世界坐标系坐标。世界坐标系和GL坐标系一致,原点在屏幕左下角,x轴向右,y轴向上。*****************************convertToWorldSpace方法可把基于当前节点的本地坐标系下的坐标转换到世界坐标系中。*****************************co. 阅读全文
posted @ 2013-09-05 10:20 zhepama 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 在Xcode4.1中有一个工具叫Network Link Conditioner,可以让用户模拟不同的网络连接和带宽,可供Mac和iOS开发者测试自己的程序在不同网络环境下的表现。在Xcode4.3中,此工具不再随Xcode工具提供,需要单独下载。在Xcode4.3中通过Xcode->Open Developer Tool->More Developer Tools…菜单可进入Apple开发者下载中心,Network Link Conditioner包含在Hardware IO Tools工具包中,点击下载。下载安装后,可看到其中有一个Network Link Conditione 阅读全文
posted @ 2013-08-29 11:12 zhepama 阅读(493) 评论(0) 推荐(0) 编辑
摘要: cocos2dx没有直接给出资源下载的api,可能是因为资源的管理每个项目的需求不太一样,所以完整的资源下载功能需要我们自己去实现。 资源下载分为两部分,一部分是资源请求,另一部分是资源文件写入。资源请求模块,cocos2d-x封装了curl的功能,主要实现是extensions\network下的几个类,通过他们我们可以方便的实现Http请求的功能。资源的写入主要是利用fwrite函数将数据流写入文件。完成了C++模块的实现以后,我们要做的是绑定到js,这样我们就可以在js端发起请求,将资源下载到手机。这里C++绑定还有Http请求的封装主要借鉴了https://github.com/... 阅读全文
posted @ 2013-08-29 10:35 zhepama 阅读(674) 评论(0) 推荐(0) 编辑
摘要: 在线更新是用脚本编写游戏逻辑的特有功能,由于脚本语言是边解释边编译的特性,使得游戏在运行的时候可以通过下载最新的脚本来执行游戏逻辑。在不修改Native接口的情况下,在线更新每次更新只需要下载一个(500k-1M)的zip脚本压缩包即可。相比较而言,传统的apk打包或者ios的ipa打包且不说打包花费的时间,用户每次更新必须重新下载整个程序包(一般在30M以上,甚至到几百M),更要命的是ios上传发布必须通过苹果审核,一个审核周期就是至少一周,还有几率被苹果打回,其实有的时候只是修改了一个比较重要的bug而已。cocos2d-x的CCFileUtil有一个比较重要的功能,就是设定资源的搜索路径 阅读全文
posted @ 2013-08-29 10:33 zhepama 阅读(425) 评论(0) 推荐(0) 编辑
上一页 1 ··· 33 34 35 36 37 38 39 40 41 ··· 52 下一页