Version: 2021.3
创建瓦片地图 (Tilemap)
Creating a Tile Palette

创建瓦片

可使用两种方法在 Unity 中创建瓦片 (Tile) 资源;第一种方法是从 Assets 菜单直接创建瓦片资源。第二种方法是从一组精灵自动生成瓦片资源。

为瓦片资源导入和准备精灵

通过将纹理放入 Assets 文件夹,即可将瓦片地图的各个瓦片或瓦片集导入 Unity 项目。选择导入的图像可以在 Inspector 窗口中查看其纹理导入器 (Texture Importer) 设置。


精灵导入设置。

导入精灵供瓦片地图中使用时,请使用以下建议设置。有关每项设置的更多信息,请参阅 Texture Type: Sprite (2D and UI) 文档。

  1. Texture Type - 将此项设置为 Sprite (2D and UI)。瓦片地图不支持其他纹理类型。
  2. Sprite Mode - 如果纹理只包含一个精灵,将此项设置为 Single。如果纹理包含多个元素,例如包含多个瓦片纹理的瓦片集,则设置为 Multiple
    在导入精灵图集时将 Sprite Mode 设置为 Multiple
  3. Pixels Per Unit (PPU) - 此值是构成所选精灵的一个 Unity 单位的像素数。此设置决定了瓦片精灵在瓦片地图上渲染时的大小。建议将此值设置为单个瓦片精灵的宽度(以像素为单位),以便瓦片的宽度等于一个 Unity 单位。对于六角形等距瓦片,在最宽处测量精灵的宽度。瓦片精灵的大小还受到瓦片地图的父级网格Cell Size 属性的影响,因为 Cell Size(单元格大小)决定一个单元等于多少个 Unity 单位。
    在下面的示例中,导入的精灵为 64x64。该默认瓦片地图单元格大小为(XYZ: 1, 1, 0)Unity 单位。要使瓦片精灵恰好适合瓦片地图的一个单元,请将其 PPU 值设置为 64 以匹配其像素宽度。精灵的整个宽度则对应于一个 Unity 单位,它等于瓦片地图上单个单元的宽度(X 值:1)。

    左:精灵设置为 64 PPU。中:同一精灵设置为 128 PPU。右:精灵设置为 32 PPU。
    通过将原始 PPU 值 64 加倍到 128,精灵的宽度缩放为 0.5(64px/128) Unity 单位。而将 PPU 值减半为 32,精灵的宽度缩放为 2(64px/32) Unity 单位。精灵会分别显得更小或更大,但它们在瓦片地图上的单元位置保持不变。
  4. Sprite Editor Outlines - 导入精灵后,通过打开每个精灵的 Sprite Editor编辑它们的轮廓即可优化轮廓。如果在将 Sprite Mode 设置为 Multiple 的条件下导入纹理并且纹理包含多个精灵,则应在 Sprite Editor 中编辑每个精灵的轮廓。

在瓦片面板中自动生成瓦片资源

通过将瓦片的单个精灵或精灵图集直接放入Tile Palette 窗口(如果该窗口未打开,请转到 Window > 2D > Tile Palette),可自动生成瓦片。

首先,准备并导入瓦片精灵,然后在 Tile Palette 窗口中打开 ‘New Palette’ 下拉选单。从列表中选择一个现有的瓦片面板,或选择 ‘Create New Palette’ 打开 Create New Palette 对话框。


New Palette 下拉选单。

选择瓦片面板的属性后(有关不同选项的更多信息,请参阅瓦片面板文档),请选择 Create 在窗口中打开新的面板。


选择 ‘Create’ 创建一个新的瓦片面板。

创建或加载瓦片面板后,请将 Assets 文件夹中的纹理精灵直接拖放到 Tile Palette 窗口中。系统将提示输入新瓦片资源的保存位置。选择保存位置,新的瓦片资源就会在选择的文件夹中生成。生成的瓦片也会自动放置在瓦片面板上。


瓦片资源来源:Kenney

删除瓦片资源

当您删除瓦片资源时,它们将被替换为占位瓦片(由带有各种粉红色阴影的白色方块组成)。占位瓦片放置在已删除瓦片资源的原始位置的瓦片地图上。这有助于识别在项目中有意或无意删除的瓦片资源。

每个删除的瓦片资源都有一个对应的占位瓦片,带有独特的粉红色阴影,可将占位瓦片彼此区分开来。您可以通过使用灌填工具将这些占位瓦片替换为另一个瓦片,或者或删除它们。


左:具有三种不同颜色瓦片资源的瓦片面板(以它们各自的颜色命名 - White、Red 和 Blue)。右:删除白色和蓝色瓦片资源后的瓦片面板。红色瓦片资源尚未删除。


  • 占位瓦片替换已删除瓦片资源添加于 2020.2 NewIn20202
  • 页面内容和屏幕截图更新于 2020.1 NewIn20201
  • 2017.2 版中添加了瓦片地图 NewIn20172
创建瓦片地图 (Tilemap)
Creating a Tile Palette