UG1L5——图片绘制和框

本章代码关键字

1
2
GUI.DrawTexture()    //绘制图片
GUI.Box() //绘制框

图片绘制

GUI.DrawTexture​用来绘制图片,与Label不同,修改它的宽高不会导致等比例缩放

  • 第一个参数 Rect​:位置大小

  • 第二个参数 Texture​:图片

  • 第三个参数 ScaleMode​:缩放模式

    • StretchToFill​:始终填充满
    • ScaleAndCrop​:通过宽高比计算图片,但是会进行裁剪
    • ScaleToFit​:根据宽高比进行计算,不会拉变形,会一直保持图片完全显示的状态
  • 第四个参数 alpha:控制图片是否开启透明通道

  • 第五个参数 imageAspect:自定义宽高比,不填默认为0,就会使用的默认图片宽高

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public Rect texPos;
public Texture tex;
public ScaleMode mode = ScaleMode.StretchToFill;
public bool alpha = true;
public float wh = 0;

private void OnGUI()
{
//第一个参数 位置大小
//第二个参数 图片
//第三个参数 缩放模式 平铺,裁剪,自动适配宽高比
//第四个参数 控制图片是否开启透明通道
//第五个参数 自定义宽高比,不填默认为0,就会默认图片宽高
GUI.DrawTexture(texPos, tex, mode, alpha, wh);
}

GUI.Box()​会绘制一个框,可以作为半透明背景用,如果第二个参数传入字符串则会显示该字符串

1
2
3
4
5
6
public Rect texPos;

private void OnGUI()
{
GUI.Box(texPos, "123");
}