Legacy Documentation: Version 4.6.2
Language: English
  • C#
  • JS
  • Boo

Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

Graphics.DrawTexture

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Sumbission failed

For some reason your suggested change could not be submitted. Please try again in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

public static function DrawTexture(screenRect: Rect, texture: Texture, mat: Material = null): void;
public static void DrawTexture(Rect screenRect, Texture texture, Material mat = null);
public static def DrawTexture(screenRect as Rect, texture as Texture, mat as Material = null) as void
public static function DrawTexture(screenRect: Rect, texture: Texture, leftBorder: int, rightBorder: int, topBorder: int, bottomBorder: int, mat: Material = null): void;
public static void DrawTexture(Rect screenRect, Texture texture, int leftBorder, int rightBorder, int topBorder, int bottomBorder, Material mat = null);
public static def DrawTexture(screenRect as Rect, texture as Texture, leftBorder as int, rightBorder as int, topBorder as int, bottomBorder as int, mat as Material = null) as void
public static function DrawTexture(screenRect: Rect, texture: Texture, sourceRect: Rect, leftBorder: int, rightBorder: int, topBorder: int, bottomBorder: int, mat: Material = null): void;
public static void DrawTexture(Rect screenRect, Texture texture, Rect sourceRect, int leftBorder, int rightBorder, int topBorder, int bottomBorder, Material mat = null);
public static def DrawTexture(screenRect as Rect, texture as Texture, sourceRect as Rect, leftBorder as int, rightBorder as int, topBorder as int, bottomBorder as int, mat as Material = null) as void
public static function DrawTexture(screenRect: Rect, texture: Texture, sourceRect: Rect, leftBorder: int, rightBorder: int, topBorder: int, bottomBorder: int, color: Color, mat: Material = null): void;
public static void DrawTexture(Rect screenRect, Texture texture, Rect sourceRect, int leftBorder, int rightBorder, int topBorder, int bottomBorder, Color color, Material mat = null);
public static def DrawTexture(screenRect as Rect, texture as Texture, sourceRect as Rect, leftBorder as int, rightBorder as int, topBorder as int, bottomBorder as int, color as Color, mat as Material = null) as void

Parameters

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.

Description

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)