assetPath | 资源路径。 |
type | 图标覆盖类型。 |
rect | 图标边界框。 |
绘制图标覆盖。
Unity 在绘制资源图标后调用此方法。
using UnityEditor.VersionControl; using UnityEngine;
[VersionControl("Custom")] public class CustomVersionControlObject : VersionControlObject, IIconOverlayExtension { static Texture2D s_Icon;
static Texture2D GetIcon() { if (s_Icon == null) { s_Icon = new Texture2D(8, 8); for (var y = 0; y < s_Icon.height; ++y) { for (var x = 0; x < s_Icon.width; ++x) { var border = y == 0 || y == s_Icon.height - 1 || x == 0 || x == s_Icon.width - 1; var color = border ? Color.white : Color.red; s_Icon.SetPixel(x, y, color); } } s_Icon.Apply(); } return s_Icon; }
public void DrawOverlay(string assetPath, IconOverlayType type, Rect rect) { var topLeft = new Rect(rect.x, rect.y, 8, 8); var icon = GetIcon(); GUI.DrawTexture(topLeft, icon); } }