Mirage писал(а):А я вот компилирую шейдеры с помощью вполне себе опенжеэлевской функции glCompileShader. Я что-то не так делаю?
MylnikovDm писал(а):Вы правы, я не совсем точно выразился в своём комментарии. Компиляция шейдеров происходит непосредственно в процессе выполнения программы, поскольку компилятор шейдеров встроен в драйвер видеокарты. Иначе было бы невозможно обеспечить совместимость программ со всем множеством видеокарт, которые сегодня используются.
Я имел в виду сам исходный текст шейдера, который можно либо хранить в виде отдельных файлов, либо прилинковать непосредственно к исполняемому модулю и потом его грузить как ресурс. Многие игровые движки используют именно первый способ, за счёт чего программы шейдеров у них можно изменять без изменения бинарных файлов самой программы, чем часто пользуются при создании различных модов к играм.
Но, в любом случае, ни компилятор паскаля, ни компилятор С/С++ не обрабатывают программу шейдера. Для них она всего лишь набор текстовых строк, который необходимо скормить специальному компилятору.
Интересно, если я назову хитрую "С-бинарно-двоичную", "программу шейдера", простым и понятным мне словом: скрипт - это будет правильное название или нет?
Не менее интересно: поставит ли, понятие: скрипт - точку в понимании "С-бинарно-двоичных программах для шейдеров и их компиляции в ... "?