2016-09-28 3 views
-1

Я использую последнюю рекомендованную версию LWJGL 3, и, пытаясь скомпилировать шейдеры, я получаю ошибки.LWJGL GLSL shader не компилируется

Shader:

#version 330 

in vec2 position; 

void main() { 
    gl_Position = vec4(position, 0.0, 1.0); 
} 

Ошибка:

Vertex shader failed to compile with the following errors: 
ERROR: 0:1: error(#307) Invalid profile "in" 
ERROR: 0:1: error(#76) Syntax error: unexpected tokens following #version 
ERROR: 0:1: error(#364) Invalid: unexpected token in symbol. 
ERROR: error(#273) 3 compilation errors. No code generated 

Я не был в состоянии найти все, что связано с этой ошибки в Интернете. Кто-нибудь здесь знает?

+0

Попробуйте '#version 330 core'. Это должно быть по умолчанию, но хорошо. Также вы уверены, что ваша настройка поддерживает 3,3? –

+0

Как вы читаете на шейдере? Похоже, что в строке отсутствуют символы конца строки ('\ n'), что означает, что компилятор рассматривает ключевое слово in в качестве классификатора профилей для директивы' # version'. – BDL

+0

Мой компьютер поддерживает до 4.4. Ядро версии 330 не существует, по крайней мере, оно говорит, что это не так. – BeefEX

ответ

0

Похоже, что в строке кода отсутствуют символы конца строки (\n), что означает, что компилятор рассматривает ключевое слово in в качестве профиля для #version.