使用 Sprite Editor 的 Custom Outline 选项可编辑 Unity 渲染精灵纹理所在的网格的形状。Custom Outline 编辑器允许使用控制点来创建和定义精灵网格轮廓的形状。
默认情况下,Unity 在矩形网格上渲染每个精灵。此网格可能包含纹理边框外部的透明区域,而渲染这些透明区域会对性能产生负面影响。使用 Custom Outline 编辑器定义与精灵纹理轮廓匹配的网格轮廓时,可以减小透明区域的大小,从而提高性能。
要访问 Custom Outline 编辑器,请选择一个精灵,然后在其 Inspector 窗口中选择 Sprite Editor。单击 Sprite Editor 窗口左上角的 Sprite Editor 下拉选单,然后选择 Custom Outline。
Unity 可以自动为您生成网格轮廓。Custom Outline 模式有一些设置可以调整 Unity 执行此操作的方式。
属性 | 功能 |
---|---|
Snap | 将控制点贴靠到最近的像素。启用此选项可以有效地使用 Outline Tolerance 设置。 |
Outline Tolerance | 使用滑动条控制生成的网格轮廓的复杂性和准确性。在最小值 (0) 时,Sprite Editor 会以最少的控制点在精灵周围生成基本网格轮廓。在最大值 (1) 时,Sprite Editor 会以大量控制点和一个紧密网格生成一个网格轮廓,尽可能贴合精灵的像素轮廓。 |
Generate | 单击可自动创建网格轮廓。 |
要自动生成网格轮廓,请执行以下操作:
1.选择一个精灵,导航到 Sprite Editor > Custom Outline 窗口,然后选择 Generate。Editor 自动生成一个贴合精灵透明边框的网格轮廓。 2.启用 Snap 以确保生成的网格轮廓贴合精灵纹理的形状。 2.使用 Outline Tolerance 滑动条调整生成的网格轮廓尝试贴合精灵纹理轮廓的紧密程度。这会影响网格轮廓的总体复杂性以及生成的控制点数量。 3.选择 Generate 在每次更改后刷新网格轮廓。
您可以创建自己的自定义网格轮廓。如果希望网格更小、更大或与精灵纹理的形状不同,此操作将非常有用。请按照此工作流程创建自定义网格轮廓。
创建网格轮廓:单击并拖动精灵以创建包含四个控制点的矩形网格轮廓。重复此步骤在精灵中创建多个网格轮廓。Unity 仅渲染网格轮廓中包含的区域。
更改网格轮廓的形状:要调整网格轮廓的形状,请单击并拖动控制点。将鼠标悬停在控制点上时,控制点会变为蓝色,表示可以选择它。单击控制点并将其拖动到不同位置以调整网格轮廓的形状。
向网格轮廓添加控制点:要添加控制点,请将鼠标悬停在网格轮廓的一段上。沿着网格轮廓的边缘会出现控制点的预览。单击即可在该位置添加新控制点。
移动控制点之间的一段网格轮廓:要移动两个控制点之间的一段,请将鼠标悬停在网格轮廓的一段上时按住 Ctrl。网格轮廓的这一段变为黄色。在按住 Ctrl 的同时,单击并拖动此段即可将其移动到其他位置。
2018–10–19 页面已修订
在 Unity 2017.3 版中将 Edit Outline 更名为 Custom Outline。
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.