screenRect | 屏幕上用于纹理的矩形。在像素坐标系中,左上角为 (0,0)。 |
texture | 要绘制的 Texture。 |
sourceRect | 要使用的纹理区域。在标准化坐标系中,左下角为 (0,0)。 |
leftBorder | 左侧不受缩放比例影响的像素数。 |
rightBorder | 右侧不受缩放比例影响的像素数。 |
topBorder | 顶部不受缩放比例影响的像素数。 |
bottomBorder | 底部不受缩放比例影响的像素数。 |
color | 调制输出的 Color。中性值为 (0.5, 0.5, 0.5, 0.5)。设置为着色器的顶点颜色。 |
mat | 可用于绘制纹理的自定义 Material。如果传递 null,则使用具有 Internal-GUITexture.shader 的默认材质。 |
pass | 如果为 -1(默认值),绘制材质中的所有通道。否则,仅绘制给定通道。 |
在屏幕坐标系中绘制纹理。
如果要在 OnGUI 代码中绘制纹理,则只应从 EventType.Repaint 事件执行 该操作。对于 GUI 代码,使用 GUI.DrawTexture 可能更好。
using UnityEngine;
public class Example : MonoBehaviour { // Draws a texture on the screen at 10, 10 with 100 width, 100 height.
Texture aTexture;
void OnGUI() { if (Event.current.type.Equals(EventType.Repaint)) { Graphics.DrawTexture(new Rect(10, 10, 100, 100), aTexture); } } }