Learning Cocos2d-x for XNA(1)——小窥cocos2d-x框架
Cocos2d-x for xna的发布,意味着C#的开发者也可用C#编写属于自己的游戏。对于一部分对C++苦恼而喜欢C#的编程初学者来说,如果能够用C#加上一个好的游戏引擎写个小游戏也是不错的选择。虽然XNA也能够满足C#开发者的游戏梦,但不得不说cocos2d-x游戏引擎的确让开发游戏成为一件很简单的事情,做一款小游戏,还是不错的选择。当然,该引擎倡导的跨平台的确有一套,同一套API,让开发者在平台迁移上的工作量减少了很多。Iphone,Andriod,windows phone,win8等平台下,都可使用cocos2d-x。由于不同平台下,都有自己的一套解决方案,同一套API,学习一个,基本上转到其他平台是很简单的事。这样,C#开发者学习了cocos2d-x for xna后,以后在需要用C++,Java,Object-C,html5开发时,再学习该语言下的cocos2d-x时,那就简单很多了,当然还是得花时间的。编程语言只是实现的工具、学习的媒介,重要的是Idea。
废话不多说,来张引擎中重要成员的关系图
游戏也是一门艺术,同样是一场电影。
CCDirector(导演):导演可以创建和处理游戏窗口,管理如何以及何时执行场景(CCScene),也就是说,切换场景(页面)由导演负责。
CCCanera(摄像机):摄像机从不同的视野观察各个节点,如动作、旋转、平移等。
CCScene(场景):官方文档中也没有很好的解析,一些文章认为它可理解为关卡,个人将其理解为页面。
CCLayer(布景或分层):场景可将不同的元素划分层次,场景分层能使游戏更具层次感。
CCSprite(精灵):所谓的精灵就是游戏中的人物、动物等等所有游戏主要元素。
CCAction(动作):精灵所拥有的动作、特技、技能等附属功能。
初步熟悉一下引擎的重要成员,游戏基本上在这些成员上。导演主导游戏场景(页面)切换,摄像机渲染游戏所有节点,某个场景(页面)下,由多个CCLayer(分层)构成,每个分层下拥有自己的精灵,精灵可执行属于自己的动作。
另附上一张部分类间继承关系图
著作权声明:本文由http://www.cnblogs.com/suguoqiang 原创,欢迎转载分享。请尊重作者劳动,转载时保留该声明和作者博客链接,谢谢!