- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
手机游戏引擎分析
手机游戏引擎分析一概述二 cocos2d引擎2.0 cocos2d简介Cocos2d最初的版本是用python写的,之后被改成objectiveC,应用于iphone上,之后国内某人又根据该设计理念,将其改为C++版本cocos2dX,该版本可以在iphone,widnows,andriod三个平台上运行.必威体育精装版的版本是1.0.0,该引擎C++的版本还引入了lua脚本系统.cocos2d是完全开源的引擎,开发者可以任意使用该代码而不用公开源代码.cocos2d被广泛的使用,其中包括Zynga,南宫梦等知名游戏公司.Cocos2d不仅仅只是一个2D图形引擎库,他还提供了一些对游戏逻辑支持的系统.cocos2d提供了一个简单的声音引擎,支持播放mp3,wave,ogg等文件格式的音乐.cocos2d可以和物理引擎box2d配合使用,实现碰撞等物理效果.cocos2d引擎的结构清晰,文档和实例比较丰富.易学易用.2.1 cocos2d 基本结构Cocos2d采用场景树结构来管理游戏对象,把一个游戏划分为不同的场景,场景又可以分为不同的层,一个层又可以拥有任意个可见的游戏对象.游戏对象又可以执行Action来修改其属性.每一个时刻都有一个场景在独立运行,通过切换不同的场景来完成一个游戏流程.cocos2d还采用了引用计数的方式来管理内存,基本上所有的类都派生于拥有引用计数的机制的CCObject.其基本框架类图如下:CCApplication,负责平台相关的初始化,消息处理等,是一个单件类CCDirector,主要职责是管理场景和切换场景,游戏暂停等.另外他还负责初始化openes相关的一东西.也是一个单件类CCNode,节点类,是游戏中最重要的对象,在cocos2dk中,任何可见的或不可以的游戏逻辑对象都是一个节点,节点有以下特点:是一个容器,可以包含任意多个其它节点.可以执行一个行为(CCAction)可以执行一定时的任务回调拥有坐标变换(transform)信息,如postion,scale,rotation等由于一个节点可以添加任意个子节点,所有的节点组成一个树状结构,因此父节点的坐标变换会影响子节点在世界坐标系中的坐标,一个节点只能拥有一个父节点CCAction,动作类,CCAtion就好像指派给CCNode的命令一样,在特定时间(或立即)内修改CCNode的属性,例如位置,旋转,缩放等CCScene,场景类,和PL中的stage类似,游戏场景一般是指在某个时刻能独立运行的部分,包括可见的怪物,地形和不可见的逻辑脚本等.例如一个游戏的一个特定关卡,游戏菜单,过场动画等都是一个独立的场景.cocos2d中的场景又由不同的层(CCLayer)组成.由于CCScene是CCNode的子类,因此可以可以用CCAction来修改其属性CCLayer类,场景中的层类,一个场景可以拥有多个层,如HUD层,游戏对象层,背景层,天空层等,层是一个可以绘制的区域.可以将ui,sprite等对象添加到其中.除此之外,层还接收输入消息,可以在层的类中处理输入消息,和CCScene一样,CClayer是CCNode的子类,也可以用CCAction来修改其属性2.2资源管理与文件系统资源管理可以分为两个方面,一是管理一些原生(Raw)的资源,例如模型,贴图,脚本,字体等.另外一种资源是在游戏运行时分配的游戏对象.他们需要能被快速的访问.一般来说,没有被引用的游戏对象一般不会立即被释放,会先缓存到某个地方.在加载新的场景时.才会被释放.在一些大型的渲染系统中,资源会被分为三个阶段,硬盘,内存,显存资源,分别采用不同的策略和cache机制来管理,cocos2d没有明显的提出资源管理的概念,但使用了一些cache的机制来缓存已经加载了的纹理,frame,animation等.对于运行时分配的游戏对象,cocos2d也提供了一个autorelease的机制,在游戏切换场景时,将会对autorelease的对象进行内存回收.由于cocos2d采用了引用计数的机制.循环引用是一个需要关注的问题.对于文件系统,cocos2d封装了一个简单的类CCFileUtils,该类除了能读取普通的文件之外,还可以从zip文件读取文件.该类还读取plist文件生成一个CCDictionary对象.2.3 sprite与渲染系统Cocos2d的Sprite由Texure,frame,和animation组成,由openes负责渲染主要的类关系如下:Sprite可以看成是某一时刻,一个2d的图片的一个剪辑部分frame由texture和一个矩形(quad)组成texture代表一个可以被绘制的2维的纹理imgae对应硬盘中不同类型的图片,例如jpg,png,tga等.它知道如何从文件中
您可能关注的文档
最近下载
- 侠客风云传养成模式触发剧情一览.pdf VIP
- YST 582-2013 电池级碳酸锂.pdf
- 淘股吧高手语录.docx VIP
- 2024~2025学年上学期七年级第一次月考数学试题(含答案).pdf VIP
- GB-T6284-1986化工产品中水分含量测定的通用方法重量法.pdf
- MSC:人工智能赋能可持续发展和投资白皮书.pdf VIP
- 24J306 窗井、设备吊装口、排水沟、集水坑图集.docx VIP
- 2014年深圳市坪山新区主要病媒生物监测及白纹伊蚊抗药性研究.pdf VIP
- T∕CBDA 69-2023 建筑装饰装修碳排放计算标准.pdf
- 国际私法(暨南大学)中国大学MOOC 慕课 章节测验 期末考试答案.docx VIP
文档评论(0)