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(默认值),绘制材质中的所有通道。否则,仅绘制给定通道。 |
在屏幕坐标系中绘制纹理。
If you want to draw a texture from inside of OnGUI code, you should only do that from EventType.Repaint events. It's probably better to use GUI.DrawTexture for GUI code.
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); } } }