Мои шейдеры GLSL (OpenGL ES 2.0, "#version 100") не компилируются на графическом процессоре Vivante GC800. Шейдеры прекрасно компилируются на многих других графических процессорах.
Ошибка, которую я получаю:
(2:0) : error : Expect positive integer-line-number after #line.
я использую
#line 0
чтобы сбросить номер строки после включения кода преамбулы (например, #version
и некоторых спецификаторов точности) перед «настоящим» шейдером. Кто-нибудь знает, связано ли это со сбоем компилятора шейдеров Vivante или с тем, что компиляторы шейдеров всех остальных слишком снисходительны?
Мой обходной путь заключается в том, чтобы включать эту директиву только при локальной отладке моих шейдеров.