Объявление
public static Sprite Create(Texture2D texture, Rect rect, Vector2 pivot, float pixelsPerUnit, uint extrude);public static Sprite Create(Texture2D texture, Rect rect, Vector2 pivot, float pixelsPerUnit, uint extrude, SpriteMeshType meshType);
public static Sprite Create(Texture2D texture, Rect rect, Vector2 pivot, float pixelsPerUnit, uint extrude, SpriteMeshType meshType, Vector4 border, bool generateFallbackPhysicsShape);
public static Sprite Create(Texture2D texture, Rect rect, Vector2 pivot, float pixelsPerUnit, uint extrude, SpriteMeshType meshType, Vector4 border);
public static Sprite Create(Texture2D texture, Rect rect, Vector2 pivot);
public static Sprite Create(Texture2D texture, Rect rect, Vector2 pivot, float pixelsPerUnit);
Параметры
texture | Текстура, из которой можно получить спрайтовую графику. |
rect | Прямоугольная часть текстуры для спрайта. |
pivot | Точка вращения спрайта относительно его графического прямоугольника. |
pixelsPerUnit | Количество пикселей в спрайте, соответствующих одной единице в мировом пространстве. |
extrude | Величина, на которую спрайтовая сетка должна быть расширена наружу. |
meshType | Управляет типом сетки, созданной для спрайта. |
border | Размеры границ спрайта (X=слева, Y=снизу, Z=справа, W=сверху). |
generateFallbackPhysicsShape | Создает физическую форму по умолчанию для спрайта. |
Описание
Создайте новый объект Sprite.
Sprite.Create создает новый спрайт, который можно использовать в игровых приложениях. Необходимо загрузить текстуру и назначить ее Create, чтобы управлять тем, как будет выглядеть новый Sprite. В приведенном ниже примере сценария новый спрайт отображается при нажатии кнопки. Новый спрайт создается в меню «Пуск».
Второй аргумент rect
определяет используемую подтекстуру. Аргумент rect
определяется в пикселях текстуры. Rect(50.0f, 10.0f, 200.0f, 140.0f) создаст диапазон слева направо от 50.0f до 50.0f + 200.0f = 250.0f. Диапазон снизу вверх будет составлять от 10,0f до 10,0f + 140,0f = 150,0f.
pivot
определяет, что станет центром Sprite. Это Vector2
относительно rect
, где Vector2(0.0f, 0.0f) — нижний левый, а Vector2(1.0f , 1.0f) вверху справа. Значение pixelsPerUnit определяет размер спрайта. Уменьшение этого значения ниже 100 пикселей на мир увеличивает размер спрайта. Значение extrude
определяет количество пикселей, окружающих спрайт
.
Это полезно, если Sprite включен в атлас. meshType
выбирает, используется ли FullRect
или Tight
. Наконец, border
определяет размер прямоугольника Sprite. Вокруг Sprite можно поставить пробелы.
Смотрите так же: SpriteRenderer class.
// Создаем Спрайт при запуске.
// Назначаем спрайту текстуру при нажатии кнопки.
using UnityEngine;
public class spriteCreate : MonoBehaviour
{
public Texture2D tex;
private Sprite mySprite;
private SpriteRenderer sr;
void Awake()
{
sr = gameObject.AddComponent<SpriteRenderer>() as SpriteRenderer;
sr.color = new Color(0.9f, 0.9f, 0.9f, 1.0f);
transform.position = new Vector3(1.5f, 1.5f, 0.0f);
}
void Start()
{
mySprite = Sprite.Create(tex, new Rect(0.0f, 0.0f, tex.width, tex.height), new Vector2(0.5f, 0.5f), 100.0f);
}
void OnGUI()
{
if (GUI.Button(new Rect(10, 10, 100, 30), "Add sprite"))
{
sr.sprite = mySprite;
}
}
}