Передача данных из шейдера в шейдер.

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

Передача данных из шейдера в шейдер.

Сообщение Razor_V 14 окт 2015, 14:06

Собственно возникла задача передавать позицию вершин из одного шейдера в несколько других шейдеров. Скрипты для передачи использовать не желательно в моем случае. Смотрел в UnityCG.cginc, но не совсем понял как это все работает. Для теста написал свой СГинк. Огласил в нем переменную, присвоил ей значение. Подключил свой СГинк к нужному шейдеру. Переменную шейдер кушает, но ее значение игнорируется.
Может ли кто то объяснить как это делается?
Синтаксис:
Используется csharp
#ifndef MY_INCL
#define MY_INCL
fixed3 _Col = fixed3 (1.0,0.0,0.0);
#endif


Далее в шейдере:
Синтаксис:
Используется csharp
//бла бла
#include Assets/Путь/к/моему/СГинкУ/My_Icnl.cginc
//бла бла
o.color.rgb = v.color.rgb * _Col;//И тут все стало черным, а не красным)))
 
Razor_V
UNец
 
Сообщения: 12
Зарегистрирован: 19 ноя 2014, 14:56

Re: Передача данных из шейдера в шейдер.

Сообщение jetyb 15 окт 2015, 08:00

Передача данных в шейдер делается не в коде, а через
Shader.SetGlobalFloat
jetyb
Адепт
 
Сообщения: 1486
Зарегистрирован: 31 окт 2011, 17:21


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

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

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