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. |
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.
// Draws a texture on the screen at 10, 10 with 100 width, 100 height. var aTexture : Texture; function OnGUI() { if(Event.current.type.Equals(EventType.Repaint)) Graphics.DrawTexture(Rect(10, 10, 100, 100), aTexture); }
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); } }
import UnityEngine import System.Collections public class ExampleClass(MonoBehaviour): public aTexture as Texture def OnGUI() as void: if Event.current.type.Equals(EventType.Repaint): Graphics.DrawTexture(Rect(10, 10, 100, 100), aTexture)