GUI.DrawTextureWithTexCoords

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

Parameters

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

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.

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)); } }
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961