Version: 2019.3
LanguageEnglish
  • C#

GUI.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

Submission failed

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

Close

Cancel

public static void DrawTexture(Rect position, Texture image);
public static void DrawTexture(Rect position, Texture image, ScaleMode scaleMode);
public static void DrawTexture(Rect position, Texture image, ScaleMode scaleMode, bool alphaBlend);
public static void DrawTexture(Rect position, Texture image, ScaleMode scaleMode, bool alphaBlend, float imageAspect);

Parameters

positionRectangle on the screen to draw the texture within.
image Texture to display.
scaleModeHow to scale the image when the aspect ratio of it doesn't fit the aspect ratio to be drawn within.
alphaBlendWhether to apply alpha blending when drawing the image (enabled by default).
imageAspectAspect ratio to use for the source image. If 0 (the default), the aspect ratio from the image is used. Pass in w/h for the desired aspect ratio. This allows the aspect ratio of the source image to be adjusted without changing the pixel width and height.

Description

Draw a texture within a rectangle.

// Draws a texture in the left corner of the screen.
// The texture is drawn in a window 60x60 pixels.
// The source texture is given an aspect ratio of 10x1
// and scaled to fit in the 60x60 rectangle.  Because
// the aspect ratio is preserved, the texture will fit
// inside a 60x10 pixel area of the screen rectangle.

using UnityEngine; using System.Collections;

public class ExampleClass : MonoBehaviour { public Texture aTexture;

void OnGUI() { if (!aTexture) { Debug.LogError("Assign a Texture in the inspector."); return; }

GUI.DrawTexture(new Rect(10, 10, 60, 60), aTexture, ScaleMode.ScaleToFit, true, 10.0F); } }

public static void DrawTexture(Rect position, Texture image, ScaleMode scaleMode, bool alphaBlend, float imageAspect, Color color, float borderWidth, float borderRadius);
public static void DrawTexture(Rect position, Texture image, ScaleMode scaleMode, bool alphaBlend, float imageAspect, Color color, Vector4 borderWidths, float borderRadius);

Parameters

positionRectangle on the screen to draw the texture within.
image Texture to display.
scaleModeHow to scale the image when the aspect ratio of it doesn't fit the aspect ratio to be drawn within.
alphaBlendWhether to apply alpha blending when drawing the image (enabled by default).
imageAspectAspect ratio to use for the source image. If 0 (the default), the aspect ratio from the image is used. Pass in w/h for the desired aspect ratio. This allows the aspect ratio of the source image to be adjusted without changing the pixel width and height.
colorA tint color to apply on the texture.
borderWidthThe width of the border. If 0, the full texture is drawn.
borderWidthsThe width of the borders (left, top, right and bottom). If Vector4.zero, the full texture is drawn.
borderRadiusThe radius for rounded corners. If 0, corners will not be rounded.
borderRadiusesThe radiuses for rounded corners (top-left, top-right, bottom-right and bottom-left). If Vector4.zero, corners will not be rounded.

Description

Draws a border with rounded corners within a rectangle. The texture is used to pattern the border. Note that this method only works on shader model 2.5 and above.