Legacy Documentation: Version 2018.1 (Go to current version)
LanguageEnglish
  • C#
  • JS

Script language

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

GUI.DrawTextureWithTexCoords

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 method DrawTextureWithTexCoords(position: Rect, image: Texture, texCoords: Rect): void;
public static void DrawTextureWithTexCoords(Rect position, Texture image, Rect texCoords);
public static method DrawTextureWithTexCoords(position: Rect, image: Texture, texCoords: Rect, alphaBlend: bool): void;
public static void DrawTextureWithTexCoords(Rect position, Texture image, Rect texCoords, bool alphaBlend);

Parameters

positionRectangle on the screen to draw the texture within.
image Texture to display.
texCoordsHow to scale the image when the aspect ratio of it doesn't fit the aspect ratio to be drawn within.
alphaBlendWhether to alpha blend the image on to the display (the default). If false, the picture is drawn on to the display.

Description

Draw a texture within a rectangle with the given texture coordinates.

Use this function for clipping or tiling the image within the given rectangle. The second Rect texCoords describes how the texture is adjusted to fit the position Rect. The first rectangle has its size in pixels provided; the second rectangle is given in a 0.0 to 1.0 range.

See Also: GUI.color, GUI.contentColor.

#pragma strict
// Use DrawTextureWithTexCoords() to draw a texture.  The texture is draw on the window
// inside a given pixel rectangle.  The size of the drawn texture is based on the value
// of hor.  This ranges from 0.5 to 1.25 so the bottom left half of the texture to a
// greater than normal value.
public class ExampleScript extends MonoBehaviour {
	public var tex: Texture2D;
	private var rect: Rect;
	private var hor: float;
	private var hs: Rect;
	private var label: Rect;
	function Start() {
		var center: float = Screen.width / 2.0f;
		rect = new Rect(center - 200, 200, 400, 250);
		hs = new Rect(center - 200, 125, 400, 30);
		label = new Rect(center - 20, 155, 50, 30);
		hor = 0.5f;
	}
	function OnGUI() {
		hor = GUI.HorizontalSlider(hs, hor, 0.5f, 1.25f);
		GUI.Label(label, hor.ToString("F3"));
		GUI.DrawTextureWithTexCoords(rect, tex, new Rect(0.0f, 0.0f, hor, hor));
	}
}
using UnityEngine;

// Use DrawTextureWithTexCoords() to draw a texture. The texture is draw on the window // inside a given pixel rectangle. The size of the drawn texture is based on the value // of hor. This ranges from 0.5 to 1.25 so the bottom left half of the texture to a // greater than normal value.

public class ExampleScript : MonoBehaviour { public Texture2D tex; private Rect rect; private float hor; private Rect hs; private Rect label;

void Start() { float center = Screen.width / 2.0f; rect = new Rect(center - 200, 200, 400, 250); hs = new Rect(center - 200, 125, 400, 30); label = new Rect(center - 20, 155, 50, 30); hor = 0.5f; }

void OnGUI() { hor = GUI.HorizontalSlider(hs, hor, 0.5f, 1.25f); GUI.Label(label, hor.ToString("F3")); GUI.DrawTextureWithTexCoords(rect, tex, new Rect(0.0f, 0.0f, hor, hor)); } }
对文档有任何疑问,请移步至开发者社区提问,我们将尽快为您解答