UEDL10-2——贴图、图标

本章代码关键字

1
2
Gizmos.DrawGUITexture()        //绘制贴图,只能在xy平面(不能调整z轴位置)上绘制,局限性较大
Gizmos.DrawIcon() //绘制图标,需要传入图标名,图标要放在Assets/Gizmos文件夹下

Gizmos绘制贴图

Gizmos.DrawGUITexture(new Rect(x, y, w, h), 图片信息)​,该方法只能在xy平面(不能调整z轴位置)上绘制贴图,局限性较大,使用较少

  • 参数一:绘制位置与大小 Rect
  • 参数二:要绘制的图片消息
  • 参数三到六:传入上下左右四个边界值,用于九宫格渲染
  • 参数三或者七:材质球(可选,决定如何绘制)
1
2
3
4
5
6
7
public Texture texture;

private void OnDrawGizmos()
{
if (texture != null)
Gizmos.DrawGUITexture(new Rect(0, 0, 160, 90), texture);
}

输出效果:​image

Gizmos绘制图标

Gizmos.DrawIcon(Vector3.up, "图标名")​,该方法的传入的图标名对应的图标必须放在固定文件夹中:Assets/Gizmos/

该方法绘制的图标会始终面向摄像机的视口方向,效果类似于摄像机和光源在Scene窗口上绘制的图标

image

1
2
3
4
private void OnDrawGizmos()
{
Gizmos.DrawIcon(this.transform.position, "MyIcon");
}

输出效果:image