我的专题提供我的的最新资讯内容,帮你更好的了解我的。
引子 《捕鱼达人1》一出来,我就觉得这游戏太炫了,然后我就知道了cocos这个引擎,还记得当时还看了一本《教你做自己的捕鱼达人》(名字好像是这个),但限于当时工作节奏太忙而暂时阁在一旁没继续深入了解这个引擎。后来又发现了小米机顶盒的launcher居然是使用cocos开发的,后来的后来,也就是去年年底项目不是特别紧张的时候,我决定抽空深入学习下这个人气很旺的、市场占有率很高的、开源的引擎。 学习开
    我是一个渣渣,初学cocos2dx,之前没有接触过c++,对c++可谓是一无所知,之所以毅然决然的来学习c++,只为对游戏开发有着浓厚的兴趣。今天是我是学习cocos2dx的第三天,今后将在博客中记录我的学习之路,希望各位博友多多指教,今后的道路上一起进步,一起学习
    现在开始学习Cocos2d-x开发手机游戏,做这个笔记记录学习中的一些收获,同时利于复习。利用的Cocos2d-x2.2.6引擎。     每个程序都是有入口函数的,Cocos2d-x也不例外,在Windows下的VS开发环境中,入口函数在Win32筛选器下的main.cpp中。我们看一下main.cpp文件中内容。 #include "main.h" 首先包含了main.h头文件,头文件
    上一篇中只介绍AppDelegate中applicationDidFinishLaunching()函数,这个函数是程序运行的关键,在CCApplicationProtocol中声明纯虚函数,在CCApplication中进行调用。在CCApplicationProtocol中与applicationDidFinishLaunching()类似的纯虚函数还有两个,分别是:applicati
 先来看看Cocos2d-x中关于游戏的一些基础概念,首先盗用官网的图描述一下游戏中各个游戏对象的关系。     从上图中可以知道在Cocos2d-x中只存在一个导演,而事实上之前我们也看到CCDirector是一个单例对象;而游戏中可以存在多个场景,图中存在N个场景;每个场景中又可以存在多个层;每个层中又可以包含多个精灵。     一个导演同一时间只能运行一个场景,一个场景当中,可以同时加载多个
     首先看一下之前介绍过切换场景的代码: CCScene* pScene = TestLayer::scene(); CCDirector::sharedDirector()->pushScene(pScene); CCDirector::sharedDirector()->popScene(); CCDirector::sharedDirector()->replaceScene(pSce
之前仅仅学习了CCLayer,但是关于层的并不仅仅是这些,还有另外的一些,例如:CCLayer、CCLayerColor、CCLayerGradient、CCLayerMultiplex。 首先复习一下CCLayer: CCLayer的继承关系: 由CCLayer的继承关系就可以知道此类可以接受触摸操作,重力加速度计,输入。 CCLayer 类总仅包含CCLayer *CCLayer ::crea
在游戏中坐标系统是少不了的,坐标涉及到各种游戏元素的布局,是必须掌握、搞清楚的重点! 笛卡尔右手坐标系: 定义:原点在左下角,x轴向右,y轴向上,z轴向外,OpenGL与Cocos2d-x坐标系都为笛卡尔右手坐标系。 OpenGL坐标系:该坐标系原点在屏幕左下角,x轴向右,y轴向上。 Cocos2d-x坐标系:与OpenGl坐标系一样。 屏幕坐标系:该坐标系的原点在屏幕左上角,x轴向右,y轴向下。
一、纹理缓存、帧缓存、动画缓存 缓存机制:存储设施有快慢之分,PC机上有硬盘与内存之分,计算机软件运行时候把资源加载到内存中运行;手机与PC也是类似的。当手机软件运行时候,把经常需要用到的资源预先加载到存取速度快的内存中,之后访问该资源将会节省大量时间。 Cocos2d-x为我们提供了三个实现缓存的接口,有纹理缓存、帧缓存、动画缓存,都是全局单例。 纹理缓存(CCTextureCache):  
OpenGL是一个基于C语言的三维图形API,是一个开放的、跨平台的图形接口。 OpenGL ES是OpenGL在移动设备上的版本。 Cocos2d-x是一个基于OpenGL的游戏引擎,渲染功能由OpenGL实现。 游戏中会用到许多图片资源,对图片资源渲染进行优化能明显提高效率。 OpenGL中纹理的长和宽像素是2的幂,大小不足的纹理补充到2的幂大小;可以通过把多张小图片合成一张大图加载到游戏中,
      游戏运行时候会不断按照游戏逻辑规则重新绘图,反复处理用户输入、处理定时事件、绘图,直到游戏结束。       Cocos2d-x引擎也是通过不断绘图来进行游戏的,默认的帧率在AppDelegate.cpp中显示为60帧每秒,也就是每秒执行了60次用户输入、定时时间、绘图等。 抄录Cocos2d-x高级教程中内容如下:       游戏乃至图形界面的本质是不断地绘图,然而绘图并不是随意的
Cocos2d-x中定时调度器一共有三种:scheduleUpdate、scheduleOnce、schedule。 定时调度器在CCNode中声明: class CC_DLL CCNode : public CCObject { public: void scheduleUpdate(void); void schedule(SEL_SCHEDULE selector, float inte
Cocos2d-x默认只有CCLayer及其派生类才有触摸的功能。 CCLayer中关于触摸的部分代码如下: class CC_DLL CCLayer : public CCNode, public CCTouchDelegate, public CCAccelerometerDelegate, public CCKeypadDelegate { public: virtual void set
C++内存管理:     栈上的空间:不用程序员手动管理。     堆上的空间:new申请的空间需要用delete来释放,否则产生内存泄漏。 过程型函数:函数中每条语句执行完毕后,返回到调用此函数的地方。 注册型函数:注册型函数把此函数注册到某个地方后立即返回,该函数不立即执行,等待注册到的地方来执行该函数。 内存的两种智能管理: 主要有两种实现智能管理内存的技术,一是引用计数,一是垃圾回收。 引
Cocos2d-x中添加标签一共有三种方法:CCLabelTTF、CCLabelAtlas、CCLabelBMFont,我们逐一学习。 一、CCLabelTTF CCLabelTTF类中部分代码如下,其中都是常用的函数: class CC_DLL CCLabelTTF : public CCSprite, public CCLabelProtocol { public: static CCLab
一、菜单(CCMenu)     Cocos2d-x提供了菜单功能,学习具体菜单项之前需要先了解一下CCMenu。     CCMenu是Cocos2d-x的菜单类,本身不具备菜单具体属性,将一些具体类型的菜单添加进去达到添加菜单的目的,可以说它是一个容器;在Cocos2d-x中使用菜单功能首先要创建这个容器,之后把我们创建好的菜单项(CCMenuItem)添加到CCMenu容器中,此时才可以使用
学习几个UI控件,CCControlSlider、CCControlSwitch、CCControlButton,它们都来自Cocos2d-x扩展库。 使用UI时候需要包含扩展库头文件与命名空间,如下: #include "cocos-ext.h" USING_NS_CC_EXT; CCScale9Sprite需要: #include "cocos-ext.h" using namespace c
一、简介: 继续引用高级开发教程: CCAction 作为一个基类,其实质是一个接口(即抽象类),由它派生的实现类(如运动和转动等)才是我们实际使用的动作。CCAction 的绝大多数实现类都派生自CCFiniteTimeAction,这个类定义了在有限时间内可以完成的动作。由CCFiniteTimeAction 派生出的两个主要类分别是瞬时动作(CCActionInstant)和持续性动作(CC
Cocos2d-x提供了进度条动作,该类继承CCActionInterval。继承关系如下: 在使用CCProgressTo时还需要CCProgressTimer。 在CCProgressTimer类中,仅仅只有一个create函数用来创建,其参数是一个精灵,如下: static CCProgressTimer* create(CCSprite* sp); CCProgressTimer在创建后,
CCGridAction实现一些格子动作效果。继承关系如下: 实例: CCSprite * spr = CCSprite::create("HelloWorld.png"); spr->setPosition(ccp(200, 200)); addChild(spr); //GridAction //CCFlipX3D * action = CCFlipX3D::create(2);