cocos2d-x学习之旅(十一):制作TXM游戏地图,并加载到游戏场景中
准备
Tiled Map Editor:http://www.mapeditor.org/
通用的瓦片地图编辑器,基于xml格式,支持正交视图和等轴测图
瓦片地图由单个瓦片组成的2D游戏世界,使用少量尺寸相同的图像就可以创建出很大的游戏世界,这样可以为大地图节省内存,在手机和平板这样的设备上使用很占优势。在早期的计算机游戏中,出现了很多使用瓦片地图的经典游戏。
下图中仅使用了三个瓦片就构建了一坦克大战的游戏地图。
瓦片地图的编辑工作通常通过编辑器来完成,cocos2d-x支持Tiled的地图编辑器。跟cocos2d-x一样,是免费,开源的。Tiled能够编辑直角瓦片和多层的斜角瓦片地图,并且能够添加触发区域和对象,以及定义瓦片的属性以及在代码中确定瓦片的类型。
方形图像的瓦片地图可通过增加过渡瓦片来进行改进,例如,比起把一个水瓦片放在一个草地瓦片旁边,可以过添加混合瓦片(瓦片的一边是水,一边是草地,中间是海岸线)来创建更好的过渡效果。瓦片的设计需要花费很多的心思的。
瓦片不一定是正方形的,也可以用长方形图像来创建直角瓦片地图,使用直角视角,但它允许设计者创建看起来比宽度要高的物体,这可以产生一种深度上的错觉。斜角瓦片地图更进一步,将视角旋转了45度,通过一种看起来像3D的方式来创建瓦片,使用游戏世界获得了视觉上的深度感。
下图就是45度视角的地图,在视觉上看起来更像是3D的。
斜角瓦片地图证明了瓦片地图不一定都是平面的,你甚至可以用正方形的瓦片地图来获得相似的效果,只要每个瓦片被设计成可以无缝叠加起来,正因为如此,tiled支持多层的瓦片以创建非常逼真的3D外观。
手上没有什么好的素材,所以在网上搜索了一张图片,使用正常的地图方向创建一张地图。
将这层命名为Ground,方便以后在代码中调用这层的瓦片对象,再添加一层,命名为Object,在这一层中,添加两个木桩。
创建好地图后,把*.tmx文件和图片文件放在Resource目录,在代码中只需要一句话就可以加载到游戏中
CCTMXTiledMap *Map = CCTMXTiledMap::create("map2.tmx");
addChild(Map);
准备好我们的主人公,英雄出场。下图是一个四方向人物行走图。下一篇开始把英雄加载到游戏场景中,让英雄在场景里面走动起来。
这是加载的英雄效果图:
备注:
共同学习,若有不正确之处,欢迎指出。转载请注明来处:www.cnblogs.com/dekins
转载于:https://www.cnblogs.com/dekins/archive/2012/09/19/2693185.html
cocos2d-x学习之旅(十一):制作TXM游戏地图,并加载到游戏场景中相关推荐
- Unity尝试制作王者荣耀(十六)——FightScene(一)加载模型到场景中
一.进入战斗场景动态加载相关模型 1.1. 首先新建一个脚本FightScene.cs告诉服务器,客户端已经进入Fight场景 void Start () {//告诉服务器进入到了战斗场景this.W ...
- 小猪的Python学习之旅 —— 20.抓取Gank.io所有数据存储到MySQL中
小猪的Python学习之旅 -- 20.抓取Gank.io所有数据存储到MySQL中 标签:Python 一句话概括本文: 内容较多,建议先mark后看,讲解了一波MySQL安装,基本操作,语法速成, ...
- vb wps 链接单元格_使用VB快速制作WPS的COM加载项
使用VB快速制作WPS的COM加载项 2018-09-14 1.新建工程,选择ActiveX Dll. 2.工程.引用.选择Kingsoft Add-In Designer.Kingsoft Offi ...
- 学习Mac开发第四弹 通过NSImageView加载图片
学习Mac开发第四弹 通过NSImageView加载图片 创建NSImageView 1 . 拖拽大法好 Autolayout 创建一个宽高160 *160 的NSImageView 创建是正方形的 ...
- 如何将深度学习模型加载到android环境中
承接上一篇的内容,考虑如何将深度学习的模型加载到android app中 文章目录 前言 一.使用工具 二.使用步骤 1.模型格式的转换 2.配置文件修改 3. 应用程序 前言 将图片学习的模型加载到 ...
- 阵列卡服务器启动不到pe桌面,制作启动u盘加载阵列卡驱动无法安装怎么办
制作启动u盘加载阵列卡驱动无法安装怎么办?安装服务器时碰到没有阵列卡驱动无法安装的问题大家应该都碰到过.之前一次安装2003碰到没阵列卡驱动,解决的办法比较土,上网下了张别人做好的集成了raid驱动的 ...
- 【微信小游戏实战】零基础制作《欢乐停车场》三、游戏场景制作
1.游戏立项 微信小游戏中有一款<欢乐停车场Plus>的小游戏,大家可以搜索玩下.这是一款益智类的小游戏,游戏中有红.黄.绿.蓝.紫5辆豪车6个停车位,玩家通过可行走路线移动小车,最终让各 ...
- Android插件化学习之路(一)之动态加载综述
前段时间,公司项目完成了插件化的开发,自己也因此学习了很多Android插件化的知识,于是想把这些内容记录下来,本次带来Android插件化的第一篇:动态加载综述 Android插件化学习之路(一)之 ...
- 学习Mac开发第三弹 通过WebView加载网页
学习Mac开发第三弹 通过WebView加载网页 添加WebKit.framework 关联Delegate 在新建工程的ViewController里拖放一个WebView,并用Autolayou ...
- 深度强化学习加载Atari游戏运行库:Could not find module “XXXX\lib\site-packages\atari_py\ale_interface\ale_c.dll“
深度强化学习加载Atari游戏运行库:Could not find module "XXXX\lib\site-packages\atari_py\ale_interface\ale_c.d ...
最新文章
- 一周一论文(翻译)——[Acta 1996] The Log-Structured Merge-Tree (LSM-Tree)
- 读书笔记 |《推荐系统实践》- 个性化推荐系统总结
- 软件工程知识——软件配置管理
- 帐篷篷房建筑建材产品营销型网站源码 dedecms织梦模板
- TYVJ 1014 乘法游戏
- 开源DataBase组件:FluentMigrator
- Perl_获得字符串长度_length($var)
- 第二章 工具变量法(IV)与两阶段最小二乘法
- ThreeJs 数据可视化学习扫盲
- Android判断首次安装
- 约束布局ConstraintLayout ,报错:This view is not constrained vertically
- 全网最通俗易懂的「插屏广告」接入方法
- 基于TT 双WAN固件(dualwan)下的QOS脚本 很给力
- 达梦数据库安装(Linux下的命令行方式)_yxy
- 第4章第15节:图表:使用饼图制作投资公司四季收益图表 [PowerPoint精美幻灯片实战教程]
- 排序篇:直接插入、希尔、直接选择和堆排序(C语言)
- 音频编解码标准G.711与G.729
- 【习题详解】动态规划DP:硬币游戏 蛋糕 游荡的奶牛 决斗
- LED背光源运用在温控设备上
- WIN7/WIN10 临时及永久 强制关闭驱动签名验证
热门文章
- web xml配置oracle数据源_SpringBoot2 整合JTA组件,多数据源事务管理
- 修改页面后获得flag_逆向基础题五:获取Flag
- python subprocess 非阻塞_python中subprocess.PIPE上的非阻塞读取
- VS C# string 字符查找 寻找指定字符
- 不能安装_监控安装不能忽视的要点
- 用sql写每年的第三周_如何写好5000行的SQL代码
- jdbc mysql url写法_Springboot项目连接MySql写了一个bug你也可能遇到
- 2、http网络编程——libcurl的使用
- 学习spring第一天
- 提问的智慧 程序员成长之路