Страница 1 из 2

Как уменьшать альфаканал изображения в Update?

СообщениеДобавлено: 13 июл 2018, 17:07
Sice
Доброго времени суток друзья, мне нужно за 2 секунды уменьшить значение альфаканала объекта Image в методе Update.
Чтобы объект Image стал прозрачным полностью через 2 секунды.
Подскажите пожалуйста как это сделать ?

Re: Как уменьшать альфаканал изображения в Update?

СообщениеДобавлено: 13 июл 2018, 17:33
1max1
Синтаксис:
Используется csharp
color.a -= Time.deltaTime / 2.0f;

Re: Как уменьшать альфаканал изображения в Update?

СообщениеДобавлено: 13 июл 2018, 18:53
Cr0c
1max1 писал(а):
Синтаксис:
Используется csharp
color.a -= Time.deltaTime / 2.0f;

Прямо с картинки брать?

Re: Как уменьшать альфаканал изображения в Update?

СообщениеДобавлено: 13 июл 2018, 18:54
1max1
нет, но я то думаю тс догадается что делать)

Re: Как уменьшать альфаканал изображения в Update?

СообщениеДобавлено: 13 июл 2018, 19:03
Cr0c
1max1 писал(а):нет, но я то думаю тс догадается что делать)

Он догадается только сюда написать. Сам-то знаешь, почему нельзя прямо с компонента брать цвет?

Re: Как уменьшать альфаканал изображения в Update?

СообщениеДобавлено: 13 июл 2018, 19:11
1max1
Почему нельзя брать цвет? Эта строчка вполне легальна :-?
Синтаксис:
Используется csharp
Color color = GetComponent<Image>().color;

Re: Как уменьшать альфаканал изображения в Update?

СообщениеДобавлено: 13 июл 2018, 20:00
Cr0c
1max1 писал(а):Почему нельзя брать цвет? Эта строчка вполне легальна :-?

Вот так ещё скажи делать :D
Синтаксис:
Используется csharp
GetComponent<Image>().color.a -= Time.deltaTime / 2.0f;

Re: Как уменьшать альфаканал изображения в Update?

СообщениеДобавлено: 13 июл 2018, 20:09
1max1
Я ведь уже сказал что так нельзя, вот если бы color был просто полем, а не свойством, то да, но увы(

Re: Как уменьшать альфаканал изображения в Update?

СообщениеДобавлено: 13 июл 2018, 20:36
Cr0c
1max1 писал(а):Я ведь уже сказал что так нельзя, вот если бы color был просто полем, а не свойством, то да, но увы(

Ты НЕ сказал, что так нельзя. В этом и проблема )) он же именно так и сделает, потому что это короче и красивее ))

Re: Как уменьшать альфаканал изображения в Update?

СообщениеДобавлено: 13 июл 2018, 21:03
1max1
В этом и проблема )) он же именно так и сделает, потому что это короче и красивее ))

Ну посмотрим что он ответит)

Re: Как уменьшать альфаканал изображения в Update?

СообщениеДобавлено: 13 июл 2018, 21:39
Fox_game
Cr0c писал(а):
1max1 писал(а):Почему нельзя брать цвет? Эта строчка вполне легальна :-?

Вот так ещё скажи делать :D
Синтаксис:
Используется csharp
GetComponent<Image>().color.a -= Time.deltaTime / 2.0f;

А хули нам дебилам

Re: Как уменьшать альфаканал изображения в Update?

СообщениеДобавлено: 13 июл 2018, 21:53
Fox_game
Sice писал(а):Доброго времени суток друзья, мне нужно за 2 секунды уменьшить значение альфаканала объекта Image в методе Update.
Чтобы объект Image стал прозрачным полностью через 2 секунды.
Подскажите пожалуйста как это сделать ?

Ну вот. Как всегда. Поболтали, а на вопрос так и не ответили. На, лови лавхак
Синтаксис:
Используется csharp
img.color -= new Color32 (0,0,0,Convert.ToByte( 150 * Time.deltaTime));

Re: Как уменьшать альфаканал изображения в Update?

СообщениеДобавлено: 14 июл 2018, 00:30
Sice
Ну совсем меня зачмырили) я понимаю, что такое свойство, а что такое поле)

сделал в итоге так:
Синтаксис:
Используется csharp
gameObject.GetComponent<SpriteRenderer>().color = new Color(255, 255, 255, 0);
 


спасибо всем за помощь.

Re: Как уменьшать альфаканал изображения в Update?

СообщениеДобавлено: 14 июл 2018, 06:32
Nubila
Sice писал(а):Ну совсем меня зачмырили) я понимаю, что такое свойство, а что такое поле)

сделал в итоге так:
Синтаксис:
Используется csharp
gameObject.GetComponent<SpriteRenderer>().color = new Color(255, 255, 255, 0);
 


спасибо всем за помощь.

Пример того, когда ты знаешь "что такое свойство, а что такое поле", но не знаешь что такое "получать компонент в каждом кадре , напливав на кешу"))))) Ну хозяин - барин, как грится....
Если нужно постепенно уменьшать а не сразу в 0, то делай при помощи MoveTowards из Mathf.

Re: Как уменьшать альфаканал изображения в Update?

СообщениеДобавлено: 14 июл 2018, 09:42
Sice
Nubila писал(а):
Sice писал(а):Ну совсем меня зачмырили) я понимаю, что такое свойство, а что такое поле)

сделал в итоге так:
Синтаксис:
Используется csharp
gameObject.GetComponent<SpriteRenderer>().color = new Color(255, 255, 255, 0);
 


спасибо всем за помощь.

Пример того, когда ты знаешь "что такое свойство, а что такое поле", но не знаешь что такое "получать компонент в каждом кадре , напливав на кешу"))))) Ну хозяин - барин, как грится....
Если нужно постепенно уменьшать а не сразу в 0, то делай при помощи MoveTowards из Mathf.

Вот так правильно будет ?)
Синтаксис:
Используется csharp
Color obj;
void Start ()
{
obj = gameObject.GetComponent<SpriteRenderer>().color;
}

void Update()
{
obj = new Color(255, 255, 255, 0);
}