Cross Fade

Шейдеры и все-все-все.

Cross Fade

Сообщение Diab10 16 мар 2016, 19:40

Всем привет!

Пытаюсь понять, как сделать появление/исчезновение предмета, как сделано в SpeedTree билборде.

Вначале подумал, что нужно взять текстуру-маску, и при помощи неё как то выводить нужные точки. Как это сделать - ума не приложу. Да и прикреплять на каждый материал дополнительную текстуру - не хотелось бы.

Потом решил глянуть шейдер SpeedTree билборда. Нашёл такой пример: https://github.com/keijiro/CrossFadingL ... Lod.shader
Если я правильно понял, то для Cross Fade нужно подключить это:
Синтаксис:
Используется csharp
#pragma multi_compile _ LOD_FADE_CROSSFADE

Потом сделать так:
Синтаксис:
Используется csharp
o.Alpha = c.a * unity_LODFade.x;


Но как устанавливать значение расстояния - я не знаю. Я так понимаю этот шейдер будет работать с LODGroup, лодГруппа сама пошлёт расстояние в шейдер. А как без LODGroup сделать?

Или как то ещё можно сделать? :)
Аватара пользователя
Diab10
Адепт
 
Сообщения: 3401
Зарегистрирован: 17 мар 2011, 20:42
Откуда: 123 RUS
Skype: diab1023

Вернуться в Shader Lab

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2