二、使用Layers

Tiled地图支持多种形式的内容,这些内容被组织在各种不同的图层上边。最常用的图层是Tile图层和Object图层。当然,还有用于包含简单的前景和背景图片的Image图层。其中,图层的顺序决定了你的渲染内容的顺序。

图层能够被隐藏,只让一部分可见,并且可以被锁住。图层也有偏移,用于它们之间的单独放置,例如假的深度。

眼睛和锁图标能够分别地控制图层的显示/隐藏和锁/解锁图层。

你可以使用组图层来组织图层,使其呈层级结构。这样可以更加方便地进行大量的图层管理。

2.1 Tile Layers(这一段准确性待斟酌)

Tile layers提供了一种高效的方式来存大以tile数据填充的大块区域。这些数据是以简单的tile引用数组的方式存在,并且没有添加额外的信息来存储每一个位置。唯一存储的额外信息是少数的标志,这些标志允许tile图形被垂直翻转、水平翻转、以及反对角翻转(为了支持以90度的增量来旋转)。

每一个tile Layer层上需要被渲染的信息都被存储在地图上,其中包括位置的定义,基于方向和各种其他的属性配置的渲染指令。

尽管我们只是谈及tiles,但是tile layers同样可以很有效地定义各种各样的非图像信息。碰撞信息经常由专门的tileset来携带。所有的对象都不需要进行专门的属性配置,一般都是通过网格的排列来将它们放置在tile层上。

2.2 Object Layers(对象图层)

Object layers可以用来存储各种tile layer存储不了的数据。对象可以被随意放置、调整大小、旋转。对象还可以进行个性化的配置。Object Layers有以下的各种对象:

  1. Rectangle(矩形)-用来标记自定义的矩形区域
  2. Ellipse(椭圆形) -用来标记自定义的椭圆形区域或者圆形区域
  3. Point(点)     - 用来标记额外的位置
  4. Polygon(多边形)-用来标记当矩形或者椭圆形无法表示的对象(经常是用作碰撞检测的   区域)
  5. Polyline(折线)-用来标记游戏路线或者墙的碰撞路径
  6. Tile(瓷片)   -用来进行任意放置、缩放,还有旋转图形的对象
  7. Text(文本)-用来记录自定义文字、标注   (Tiled 1.0之后的版本)

所有的对象都能可以被命名,命名之后,他们的名字就会在他们上边显示(默认情况下,当你选择对象时显示)。对象也可以被定义类型,这样可以很方便地定义它们标签的颜色,还在一些有用的自定义属性。对于tile对象为说,这种类型可以是继承而来的。

对所大部分的地图类型来说,对象是放置在2D平面上的。唯一的例外是等距地图(不是等距交错)。对于等距地图被认为是在一个投射的坐标空间存储它们的位置信息。而等距的tiles则被 认为的代表每条边都等于tile高度的正方形。如果你在你的等容游戏中给对象使用了不同的坐标空间,你需要相对应地去进行坐标的转换。

对象的宽和高绝大多数是以像素的方式存储。对于等距地图,所有对象的形状(矩形、点、椭圆形、多边形、折线)都是投射到相同的坐标空间的。这是假设所有的这些对象被用来在地图上标记区域的情况。

2.3 Image Layers

Image Layers提供一种可以快速导入一张图片来作为地图的前景或者背景的方式。不过,现在来说,它们显不并不是特别有用,因为如果你使用通过添加图片作为Tileset,然后将其当作Tile对象来使用,你不但可以重新获取到它,还可以自由地进行缩放和旋转图片的操作。

Image Layers唯一的优势是使用了图片层,从而避免了在选对对象工具的时候对图片进行选择与拖拽。但是,Tiled1.1版本同样可以通过锁住对象及对象层来达到避免操作的目的。

2.4 Group Layers

Group Layers类似于文件夹,能够将图层以层次结构的方式组织,当你的地图包含了大量的图层时,Group Layers就会显行特别有用。

Group Layers的可视性、透明度、偏移量还有锁都会相应地影响到其下的所下子图层。

通过鼠标可以很方便地将图层拖进、拖出组。上升或者下降图层同样可以使图层进出组。

2.5 未来的拓展

这里有很种方式可以使图层就得更加强大:

  1. 可以锁定私有的对象
  2. 将全局的地图属性配置移到TIle Layer层配置,这样,就能够很方便地使用一张地图适配不同tile尺寸及方向

加油,共勉!

(Tiled官方文档翻译)第二节:四种图层的介绍相关推荐

  1. (Tiled官方文档翻译)第四节:对象的编辑和使用

    四.使用对象 你可以通过对象向你的游戏地图添加大量的信息,他们能够替代你在编码时或者维护额外的文件来保存一些游戏元素时产生的繁琐.冗长的硬编码(如角色的产生点).使用tile objects,可以很方 ...

  2. W ndows主进程已停止,windows主进程rundll32已停止工作的四种解决方法介绍

    操作系统出现:windows主进程rundll32已停止工作 这种出错的提示,一般是在Windows7操作系统之中,可能会有很多种原因导致的,所以还需要逐一排查,解决之. 这是一个很少见的问题,开机后 ...

  3. 科普|云计算的四种服务模式介绍

    科普|云计算的四种服务模式介绍 本文将介绍SaaS,BaaS,PaaS和IaaS这四种云计算服务模式,并分析之间的联系和区别. 四种服务模式介绍 SaaS(Software as a Service) ...

  4. (Tiled官方文档翻译)第一节:简介及创建工程、图层集

    一.简介 1.1 关于tiled Tiled是帮助你开发游戏内容的2D编辑器,它的主要特性是,不但可以编辑多种形式的瓷片地图,还支持通过用空图片这种强大的方式来标记游戏的数据.Tiled主要致力于可以 ...

  5. jsp九大内置对象和四种属性范围介绍

    一般对象需要实例化才可以调用,而JSP的内置对象是不用实例化就可以直接调用的对象. 总共有9个,对应如下表: 序号 对象 类型 1 pageContext javax.servlet.jsp.Page ...

  6. 阵列卡直通模式和raid模式_DNF:希洛克四种模式简单介绍,平民优先小队模式四种...

    Hello,大家好,我是月月.在9月22日游戏更新之后,金秋版本降临,而希洛克Raid也会正式和我们见面!与之前的团本一样,希洛克Raid产出的装备,将会是目前版本最顶尖的装备!不过与之前的团本也有一 ...

  7. ASP.NET MVC中四种过滤器类型介绍

    简介 mvc的过滤器类型有四种,分别如下: 过滤器类型 接口 默认实现 描述 Action IActionFilter ActionFilterAttribute 在动作方法之前及之后运行 Resul ...

  8. 查看此docker网络连接模式_Docker 网络模式(四种)详细介绍

    Docker 网络模式 本文首先介绍了Docker自身的4种网络工作方式, Docker作为目前最火的轻量级容器技术,有很多令人称道的功能,如Docker的镜像管理.然而,Docker同样有着很多不完 ...

  9. 数组的四种排序方法介绍

    最近在学习和练习一些算法方面的知识,发现在java中运用数组进行排序一般就四种方法:快速排序法.冒泡法.选择排序法.插入排序法.我们只要掌握这四种排序方法,基本上就能解决所有的排序问题.所以我接下来就 ...

最新文章

  1. 科技部5个6G重点项目
  2. 使用memcache的session入库
  3. FL2440的U-boot-2009.08移植(三)支持Nor FLASH
  4. HDU 2544 Floyd算法
  5. 移动端阻止body左右偏移
  6. 计算机网络实验二抓包协议分析,计算机网络实验-使用Wireshark分析TCP和UDP协议...
  7. NET-TreeView控件说明
  8. lan交换和无线教师手册_无线交换机的出现,能否解放双手?
  9. Docker安装实践Jenkins
  10. 移动站适配rel=alternate PC页和H5页适配标注
  11. Hug a developer today
  12. 【回文串10】LeetCode 479. Largest Palindrome Product
  13. 连载:面向对象葵花宝典:思想、技巧与实践(32) - LSP原则
  14. 无法找到资源编辑器dll
  15. html wap加载优化,移动版Wap网页针对百度进行SEO优化的一些要点总结
  16. 原生Js从0开始实现一个链家网地图画圈找房功能
  17. 卓文萱在北京净万家像街头卖艺似的骗子粉丝做公益绯闻男友辰亦儒看不惯假惺惺模样破口大骂
  18. windows10 插入耳机无弹出,无声音,提示扬声器、耳机未插入
  19. java中length和length()方法的区别
  20. 自动驾驶的分级,感知与规划基本意义

热门文章

  1. 什么是嵌入式AI开发?人工智能芯片指什么?STM32、树莓派、Jetson TX2、华为昇腾部署神经网络区别在哪?
  2. 读书笔记 - 《格鲁夫给经理人的第一课》
  3. Android APP 检测和监听当前USB设备插入拔出以及读取VID/PID
  4. Python基础——np.where
  5. 数据可视化什么意思?
  6. 【浙江大学计算机学院】ccnt实验室之,CCNT实验室
  7. TotalControl之手机录屏神器
  8. Java实现 LeetCode 417 太平洋大西洋水流问题
  9. 自定义Unity在iOS平台上的虚拟键盘
  10. 使用Domain Adaption提升小场景时间序列预测效果的方法