上一页 1 ··· 4 5 6 7 8 9 10 下一页
摘要: //WidgetSlideListView.hclass WidgetEaseInListView : public cocos2d::gui::UIListView{public: static WidgetEaseInListView* create(cocos2d::gui::UIListView* pAnthor=NULL); void doEaseIn(bool bRight2Left=true);protected: virtual void copySpecialProperties(cocos2d::gui::Widget* model);protected: virtual 阅读全文
posted @ 2014-01-26 14:30 MrBlue 阅读(1607) 评论(0) 推荐(0) 编辑
摘要: 效果图//ShadowLayer.hclass ShadowLayer : public CCLayer{protected: ShadowLayer() :m_pRender(NULL) ,m_pShadow(NULL) {} ~ShadowLayer() { CC_SAFE_RELEASE(m_pRender); CC_SAFE_RELEASE(m_pShadow); }public: static ShadowLayer* create(CCNode* pRender,const CCPoint& ptOffse... 阅读全文
posted @ 2014-01-26 13:32 MrBlue 阅读(2921) 评论(4) 推荐(0) 编辑
摘要: 昨天吃饭看见同事演示他做的翻牌效果,感觉不错,我心血来潮也来搞个,很简单直接上代码。class FlipCard : public CCNode{public: CREATE_FUNC(FlipCard); virtual bool init() { if (CCNode::init()) { m_pFront = CCNode::create(); m_pBack =CCNode::create(); m_pBack->setVisible(false); a... 阅读全文
posted @ 2014-01-12 21:12 MrBlue 阅读(402) 评论(0) 推荐(0) 编辑
摘要: 转自http://blog.csdn.net/langresser_king/article/details/8426708(未完成)1、2d游戏最占内存的无疑是图片资源。2、cocos2d-x不同平台读取纹理的机制不同。ios下面使用CGImage,android和windows下是直接调用png库。我测试了下,使用png库直接读取png会比CGImage还要节约1mb左右内存(图片所占内存4mb)但是速度要比CGImage慢一倍。时间和空间如何取舍就看实际情况了。不过最佳的选择似乎是pvr(即使android版本,即使不使用pvrtc4)。3、一般来说,我们可以直接使用 w * h * b 阅读全文
posted @ 2013-12-24 09:53 MrBlue 阅读(459) 评论(0) 推荐(0) 编辑
摘要: 转载http://zhidao.baidu.com/link?url=JTUKP5quGfMQixLZSvtC2XlKMkQDyQbYW72_DRyD6KDRpkLs8_6poQtKkwsyqzU8q5jP3wLDd01kWYJc7oc4jK由于一些特定的原因,程序并没有使用plist方式打包资源,而现在使用的是零散的小图片。在运行时,发现会出现某些图片显示模糊的情况。找到的原因如下:纹理在初始化的时候默认调用了setAntiAliasTexParameters接口,而该接口设置GL_TEXTURE_MIN_FILTER和GL_TEXTURE_MAG_FILTER为GL_LINEAR。而使用G 阅读全文
posted @ 2013-12-12 20:59 MrBlue 阅读(923) 评论(0) 推荐(0) 编辑
摘要: 先看下效果制造这个椭圆高亮区域所使用原图是附上代码bool HelloWorld::init(){ ////////////////////////////// // 1. super init first if ( !CCLayer::init() ) { return false; } CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize(); CCPoint origin = CCDirector::sharedDirector()->getVis... 阅读全文
posted @ 2013-12-03 14:32 MrBlue 阅读(4777) 评论(0) 推荐(0) 编辑
摘要: 最近发现一个有趣的东西:visual studio的项目属性表我下载了cocos2d-x-3.0alpha1,然后发现HelloLua项目配置里没有配include搜索目录和依赖库以及一个Marco $(EngineRoot),但是编译的时候居然不报错。经查找发现在cocos/2d目录下多了两个文件cocos2d_headers.props和cocos2dx.props。这俩文件的目的就是把搜索目录和依赖库这种事情事先配置好,然后需要依赖这个库(libcocos2d)的项目只需要添加这两个项目属性表就可以了,然后就会感觉生活轻松很愉快。打开属性管理器 VIEW->Property Man 阅读全文
posted @ 2013-11-27 10:17 MrBlue 阅读(1608) 评论(0) 推荐(0) 编辑
摘要: 下面分2点来说:1、时间消耗点:io和现场解析解决方案:加载过的骨骼动画就不要每次重新加载,不要每次都去加载json文件和atlas,我推荐使用static CCSkeletonAnimation* createWithData (SkeletonData* skeletonData)这就需要你把解析SkeletonData数据保存起来。static CCSkeletonAnimation* createWithFile (const char* skeletonDataFile, Atlas* atlas, float scale = 1);这个方法又要加载文件又要现场解析atlas和jso 阅读全文
posted @ 2013-11-26 09:49 MrBlue 阅读(5901) 评论(4) 推荐(0) 编辑
摘要: 首先感谢下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-> 阅读全文
posted @ 2013-11-19 18:14 MrBlue 阅读(7341) 评论(0) 推荐(0) 编辑
摘要: 我用的是一个万能转换法,原理是先用CCSprite加载.pvr.ccz,然后把它绘制到一个CCRenderTexture上,然后再保存到文件里。这方法其实不只.pvr.ccz文件,其他所有能被cocos2dx直接加载的文件都可以用这种转换。有个弊端就是可能跟源文件数据稍有些差异(我这个就是看起来有点... 阅读全文
posted @ 2013-11-12 20:31 MrBlue 阅读(10786) 评论(6) 推荐(0) 编辑
摘要: 直接上代码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... 阅读全文
posted @ 2013-11-08 18:19 MrBlue 阅读(1787) 评论(0) 推荐(0) 编辑
摘要: 目的是要把粒子挂载到骨骼动画的某个一个部件上,其实最主要是找对位置。预览效果,左手红火,右手蓝火,很炫吧:)//initbool HelloWorld::init(){ ////////////////////////////// // 1. super init first if ( !Layer::init() ) { return false; } CCSkeletonAnimation* skeletonNode = CCSkeletonAnimation::createWithFile("spineboy.json", "spineb... 阅读全文
posted @ 2013-11-08 14:03 MrBlue 阅读(8537) 评论(0) 推荐(0) 编辑
摘要: ndk_r9编译通过,里面带了自动生成代码的脚本(tool/createPBFile.bat)。下载地址 阅读全文
posted @ 2013-11-07 19:53 MrBlue 阅读(501) 评论(0) 推荐(0) 编辑
摘要: 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: 阅读全文
posted @ 2013-11-05 14:40 MrBlue 阅读(941) 评论(0) 推荐(0) 编辑
摘要: #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... 阅读全文
posted @ 2013-11-04 23:13 MrBlue 阅读(483) 评论(0) 推荐(0) 编辑
摘要: 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; 阅读全文
posted @ 2013-11-04 23:09 MrBlue 阅读(589) 评论(0) 推荐(0) 编辑
摘要: // 矩形和圆形碰撞检测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... 阅读全文
posted @ 2013-11-04 23:08 MrBlue 阅读(1893) 评论(0) 推荐(1) 编辑
摘要: 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... 阅读全文
posted @ 2013-11-04 23:07 MrBlue 阅读(938) 评论(0) 推荐(0) 编辑
摘要: //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 阅读全文
posted @ 2013-11-04 23:02 MrBlue 阅读(2017) 评论(0) 推荐(0) 编辑
摘要: int main(){ _CrtSetDbgFlag(_CrtSetDbgFlag(_CRTDBG_REPORT_FLAG) | _CRTDBG_LEAK_CHECK_DF); _CrtSetBreakAlloc(0); new int(10);}编译运行,vs的output里会打出Detect memory leak,后面会跟一个obj id比方是532435,然后再按照下面修改程序。int main(){ _CrtSetDbgFlag(_CrtSetDbgFlag(_CRTDBG_REPORT_FLAG) | _CRTDBG_LEAK_CHECK_DF); _CrtSetBrea... 阅读全文
posted @ 2013-10-22 00:29 MrBlue 阅读(275) 评论(0) 推荐(0) 编辑
摘要: [转]C程序内存区域分配(5个段作用)2012-08-10 14:45:32|分类:C++基础|字号订阅参考:http://www.360doc.com/content/11/0330/21/1317564_105977930.shtmlhttp://hi.baidu.com/bitcore/blog/item/77c521c65f4512d7d10060eb.htmlhttp://apps.hi.baidu.com/share/detail/22734757http://my.oschina.net/alphajay/blog/3870一、C语言可执行代码结构名称内容代码段可执行代码、字符串 阅读全文
posted @ 2013-10-01 15:57 MrBlue 阅读(300) 评论(0) 推荐(0) 编辑
摘要: 全局变量:1)具有外部链接性。如果你在一个.h里写 int a;,那每个包含这个头文件的文件都相当于写了这行代码,编译时就会报错“重复定义的符号”。正确的做法是在.h先声明这个变量:extern int a;然后某个一个cpp里定义它:int a = 0;。同理你在使用这个变量时可以直接包含上面的.h,也可以不包含.h,直接在cpp中声明这个变量(extern int a),然后使用它。2) 和全局静态变量一样,被分配在静态存储区。全局静态变量1)具有内部链接性。如果你在一个.h里写static int a =0;,那相当于每个包含这个头文件的文件都写了这行代码,但是不会报错,他们只是名字相同 阅读全文
posted @ 2013-10-01 15:45 MrBlue 阅读(1186) 评论(0) 推荐(0) 编辑
摘要: 逼不得已不要用这个,const_cast 阅读全文
posted @ 2013-09-13 14:19 MrBlue 阅读(1449) 评论(0) 推荐(0) 编辑
摘要: std::bind是个c++推出的新的特性,非常有用,让你写起来率试不爽。#include using namespace std;#include int main() { cout int{ return a+b; },placeholders::_1,2); cout<<a(1)<<endl; //小相当于调用这个匿名函数时传的参数是(1,2) return 0;} 阅读全文
posted @ 2013-08-16 15:05 MrBlue 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 右击工程->Properties->C/C++ Builder->Setting->Tool Setting->Miscellanous->Other Flags添加-std=c++0x 阅读全文
posted @ 2013-08-16 14:47 MrBlue 阅读(571) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 下一页