DrawTexture
说明 | 在一个矩形区域内绘制纹理 |
---|
用法
以下方法绘制的是严格的矩形:
public static void DrawTexture(Rect position, Texture image);
public static void DrawTexture(Rect position, Texture image, ScaleMode scaleMode);
public static void DrawTexture(Rect position, Texture image, ScaleMode scaleMode, bool alphaBlend);
public static void DrawTexture(Rect position, Texture image, ScaleMode scaleMode, bool alphaBlend, float imageAspect);
以下方法绘制的则是带有边界和圆角的矩形区域:
public static void DrawTexture(Rect position, Texture image, ScaleMode scaleMode, bool alphaBlend, float imageAspect, Color color, float borderWidth, float borderRadius);
public static void DrawTexture(Rect position, Texture image, ScaleMode scaleMode, bool alphaBlend, float imageAspect, Color color, Vector4 borderWidths, float borderRadius);
参数
position
矩形区域的位置和尺寸。
image
要绘制的纹理图片。
scaleMode
贴图不符合绘图比例时缩放图像的模式。
alphaBlend
是否应用透明度混合(默认为是)。
imageAspect
用于源图像的宽高比。 取 0
则使用原始比例。
color
应用在纹理上的色调。
borderWidth / borderWidths
边界宽度,前者为同一宽度,后者为分别定义左、上、右、下四个边界的宽度。
borderRadius / borderRadiuses
圆角矩形的边角半径,前者为同一半径,后者为分别定义左上、右上、右下、左下四个顶点的半径。
示例
private void OnSceneGUI () {
Handles.BeginGUI ();
GUI.DrawTexture (new Rect (5, 5, 100, 100), _target._texture);
GUI.DrawTexture (new Rect (25, 25, 100, 100), Texture2D.whiteTexture, ScaleMode.StretchToFill, true, 0, new Color(0, 0, 0, 0.5f), 0, 5);
Handles.EndGUI ();
}