cocos2dx
小梁two
勿忘初心,为了实现童年时的英雄梦了,为了找到儿时玩游戏的快乐。
展开
-
cocos2dx配置android环境并打包apk
准备文件:JDK,ADT,NDK。笔者使用的文件为:jdk-6u43-windows-x64.esxe;adt-bundle-windows-x86_64-20131030;android-ndk-r9d。第一步:安装JDK,配置Android JDK环境 下载完毕后,对其进行安装,本机路径为:C:\Program Files\Java\jdk1.6.0_43配置用户环境变量: 1.新建用户变量原创 2015-03-25 12:56:37 · 842 阅读 · 0 评论 -
cocos2dx实现游戏属性雷达图
五边形的属性雷达图 auto node = Node::create(); node->setPosition(visibleSize.width/2,visibleSize.height/2); this->addChild(node); auto draw = DrawNode::create(); node->addChild(draw); flo原创 2015-09-09 16:44:06 · 1815 阅读 · 0 评论 -
cocos2dx中的缓冲动作ActionEase类
Cocos2d-x为我们封装好了ActionEase类来实现一些加速度或者减速度的效果。ActionEase类可以实现动作的速度由快到慢、速度随时间改变的匀速运动。该类包含5类运动:指数缓冲;Sine缓冲;弹性缓冲;跳跃缓冲;回震缓冲。每类运动都包含3个不同时期的变换:In、Out和InOut。In表示开始的时候加速;Out表示结束的时候加速;InOut表示开始和结束的时候原创 2015-09-18 16:43:19 · 846 阅读 · 0 评论 -
cocos2dx中的回调函数CC_CALLBACK_*
cocos2dx对CC_CALLBACK_*使用了std::bind进行函数适配// new callbacks based on C++11#define CC_CALLBACK_0(__selector__,__target__, ...) std::bind(&__selector__,__target__, ##__VA_ARGS__)#define CC_CALLBACK_1(__se原创 2015-07-24 15:40:19 · 2985 阅读 · 0 评论 -
纹理缓存
auto sprite = Sprite::create("HelloWorld.png");引擎是会先先在TextureCache纹理缓存中查找HelloWorld.png的文件名对应的纹理,找不到该纹理的话再在源文件路径中查找该HelloWorld.png的文件,再将该文件的纹理添加到TextureCache纹理缓存中(下次再使用HelloWorld.png的图片时就不用再加载,从原创 2015-11-20 11:18:45 · 879 阅读 · 0 评论 -
child->m_pParent == 0
此节点的父节点不为空,这时我们点击重试,然后通过堆栈,跳转到相应代码,这样就可以找到哪一个对象重复添加,只要我们不添加此对象就可以消除这个告警。cocos2d-x中,可以用CCNode类 自己new一个节点(或是用CCnode::node()、create()),当将它作为其他若干item(如button项、sprite项、image项)的父节点时,注意,那几个item子项此时一定不要有父节点原创 2015-09-13 11:32:08 · 497 阅读 · 0 评论 -
cocos2dx 3.2 HelloWorld简析
我们知道所有的C++程序都是从main函数开始运行的,cocos2dx也一样。打开VS解决方案中的win32目录下的main.cpp类。int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLin原创 2015-03-26 23:10:22 · 343 阅读 · 0 评论 -
cocos2dx 3.X 在windows下的环境搭建并建立第一个HelloWorld工程
准备文件:python2.7安装包;VisualStudio 2013安装包;Visual Assist X;cocos2dx 3.x压缩包。笔者使用的文件为:python-2.7.3.amd64.msi;VS2013_RTM_ULT_CHS.iso;VA_X_Setup2048.exe;cocos2d-x-3.4.zip。下面逐步讲解每个软件的用途。python为python脚本编译软件,在这里原创 2015-03-24 23:52:44 · 1510 阅读 · 0 评论 -
cocos2dx中的事件分发机制
1.创建监听器对象listener 2.设置是否吞没事件 3.设置监听器的回调函数 4.事件分发器eventDispatcher中注册监听器和监听对象auto listener = EventListenerTouchOneByOne::create(); //创建单点触摸监听器对象listener->setSwallowTouches(true); //设置吞没事件为true原创 2015-07-27 11:30:47 · 312 阅读 · 0 评论 -
cocos2dx中的屏幕适配
在AppDelegate类的applicationDidFinishLaunching()方法中,由导演类可以获得openGLView的指针,用该指针可以设置屏幕适配:auto glview = Director::getInstance()->getOpenGLView();glview->setDesignResolutionSize(width,height,参数三);参数三: kRes原创 2015-07-27 10:36:27 · 362 阅读 · 0 评论 -
cocos2dx中的三种缓存
TextureCache纹理缓存 使用纹理缓存可以创建纹理对象auto cache = Director::getInstance()->getTextureCache()->addImage("bg.png");auto sprite = Sprite::createWithTexture(cache);SpriteFrameCache精灵帧缓存SpriteFrameCache::getIns原创 2015-07-29 18:10:44 · 485 阅读 · 0 评论 -
cocos2dx中的颜色
cocos2dx中节点设置颜色的函数如下:void Node::setColor(const Color3B& color)表示颜色的函数有3种:Color3B(r,g,b); red红,green绿,blue蓝 Color4B(r,g,b,a); red红,green绿,blue蓝 ,alpha透明度Color4F(r,g,b,a); red红,green绿,blue蓝 ,a原创 2015-07-31 16:12:14 · 708 阅读 · 0 评论 -
cocos2dx的渲染树
cocos2dx的渲染顺序是由渲染树来决定的。渲染树是由各种游戏元素按照层次关系构成的树结构,表示Cocos2d-x游戏的绘制层次。 由导演类Director控制渲染树的根节点场景Scene,场景中包含层Layer,层Layer中又包含精灵等。 层次关系如图: 按照官网开发者指南中的说法,所有节点都是存储在一个场景图_scene graph_中,_scene graph_是一个用来存储场景原创 2015-07-31 11:54:14 · 654 阅读 · 0 评论 -
cocos2dx中的动画
动画animation Animate是动作Action的子类,Animate由Animation创建,Animation通过addSpriteFrame将SpriteFrame添加,精灵帧SpriteFrame是每次播放的一帧。sprite用来运行动画 SpriteFrameCache::getInstance()->addSpriteFramesWithFile("hero.plist"原创 2015-08-03 18:06:04 · 395 阅读 · 0 评论 -
cocos2dx中的游戏储存-UserDefault
cocos2dx中的游戏储存-UserDefault引擎提供的UserDefault可以简单地储存游戏中的信息,例如背景音乐音效的开关状态,用户名等等。UserDefault是一个单例对象,可以用getInstance方法来获得。 如果是第一次调用UserDefault::getInstance(),则会自动生成一个UserDefault.xml文件,目录在工程目录的proj.win32\Debu原创 2015-07-23 15:42:23 · 790 阅读 · 0 评论 -
Visual Assist X在VS2012中的启用与禁用问题
自从某次打开VS2012后没有显示VA的插件显示,看着这蛋疼的代码颜色界面。 以为是插件出现问题,于是就重新下载安装VA,不行。又以为是版本问题,安装了几个版本也不行。最后抓狂的甚至重装VS2012也解决不了问题。最后才发现是因为禁用了VA的插件而已。 解决办法: 工具->扩展与更新 全部->VA启用,找到 立即重新启动 然后就可以看到这熟悉的代码颜色界面了。原创 2015-08-04 14:10:05 · 3877 阅读 · 0 评论 -
cocos2dx中的游戏储存-SQLite
在SQLite官网下载SQLite的源码,将sqlite3.h和sqlite3.c添加到项目目录下的classes中,将sqlite3.dll和sqlite3.lib添加到proj.win32\Debug.win32中头文件引入: #include "sqlite3.h" #pragma comment(lib, "sqlite3.lib")主要代码: sqlite3 *pdb原创 2015-07-24 10:32:49 · 359 阅读 · 0 评论 -
cocos2dx中的内存管理机制
cocos2dx源自于cocos2d,所以cocos2dx 的内存管理机制沿用cocos2d 的OC内存管理机制,基本原理是对象内存引用计数。 引用计数段m_uReference,retainCount()返回m_uReference的值。当一个object被new出来时,m_uReference = 1;当调用该object的retain方法时,m_uReference++;当调用该obj原创 2015-07-27 12:39:25 · 610 阅读 · 0 评论 -
cocos2dx中的调度器
cocos2dx中的调度器 cocos2dx提供了多种调度器,通常我们使用其中常见的3种:默认调度器:void scheduleUpdate(void);自定义调度器:void schedule(SEL_SCHEDULE selector, float interval, unsigned int repeat, float delay);单次调度器:void scheduleOnce原创 2015-08-06 11:03:33 · 625 阅读 · 0 评论