#UnityShading
Весь плейлист: • Surface-шейдеры в Unity
Тайминги:
00:00 CGPROGRAM
00:36 Переменные
02:20 Типы данных, int и float
04:26 Специальные типы: half и fixed
05:52 bool
06:27 Векторные типы данных
08:05 "Перетасовка" (swizzle) компонентов
08:50 Почему надо избегать bool и int
09:40 Структуры
Дополнения:
Приведения типов таки медленнее, чем запись вида fixed3(1, 1, 1).
Если мы пишем в коде число напрямую, без переменной - можно явно указать, какого она типа:
1 - это int
1.0f - float
1.0h - half
1.0x - fixed
Соответственно, самая "быстрая" запись векторного числа будет такой:
float2(1.0f, 1.0f)
fixed3(1.0x, 1.0x, 1.0x)
Но! fixed - это не родной тип для CgFX, а специальный юнитишный. Так что для fixed лучше писать без явного суффикса, а просто как 1.0
Так что самая быстрая запись для fixed - всё-таки будет такой:
fixed3(1.0, 1.0, 1.0)