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

二、使用Layers

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

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

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

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

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

 

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尺寸及方向

 

      

      加油,共勉!