2016-06-02 2 views
0

Мой шейдер "#Version 330 ядро ​​" на первой линии, но он говоритOpenGL GLSL не suported 3,30

0:1(10): error: GLSL 3.30 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.00 ES, and 3.00 ES 

И есть выход из консоли после запуска "glxinfo | Grep 'версия'"

OpenGL core profile version string: 3.3 (Core Profile) Mesa 11.2.2 
OpenGL core profile shading language version string: 3.30 
OpenGL version string: 3.0 Mesa 11.2.2 
OpenGL shading language version string: 1.30 

EDIT: Я знаю, что он говорит, «язык затенения 1,3», но он тоже говорит, что «ядро языка затенения 3.30»

PS: Я использую C# и OpenTK

+1

ли вы запрашиваете контекст керн из ОС? – genpfault

+0

Как я могу это сделать? Существует одна основная проблема - перед тем, как переустановить мой Debian, он сработал. – AbitDeveloper

ответ

1

Решено. Я должен был изменить свой конструктор

using(GameWindow window = new GameWindow(800, 600, GraphicsMode.Default, "...", GameWindowFlags.Default, DisplayDevice.Default, 3, 3, GraphicsContextFlags.ForwardCompatible)) 

PS: This helped

+0

Несмотря на то, что это работает с вашим делом, правильным ответом является проверка того, поддерживает ли ваш ПК правильную версию OpenGL, если нет, то установка новой версии OpenGL ничего не изменит. См. Http://stackoverflow.com/questions/31899973/cant-compile-samples-of-opengl-superbible-7th-unresolved-external-symbol/31902855#31902855 – CroCo

+2

@CroCo Mesa поддерживает новые функции (такие как GLSL 3.30) в основном профиле. Изменение версии и профиля OpenGL может абсолютно изменить ситуацию. –

+0

Пожалуйста, отметьте свой вопрос как разрешенный, выбрав свой собственный ответ в качестве правильного ответа. –

Смежные вопросы