Задать вопрос
Контакты

Наибольший вклад в теги

Все теги (4)

Лучшие ответы пользователя

Все ответы (2)
  • Как изменить прозрачность текстуры в Unity2D?

    @alex22122
    Unity, C#
    Вам нужно у компонента SpriteRenderer получить значение свойства color, изменить поле a у полученного объекта и записать цвет обратно в свойство color.

    Пример скрипта на C#:

    using UnityEngine;

    public class SpriteAlphaChanger : MonoBehaviour
    {
    public SpriteRenderer _sprite = null; // Сюда в инспекторе нужно перетащить нужный вам спрайт (здание).
    public float Speed = 1f; // Задает скорость изменения цвета в единицах в секунду.

    void Update ()
    {
    // Получаем цвет спрайта.
    var color = _sprite.color;
    }

    void OnTriggerEnter2D(Collider2D col)
    {
    // Уменьшаем значение альфы с заданной скоростью. Не забываем Time.deltaTime.
    color.a -= Speed * Time.deltaTime;
    else
    // Увеличиваем значение альфы с заданной скоростью. Не забываем Time.deltaTime.
    color.a += Speed * Time.deltaTime;

    // Не даем значению выйти за границы, для цвета это (0, 1).
    color.a = Mathf.Clamp(color.a, 0, 1);

    // Задаем спрайту новый цвет.
    _sprite.color = color;
    }

    }
    Ответ написан
    Комментировать

Лучшие вопросы пользователя

Все вопросы (10)