Unity 6.3
0 онлайн 8 гостей 3 в системе
Вход

GUI.DrawTextureWithTexCoords

Declaration

public static void DrawTextureWithTexCoords(Rect position, Texture image, Rect texCoords);
public static void DrawTextureWithTexCoords(Rect position, Texture image, Rect texCoords, bool alphaBlend);

Параметры

Параметр Описание
должность Прямоугольник на экране, чтобы нарисовать текстуру внутри.
изображение Texture для отображения.
texCoords Как масштабировать изображение, если его соотношение сторон не соответствует соотношению сторон, в котором оно будет нарисовано.
alphaBlend Использовать ли альфа-слияние изображения на дисплее (по умолчанию). Если false, изображение рисуется на дисплее.

Описание

Нарисовать текстуру внутри прямоугольника с заданными координатами текстуры.

Используйте эту функцию для обрезки или плитки изображения внутри заданного прямоугольника. Второй Rect texCoords описывает, как текстура регулируется, чтобы вписаться в положение Rect. Первый прямоугольник имеет свой размер в пикселях; второй прямоугольник дается в диапазоне от 0.0 до 1.0.

Дополнительные ресурсы: GUI.color, GUI.contentColor.

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)); } }