版本: 2022.3
语言 : 英语
排序组
精灵遮罩

9切割精灵

9切割是一种2D技术,它允许你在不同尺寸下重复使用一个图像,而不需要准备多个资源可用于您游戏或项目的任何媒体或数据。资源可能来自Unity外部创建的文件,例如3D模型、音频文件或图像。您也可以在Unity中创建某些资源类型,例如动画控制器、音频混频器或渲染纹理。更多信息
查看词汇表
。这个过程涉及将图像分割成九个部分,当您调整精灵的大小(即,在网格结构中重复),不同的部分以不同的方式缩放或平铺,以保持精灵的比例。这在创建图案或2D环境中的墙壁或地板时非常有用。

这是一个9切割精灵的示例,分割成九个部分。每个部分都标记了从A到I的字母。

以下要点描述了更改图像尺寸时会发生什么

  • 四个角(A、C、G和I)的尺寸保持不变。

  • B和H部分水平拉伸或平铺。

  • D和F部分垂直拉伸或平铺。

  • E部分水平和垂直拉伸或平铺。

本页介绍如何设置9切割,以及根据您是否希望拉伸或平铺上述区域应用哪些设置。

设置精灵进行9切割

在您对精灵进行9切割之前,您需要确保精灵设置正确。

首先,您需要确保将 网格类型 设置为 完整矩形。要应用此设置,请选择精灵,然后在检查器窗口中点击 网格类型 下拉菜单并选择 完整矩形。如果 网格类型 设置为 紧致,则9切割可能无法正确工作,因为这会影响精灵渲染器在设置9切割时生成和渲染精灵的方式。

The Sprite’s Inspector window. Mesh Type is highlighted in the red box.
精灵检查器窗口。红色框中突出显示 网格类型

接下来,您需要通过 精灵编辑器 窗口定义精灵的边界。为此,选择精灵,然后在 检查器显示有关当前所选GameObject、资源或项目设置的信息的Unity窗口,允许您检查和编辑值。更多信息
查看词汇表
窗口中点击 精灵编辑器 按钮。

The Sprite’s Inspector window. The Sprite Editor button is highlighted in the red box. See documentation on Sprites for information on all of the properties in the Sprite Import Settings.
精灵的检查器窗口。红色方框中突出显示的是精灵编辑器按钮。有关精灵导入设置的属性的相关信息,请参阅精灵文档。

使用精灵编辑器窗口来定义精灵的边界(即您希望定义的平面区域,例如地板瓷砖的墙壁)。要执行此操作,请使用精灵控制面板的LRTB字段(分别表示左、右、上和下)。或者,点击并拖动顶部、底部和侧面的绿色点。

Defining the borders of the Sprite in the Sprite Editor window
在精灵编辑器窗口中定义精灵的边界

在精灵编辑器窗口的顶部栏中单击应用。关闭精灵编辑器窗口,并将精灵从项目窗口显示您的Assets文件夹内容(项目选项卡)的窗口 更多信息
请在术语表中查看
拖入场景视图以开始工作。场景场景包含游戏的环境和菜单。每个独特的场景文件可以视为一个独特的级别。在每个场景中,您放置环境、障碍和装饰,实际上以部分构建的形式设计和构建游戏。更多信息
请在术语表中查看

为精灵进行九宫格处理

场景视图这是一个互动的查看您正在创建的世界的方式。您使用场景视图来选择和定位风景、角色、摄像机、光源以及所有类型的游戏对象。更多信息
请在术语表中查看
层次结构窗口中选中文本。在检查器窗口中,转到精灵渲染器一个组件,可以让您将图像显示为精灵,用于2D和3D场景。 更多信息
请在术语表中查看
组件,并更改绘制模式属性。

默认设置为简单;要应用9分隔,根据所需的行为将其设置为分隔平铺。以下部分解释了每个行为,使用此精灵为例

The original Sprite used for the examples shown below
以下示例使用的原始精灵

简单

这是精灵渲染器的默认行为。在尺寸更改时,图像在所有方向上缩放。简单不用于9分隔。

分隔

分隔模式下,角落保持相同大小,精灵的顶部和底部水平拉伸,精灵的两侧垂直拉伸,精灵的中心在水平和垂直方向上拉伸以适应精灵的大小。

当精灵的绘制模式设置为分隔时,您可以选择使用精灵渲染器上的大小属性或矩形变换工具来更改大小。您仍然可以使用变换属性或变换工具来缩放精灵;然而,变换不应用9分隔。

平铺

平铺模式下,精灵保持相同大小,不缩放。相反,精灵的顶部和底部水平重复,精灵的两侧垂直重复,精灵的中心在瓷砖格式中重复以适应精灵的大小。

当您将强>绘制模式设置为“平铺”时,将出现一个名为“平铺模式”的附加属性。请参阅本页上的下一部分,了解更多有关“平铺模式”如何工作的信息。

请参阅有关精灵渲染器的文档,以获取有关组件所有属性的详细信息。

平铺模式

当将 绘图模式 设置为 平铺 时,使用 平铺模式 属性来控制当精灵的尺寸变化时,如何重复各个部分。

Set Draw Mode to Tiled to access Tile Mode in Sprite Renderer

连续

默认情况下,平铺模式 被设置为 连续。当精灵的尺寸发生变化时,重复部分会均匀地重复在精灵中。

自适应

平铺模式 设置为 自适应 时,重复部分只有在精灵的尺寸达到 拉伸值 时才会重复。

使用 拉伸值 滑块设置介于 01 之间的值。请注意,1 代表将图像调整为原始尺寸的两倍,因此如果将 拉伸值 设置为 1,则当图像拉伸到原始尺寸的两倍时,部分将重复。

为了说明这一点,以下图像显示了相同尺寸但 拉伸值 不同的图像之间的差异:

拉伸值 0.1:

拉伸值 0.5:

9切片和碰撞检测

如果您精灵附加了Collider2D,确保当您更改精灵的尺寸时,Collider2D也随之变化。

Box Collider 2DPolygon Collider 2D 是 Unity 中唯一支持 9 切片的 Collider2D 组件。这两个 Collider2D 具有选项 自动平铺。要确保 Collider2D 组件已适当地设置为 9 切片,请选择您要应用精灵的精灵,然后在检查器窗口中导航到 Collider2D,勾选 自动平铺 复选框。这会启用 Collider2D 形状的自动更新,意味着当精灵的尺寸发生变化时,形状会自动重新调整。如果不启用 自动平铺,则即使精灵的尺寸发生变化,Collider2D 也会保持相同的形状和大小。

限制和已知问题

  • 支持 9 切片的唯一两个 Collider2D 是 BoxCollider2D 和 PolygonCollider2D。

  • 当精灵渲染器的 绘图模式 设置为 切割平铺 时,不能编辑 BoxCollider2D 或 PolygonCollider2D。在检查器窗口中的编辑是禁用的,并且会显示警告通知您,因为 Collider2D 由 Sprite Renderer 组件的平铺属性驱动,因此无法编辑。

  • 自动平铺 中重新生成形状时,Collider2D 形状内可能会出现额外的边缘。这可能会影响 碰撞检测当物理引擎检测到两个 GameObject 的碰撞器发现接触或重叠,至少一个具有刚体组件并且在运动时发生碰撞。 更多信息
    术语表 中查看

排序组
精灵遮罩