2D 游戏
Sprite Creator

Sprites

__精灵__是 2D 图形对象。如果习惯于在 3D 空间中工作,__精灵__本质上只是标准纹理,但可通过一些特殊技巧在开发过程中组合和管理精灵纹理以提高效率和方便性。

Unity provides a placeholder Sprite Creator, a built-in Sprite Editor, a Sprite Renderer and a Sprite Packer

See Importing and Setting up Sprites below for information on setting up assets as Sprites in your Unity project.

Sprite Tools

Sprite Creator

使用 Sprite Creator 可在项目中创建占位精灵,这样就可以继续开发而无需获取或等待图形。

Sprite Editor

Sprite Editor 允许从较大的图像中提取精灵图形,并在图像编辑器中编辑单个纹理内的多个分量图像。例如,可以使用此工具将角色的手臂、腿和身体保持为一个图像中的单独元素。

Sprite Renderer

应使用 Sprite Renderer 组件而不是用于 3D 对象的 Mesh Renderer 来渲染精灵。使用该组件可将图像显示为__精灵__,以便在 2D 和 3D 场景中均可使用。

Sprite Packer

使用 Sprite Packer 可根据项目来优化视频内存的使用和性能。

Importing and Setting Up Sprites

Sprites are a type of Asset in Unity projects. You can see them, ready to use, via the Project View.

可通过两种方式将__精灵__引入项目:

  1. In your computer’s Finder (Mac OS X) or File Explorer (Windows), place your image directly into your Unity project’s Assets folder.

    Unity detects this and displays it in your project’s Project View.

  2. In Unity, go to Assets>Import New Asset… to bring up your computer’s Finder (Mac OS X) or File Explorer (Windows).

    From there, select the image you want, and Unity puts it in the Project View.

See Importing Assets for more details on this and important information about organising your Assets folder.

Setting your Image as a Sprite

If your project mode is set to 2D, the image you import is automatically set as a Sprite.

但是,如果项目模式设置为 3D,则图像将设置为__纹理 (Texture),因此需要更改资源的__纹理类型 (Texture Type)

1.单击该资源以查看其 Import Inspector。 2. Set the Texture Type to Sprite (2D and UI).

*(See Fig 1: Set Texture Type....)*

See 2D or 3D Projects for details on setting your project mode to 2D.

Fig 1: Set Texture Type to Sprite (2D and UI) in the assets inspector
Fig 1: Set Texture Type to Sprite (2D and UI) in the asset’s inspector

Sorting Sprites

Unity 中的渲染器按几个条件排序,例如图层顺序或与摄像机的距离。Unity 的 GraphicsSettings(菜单:__Edit__ > Project Settings > Graphics__)提供了一项名为 Transparency Sort Mode__ 的设置,此设置可根据精灵相对于摄像机的位置来控制精灵的排序方式。更具体地说,此设置使用精灵在轴上的位置来确定哪些精灵相对于其他精灵透明,而哪些不透明。

Transparency Sort Mode 有四个可用选项:

  • Default - 根据摄像机的 Projection 模式设置为 Perspective 还是 Orthographic 来进行排序

  • Perspective - 根据透视图进行排序。透视图根据从摄像机位置到精灵中心的距离对精灵进行排序。

  • Orthographic - 根据正交视图进行排序。正交视图根据沿视图方向的距离对精灵进行排序。

  • Custom Axis - 根据 Transparency Sort Axis 中设置的指定轴进行排序

如果已将 Transparency Sort Mode 设置为 Custom__,则需要设置 Transparency Sort Axis__:

如果 Transparency Sort Mode 设置为 __Custom Axis__,则 Scene 视图中的渲染器将根据此轴与摄像机之间的距离进行排序。应使用介于 –1 和 1 之间的值来定义此轴。例如:X=0、Y=1、Z=0 将此轴方向设置为向上。X=1、Y=1、Z=0 将此轴方向设置为 X 和 Y 之间的对角线方向。

使用脚本对精灵排序

还可以使用脚本通过修改每个摄像机的以下属性来按照每个摄像机对精灵排序:

示例:

var camera = GetComponent<Camera>();

camera.transparencySortMode = TransparencySortMode.CustomAxis;

camera.transparencySortAxis = new Vector3(0.0f, 1.0f, 0.0f);

示例

例如,若要沿 Y 轴对精灵进行排序,可使用此设置。这种情况在 2D 游戏中很常见,通常需要将较高的精灵排在较低的精灵之后,这样会看起来更远。

To have Unity manage this automatically, set the Transparency Sort Mode to Custom Axis, and set the Y value for the Transparency Sort Axis to a value higher than 0.


  • 2017–05–24 Page amended with no editorial review

  • 在 5.6 版中添加了 Transparancy Sort Mode

2D 游戏
Sprite Creator