screenRect | Rectangle on the screen to use for the texture. In pixel coordinates with (0,0) in the upper-left corner. |
texture | Texture to draw. |
sourceRect | Region of the texture to use. In normalized coordinates with (0,0) in the bottom-left corner. |
leftBorder | Number of pixels from the left that are not affected by scale. |
rightBorder | Number of pixels from the right that are not affected by scale. |
topBorder | Number of pixels from the top that are not affected by scale. |
bottomBorder | Number of pixels from the bottom that are not affected by scale. |
color | Color that modulates the output. The neutral value is (0.5, 0.5, 0.5, 0.5). Set as vertex color for the shader. |
mat | Custom Material that can be used to draw the texture. If null is passed, a default material with the Internal-GUITexture.shader is used. |
pass | If -1 (default), draws all passes in the material. Otherwise, draws given pass only. |
Draw a texture in screen coordinates.
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; using System.Collections;
public class ExampleClass : MonoBehaviour { public Texture aTexture; void OnGUI() { if (Event.current.type.Equals(EventType.Repaint)) Graphics.DrawTexture(new Rect(10, 10, 100, 100), aTexture); } }