[原创]cocos2d-x研习录—前言】的更多相关文章

我认为很多开发者面对层出不穷的新技术.新思想和新理念,最为之苦恼的是找不到行之有效的学习方法,对于知识的本质缺乏认识,虽阅读了大量教材,却无法将其融入自己的知识体系,并搭建自己的知识树.不可否认,教材的目录和编排有一定的结构和条理,但它未必符合人的思维结构.叔本华认为一切思想都是产生自我意识的素材,不加消化的接纳,只能成为别人思想的傀儡.我想说cocos2d-x研习录是我对学习cocos2d-x的认识.思考和总结,虽然可能比较肤浅或存在错误,当然也不具有要指导菜鸟.教训老鸟的重大使命,但这是我搭…
Cocos2D是一个2D开源游戏引擎,它最早是由Ricardo Quesada(阿根廷人,社区简称Riq)和他的朋友们用Python开发的,用于开发2D游戏和基于2D图形的任何应用.最早引擎的名字源自开发地阿根廷Cordoba市附近的Los Cocos,后来引擎在2008年2月29日发布第一个版本(版本号0.1.0),并改名为Cocos2D.那时该引擎鲜为人知,至到2008年6月移植到苹果iOS平台,并发布以Object-C为主语言的Cocos2D-iPhone版本才名声大噪. 我在网上搜索到一…
游戏物理引擎是指在游戏中涉及物理现象的逻辑处理,它用于模拟现实世界的各种物理规律(如赛车碰撞.子弹飞行.物体掉落等),让玩家能够在游戏中有真实的体验. Cocos2D-x中支持Box2D和Chipmunk两种第三方开源物理引擎.这两种物理引擎功能上没有本质的区别,只是Chipmunk是用C语言实现的,Box2D是用C++语言实现的.Box2D目前相对使用更为广泛,所以本节只了解Box2D物理引擎. 要学习Box2D物理引擎,我们先来了解一些Box2D中定义的重要概念,这些概念是构成Box2D世界…
我想接触过游戏引擎的同学,对粒子系统应该不会陌生.它用于解决由大量按一定规则运动(变化)的微小物质在计算机上的生成和显示问题.粒子系统在游戏中有着非常广泛的应用,可以模拟很多现象,如火花.爆炸.烟雾.星云.流水.落花等. 粒子系统(partical system)在粒子效果中对所有粒子进行统一控制和调度,它的常见功能如下: ·产生粒子:也被称作粒子发射器(emitter). ·控制粒子:随时间更新粒子的位置.速度以及其他状态. ·回收粒子:当粒子的生存周期结束后就会被系统回收. Cocos2D-…
了解完Cocos2D-x的基本概念和概念类之后,是不是有一种蠢蠢欲动的冲动,想要探究Cocos2D-x是如何完成这一切的.接着我将通过对Cocos2D-x自代的HelloCpp项目进行分析,初步了解Cocos2D-x游戏的基本框架,揭开Cocos2D-x神秘的面纱.      作为一个Hello World程序,HelloCpp的功能非常简单.打开一个OpenGL窗口,在里面显示了一张Cocos2D-x的log图片,在图片的上面写着"Hello World".在右下角有一个按钮,用来退…
CCDirector类是游戏的组织和控制中心(总指挥),它控制着主屏幕的显示.场景的切换和显示,以及游戏的开始.结束和暂停.它的继承关系图如下:    CCDirector继承自基类CCObject,它还有一个子类CCDisplayLinkDirector,它是一个可以自动刷新的CCDirector.CCDirector包括的核心功能如下:    ·初始化OpenGL和设置OpenGL参数:    ·控制场景管理和切换:    ·设置Cocos2D的配置细节:    ·访问视图(OpenGL.U…
节点类CCNode在基本概念中并不存在,它是为了建立基本概念之间的关联关系而抽象出来的中间辅助类.这个类在Cocos2D-x中极为重要,它为概念类之间搭建了一座宏伟的桥梁.它的继承关系图如下:      从继承关系图知,CCNode是继承自基类CCObject,而场景CCScene.布景层CCLayer和精灵CCSprite都从它继承而来.它是一个抽象类,没有可视化的表示形式,但任何需要画在屏幕上的对象几乎都是从节点类CCNode继承而来.下面这张CCNode及子类继承图可说明这一点:     …
在Cocos2D-x引擎中,有几个非常重要的概念:导演(CCDirector).摄像机(CCCamera).场景(CCSecen).布景(CCLayer).精灵(CCSPrite)和动作(CCAction).当看到这些概念,很容易联想到拍电影.我想Cocos2D在架构设计时,灵感恐怕正是来源于拍电影.我认为游戏除了需要与玩家交互外,和动画.电影制作具有很多相似的元素. 以下分别描述这些概念: ·导演(CCDirector):导演是整个游戏的组织和控制核心.导演可以制定游戏的运行规则,从而让游戏内…
    上一节了解Cocos2D家族史,本节关注Cocos2D家庭的一个重要分支Cocos2D-x.Cocos2D-x是Cocos2D的C++移植版本,它的最大特性是跨平台,使开发者编写一套C++代码就可以横跨Android和iOS两大平台,大大提高了开发效率.         值得庆幸和骄傲的是Cocos2D-x的主力开发团队是中国人,这就为学习Cocos2D-x带来了极大的便利,扫清了语言的障碍.我在网上也搜索到一张主力成员的照片,如下:                  Cocos2D-x…
在移动终端(智能手机)平台下开发游戏一般都会涉及到屏幕多分辨率适配问题,原因是手机款式多种多样,不同的款式存在有不同的尺寸,即使尺寸相同又可能存在不同的分辨率. 手机屏幕尺寸:指手机屏幕对角线长度. 手机分辨率:指屏幕上横.纵的总象素点数.分辨率越高,即总象素点数越多,屏幕显示效果越好.               上面我们介绍了手机尺寸和分辨率的概念,结论是手机屏幕显示效果是由尺寸和分辨率决定的.相同尺寸不同分辨率手机,分辨率越高显示效果越好:相同分辨率不同尺寸的手机,尺寸越大显示效果越差.…