11 2013 档案
摘要:最近发现一个有趣的东西:visual studio的项目属性表我下载了cocos2d-x-3.0alpha1,然后发现HelloLua项目配置里没有配include搜索目录和依赖库以及一个Marco $(EngineRoot),但是编译的时候居然不报错。经查找发现在cocos/2d目录下多了两个文件cocos2d_headers.props和cocos2dx.props。这俩文件的目的就是把搜索目录和依赖库这种事情事先配置好,然后需要依赖这个库(libcocos2d)的项目只需要添加这两个项目属性表就可以了,然后就会感觉生活轻松很愉快。打开属性管理器 VIEW->Property Man
阅读全文
摘要:下面分2点来说:1、时间消耗点:io和现场解析解决方案:加载过的骨骼动画就不要每次重新加载,不要每次都去加载json文件和atlas,我推荐使用static CCSkeletonAnimation* createWithData (SkeletonData* skeletonData)这就需要你把解析SkeletonData数据保存起来。static CCSkeletonAnimation* createWithFile (const char* skeletonDataFile, Atlas* atlas, float scale = 1);这个方法又要加载文件又要现场解析atlas和jso
阅读全文
摘要:首先感谢下ZeroBrane Studio。这里拿cocos2dx/samples/Lua/HelloLua做例子来说明,其他的都是同样道理。1、下载调试Lua所需的IDE,地址在这。有经济实力的请支持这个他们这款牛逼的开源软件。然后解压(我的目录是C:\Users\bailu\Desktop\ZeroBraneStudioEduPack-0.39-win32)。2、开启调试服务器:运行zbstudio.exe->Project->Start Debug Server。如果你这是灰的说明已经开启了3、选择项目目录:Project->Project Directory->
阅读全文
摘要:我用的是一个万能转换法,原理是先用CCSprite加载.pvr.ccz,然后把它绘制到一个CCRenderTexture上,然后再保存到文件里。这方法其实不只.pvr.ccz文件,其他所有能被cocos2dx直接加载的文件都可以用这种转换。有个弊端就是可能跟源文件数据稍有些差异(我这个就是看起来有点...
阅读全文
摘要:直接上代码bool HelloWorld::init(){ ////////////////////////////// // 1. super init first if ( !Layer::init() ) { return false; } HttpRequest* request = new HttpRequest(); request->setUrl("http://neoimaging.beareyes.com.cn/png2/ni_png_2_1518.png"); request->setRequestType(Ht...
阅读全文
摘要:目的是要把粒子挂载到骨骼动画的某个一个部件上,其实最主要是找对位置。预览效果,左手红火,右手蓝火,很炫吧:)//initbool HelloWorld::init(){ ////////////////////////////// // 1. super init first if ( !Layer::init() ) { return false; } CCSkeletonAnimation* skeletonNode = CCSkeletonAnimation::createWithFile("spineboy.json", "spineb...
阅读全文
摘要:ndk_r9编译通过,里面带了自动生成代码的脚本(tool/createPBFile.bat)。下载地址
阅读全文
摘要:cocos2dx3.0+vs2012编译通过。主要是通过body->SetTransform来设置body的位置和角度,然后自己写个ContactListener来监听碰撞事件源代码下载#include "HelloWorldScene.h"#include "VisibleRect.h"#include "GLES-Render.h"#include "cocos-ext.h"USING_NS_CC;USING_NS_CC_EXT;#define PTM_RATIO 32Scene* HelloWorld:
阅读全文
摘要:#include #include void OnProcessExceptionHandler(int sigl){ do { std::string str = ""; void* arrayList[128]; int count = backtrace(arrayList, 128); char** pStr = backtrace_symbols(arrayList, count); if (pStr == NULL) break; for (int i=0; i...
阅读全文
摘要:1: 运行程序,单击鼠标左键点亮相应位置的字母,比如:0、1、2、/ 等2: 选择 Edit->Open Image Manager。弹出一个“Image Manager" 对话框3: 点击Image->import Image.在弹出的对话框中选择对应的图片路径4: 然后指定对应的id。此id就是要替换的字符的标识。可以将鼠标悬停在对应的格子上,右下角的“48:30"中的第一项即是Id号5: 设定x,y的偏移量(看需求)6: 点ok并逐一添加相应的字体7: 点击Option->Export options,在弹出的对话框中选择 Bit depth:32;
阅读全文
摘要:// 矩形和圆形碰撞检测bool IsCirlceCollisionRect(float circleXPos, float circleYPos, float radius, float rectX, float rectY, float rectW, float rectH){ float arcR = radius; float arcOx = circleXPos; float arcOy = circleYPos; //分别判断矩形4个顶点与圆心的距离是否= rectY && arcOy rectX + rectW) minDi...
阅读全文
摘要:std::list split_utf8_string(const std::string& text){ std::list temp; do { if (text.length() <= 0) break; std::string::const_iterator begin = text.begin(); std::string::const_iterator end = text.end(); while (begin != end) { unsign...
阅读全文
摘要://Opacity 0完全透明 255完全不透明//ALPHA 0完全透明 1完全不透明CCRenderTexture* pRT = CCRenderTexture::create(480,320);pRT->setPosition(Point(480,320));addChild(pRT,1);CCSprite* pSpr1 = CCSprite::create("1.png");pSpr1->setAnchorPoint(CCPoint::ZERO);ccBlendFunc blend;blend.src = GL_ONE;blend.dst = GL_ZE
阅读全文