通过将纹理放入 Assets 文件夹,即可将等距瓦片地图的各个瓦片或瓦片图集导入 Unity 项目。选择导入的图像可以在 Inspector 窗口中查看其纹理导入器 (Texture Importer) 设置。
导入精灵供等距瓦片地图中使用时,请使用以下建议设置。有关每项设置的更多信息,请参阅 Texture Type: Sprite (2D and UI) 文档。
1.Texture Type - 将此项设置为 Sprite (2D and UI)。瓦片地图不支持其他纹理类型。 2.Sprite Mode - 如果纹理只包含一个精灵,将此项设置为 Single。如果包含多个精灵纹理(例如具有多个瓦片纹理的精灵图集),则设置为 Multiple。 3.Pixels Per Unit (PPU) - 此值是构成所选精灵的一个 Unity 单位的像素数。此设置决定了精灵在瓦片地图上渲染时的大小。还受到包含瓦片地图的网格的 Cell Size 设置(决定了构成单个单元格的 Unity 单位数量)的影响。请参阅下面的示例以了解 PPU 值和网格的 Cell Size 设置交互。 4.Mesh Type - 设置为 Tight 可确保瓦片网格贴合导入的精灵的轮廓,并使瓦片在瓦片地图上绘制到一起保持齐平。由于大多数等距瓦片一般为菱形,将此属性设置为 Full Rect 可能会导致在等距瓦片的角点处绘制不必要的透明空间而造成浪费,因此不建议这样设置。 5.Generate Physics Shape - 如果瓦片不需要与 Physics2D 交互,则取消选中此选项。如果启用此选项,可根据瓦片精灵的形状生成物理形状,然后与 Tilemap Collider 组件一起使用。若要使生成的物理形状与瓦片地图的单元格匹配,请选择瓦片资源并将其 Collider Type 属性设置为 Grid。
在下面的示例中,导入的精灵为 256x128 的图像,且等距瓦片地图的 Cell Size 为(XYZ:1, 0.5, 1)Unity 单位。要使精灵完全适合瓦片地图的单个单元格,请将其 PPU 值设置为 256。然后,精灵的整个宽度对应于一个 Unity 单位:等于单个单元格的宽度(X 值:1)。
如果精灵的 PPU 值设置为 128,则其宽度变为 2 (256px/128) Unity 单位。这会导致精灵在瓦片地图上绘制时在视觉上显示为覆盖 2 个单元格的宽度。但是,瓦片的原始单元格位置保持不变。
导入精灵后,通过打开每个精灵的精灵编辑器并编辑它们的轮廓即可优化轮廓。对于等距瓦片地图中的精灵,应该设置精灵的 Pivot 属性,使“ground”相对于精灵。
如果在将 Sprite Mode 设置为 Multiple 的条件下导入纹理并且纹理包含多个精灵,则应在 Sprite Editor 中编辑每个精灵的轮廓。