Встроенные подключаемые файлы для шейдеров
В Unity есть набор файлов, содержащих заранее определенные переменные и вспомогательные функции, которые могут быть использованы при создании шейдеров. Подключение реализуется с помощью стандартной команды #include, т. е.:
CGPROGRAM
// ...
#include "UnityCG.cginc"
// ...
ENDCG
HLSLSupport.cginc - (подключается автоматически) Вспомогательные макросы и определения функций для кросплатформенной компиляции шейдеров.UnityCG.cginc - часто используемые глобальные переменные и вспомогательные функции.UnityCG.cginc - часто используемые глобальные переменные и вспомогательные функции.AutoLight.cginc - функционал освещения и создания теней, например поверхностные шейдеры по умолчанию используют этот файл.Lighting.cginc - модель освещения стандартного поверхностного шейдера; подключается автоматически при создании поверхностных шейдеров.TerrainEngine.cginc - вспомогательные функции для работы с шейдерами Terrain & Vegetation.Эти файлы можно найти в папке приложения Unity ( в Windows, в Mac), если вам захочется посмотреть, как реализован тот или иной функционал.
При компиляции шейдеров этот файл подключается автоматически. По большей части, он состоит из предпроцессорных макросов для упрощения работы с кросплатформенными шейдерами.
При компиляции шейдеров этот файл подключается автоматически. По большей части, он состоит из предпроцессорных макросов для упрощения работы с кросплатформенными шейдерами.
Обычно этот файл включают в шейдеры Unity, когда требуется получить доступ к дополнительным вспомогательным функциям.
appdata_base: входные данные для вершинного шейдера, включающие положение вершины, ее нормаль и одну текстурную координату.appdata_tan: входные данные для вершинного шейдера, включающие положение вершины, ее нормаль, касательную и одну текстурную координату.appdata_full: входные данные для вершинного шейдера, включающие положение вершины, ее нормаль, касательную, цвет вершины и две текстурные координаты.appdata_img: входные данные для вершинного шейдера, включающие положение вершины и одну текстурную координату.Подключаемые файлы имеют расширение .cginc, ниже представлен список стандартных библиотек: