位置: 编程技术 - 正文

Fast TileMap

编辑:rootadmin
概述

推荐整理分享Fast TileMap,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

在游戏中常常会有丰富的背景元素,如果直接使用大的背景图实现,这会造成资源浪费。TileMap就是为了解决这问题而产生的。Cocos2d-x支持使用Tile地图编辑器创建的TMX&#;式的地图。

Cocos2d-x为我们提供了TMXTileMap和TMXLayer两个类来处理瓦片地图。通过使用TMXTileMap和TMXLayer,我们可以很方便的加载TMX&#;式的地图文件,获取地图上的图层、对象、属性等信息。

新发布的3.2版本,对瓦片地图进行了大幅改进,通过自动裁剪不在视图范围内的瓦片来提升性能,并支持渲染更大尺寸的瓦片地图!我们称之为"Fast TileMap",下面我们就来一起研究Fast TileMap。

TileMap VS Fast TileMapFast TileMap的不同

在3.2版本,新增了CCFastTMXTiledMap.h/CCFastTMXTiledMap.cpp/CCFastTMXLayer.h/CCFastTMXLayer.cpp文件用于实现快速高效的瓦片地图功能。

在cocos2d::experimental的名字空间下重新实现了TMXTiledMap和TMXLayer。其中对TMXLayer的改动较大。TMXLayer不在继承SpriteBatchNode,改为继承Node。并重新实现TileMap的绘制来提升性能。

oldnew

新的TMXTiledMap接口和原有的保持一致。我们依然可以像以前那样使用TMXTiledMap创建瓦片地图。

Fast TileMap的用法

上面代码演示了,使用Fast TileMap加载tilemap.tmx文件创建一幅地图,并加到场景中。

更多API使用方法参考:

COCOS2DX_ROOT/tests/cpp-tests/Classes/TileMapTest/TileMapTest2.cpp

TileMap性能对比Fast TileMap

我们分别使用以前的TileMap和Fast TileMap加载同一个tmx文件创建地图,并在同一设备上进行测试。

测试设备:

MacBook Pro Retina,-inch,Late OS X .9.4

TileMap

运行结果:

Fast TileMap

运行结果:

运行结果对比:

两者的GL calls都相同使用Fast TileMap的GL verts更少使用Fast TileMap的帧率更高

因为相同的GL calls(渲染次数)下,GL verts(显卡绘制的顶点数)越少,绘制效率越高。FPS(帧率)越高游戏越流畅。所以 使用Fast TileMap渲染地图的性能更优。

c++深入学习 委托构造函数在引入C之前,如果某个类有多个重载的构造函数,且这些构造函数中有一些共同的初始化逻辑,通常都需要再编写一个带参数的初始化

cocos2dx初学日记 CC_SYNTHESIZE(varType,varName,funName)这是一个自动生成been方法的宏,该方法可以为一个私有变量(假设是inta)设置get,set方法----CC_SYNTHESIZE(int,a,A);第三个参

[置顶] Cocos3.4 横版游戏制作-《KillBear》-添加地图 转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。资源为网上寻找的,仅研究学习用,若是侵犯版权请通知本人整改。此篇为第一篇,我

标签: Fast TileMap

本文链接地址:https://www.jiuchutong.com/biancheng/372772.html 转载请保留说明!

上一篇:如何使用Cocos2d-x 3.0制作基于tilemap的游戏:第一部分(如何使用朋友的山姆卡)

下一篇:c++11深入学习(c++11视频教程)

  • 增值税存量和增量留抵退税
  • 税务机关内部控制措施
  • 银行提供资金
  • 什么情况企业需要经侦
  • 企业购买土地如何做账
  • 代扣代缴境外企业增值税
  • 军队票据可作税前扣除凭证吗
  • 成品盘盈盘亏的会计分录
  • 非公司汽车加油怎么开票
  • 增值税专用发票和普通发票的区别
  • 劳务公司注销了,未出的款怎么走账
  • 车辆租赁费可以开专票吗
  • 重庆个人住房房产税申报
  • 想要房贷利息抵税怎么办
  • 为什么增值税不影响利润
  • 发票开出多久可以作废
  • 公司解散实收资本退还怎么写
  • 事业单位洗车费如何入账
  • 怎样接收电子承兑汇票流程视频
  • 房地产企业收到房款账务处理
  • linux系统中怎么编辑文件
  • 开机进入睡眠模式按哪个键解除
  • 低值易耗品包括哪些内容?属于什么科目?
  • 佣金代扣代缴增值税需要缴纳附加税吗
  • 电商快递费怎么做账
  • PHP:Memcached::addByKey()的用法_Memcached类
  • 未分配利润转增股本交印花税
  • php require include
  • 分期付款购买固定资产折现率怎么算
  • css禁用button按钮
  • php中file
  • php二维数组foreach
  • 实际退税能退多少
  • 财务费用是一种期间费用,按期归集
  • 长期借款账务处理会计分录怎么写
  • ChatGPT及相关产品体验与研究
  • 【超用心整理】Markdown常用语法介绍,看这一个就够了
  • shell中put命令
  • ausearch命令
  • dedecms官网
  • 企业的职工福利费应当按照应付工资总额的14%计提
  • 发票收件人信息
  • 加计抵减退税的会计分录
  • 老板天天吸烟
  • mongodb 日志
  • 新政府会计制度下的基建会计
  • 电子章打印不来
  • 福利用品可以抵增值税吗
  • Java连接sqlserver2008数据库代码
  • 个人所得税的征收
  • 残保金操作流程
  • 企业如何做增值业务
  • 公共电话亭设计案例
  • 收取物业费不开发票
  • 所得税弥补以前年度亏损是几年
  • 公司注销后会计档案可以销毁吗
  • 应收应付账款统计表
  • 企业购买新能源车免购置税吗
  • 支付给外包公司的工资和保险费
  • 营业收入和营业总收入一样吗
  • 丢失了发票怎么处理
  • 差旅费属于什么会计要素
  • 固定资产折旧算现金流入吗
  • 如何使用命令查找电脑IP地址
  • win7开机启动
  • 连接远程mq
  • 如何给电脑重装系统win7系统
  • winmgm32.exe - winmgm32 是什么进程
  • win8怎么添加打印机到电脑上
  • imac怎么查使用时间
  • centos6.10安装
  • win8禁用网络之后如何开启
  • linux用户登录
  • js移动端布局
  • uinty实现玩家跟随鼠标位置平滑旋转角度
  • 创建一个批处理文件,其功能是在当前
  • 模拟新浪微博用户注册程序设计
  • chrome excel
  • js 修改 css
  • js间隔执行的代码
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设