Написать шейдер для Unity 5 Personal

Александр17 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
04.06.2015

Входные параметры шейдера: цвет (float4 Color), 2D текстура _MainTex.

Условия работы:

- Можно использовать либо вертекс\фрагмент, либо сурфейс, на ваш вкус.

- Удар по перформансу - не более, чем на 20% выше дефолтного Standart материала.

Обставновка:

- Шейдер расположен только на 1 объекте - это нестатичная плоскость.

- На плоскость воздействуют лампочки, а так же падают тени от объектов.

- Тип рендера камеры deferred (не legacy, так что помоему для лампочек будет “deferred lighting” aka Light Pre-Pass).

Задача шейдера строго следующая:

- Берется результирующий цвет точки (на объекте с материалом шейдера) и выясняется, попадает ли хоть крупица света от любой лампочки,

- если да, то пиксель не рисуется (clip, discard)

- если нет, то пиксель должен рисоваться строго указанным сшплошным цветом (параметр _Color) * tex2D от текстуры, и никаким более

- При рисовании пикселя обязательно учитывать альфа канал, т.е. общую прозрачность видимой области плоскости.

- При рисовании пикселя (если вариант "не clip") ни в коем случае нельзя учитывать его освещенность, результирующий цвет не должен зависеть от расстояния до лампочек.