8BITDEVreal Ответов: 2

Шейдеры LWJGL не работают без видимой причины


Итак, я новичок в lwjgl и занимаюсь созданием 3d-игры, поэтому я изучал шейдеры и следил за ними. учебник и я получил это сообщение об ошибке

0(1) : error C0000: syntax error, unexpected $undefined, expecting "::" at token "#"
0(5) : error C5060: out can't be used with non-varying color
0(10) : warning C1503: undefined variable "pos"


а мой код для vertexShader таков

#version 150

in vec3 pos;

out vec3 color;

void main(void)
{
	
	gl_Position = vec4(pos, 1.0);
	color = vec3(0.5,0.5,1.0);
	
}


мой код для fragmentShader таков

#version 150

out vec4 outColor;

in vec3 color;

void main(void)
{
	outColor = vec4(color,1.0);
}


Что я уже пробовал:

я пробовал прецизионный highp float;

но это дало мне эту ошибку

0(1) : warning C7022: unrecognized profile specifier "highp"
0(1) : warning C7022: unrecognized profile specifier "nullprecision"
0(5) : error C5060: out can't be used with non-varying color


я делаю что-то не так?

2 Ответов

Рейтинг:
2

8BITDEVreal

я понял, что он больше не поддерживает #version, а вход и выход также недействительны, поэтому я обнаружил, что это просто ошибка с моим шейдерным кодом, поскольку я следую серии учебников пару лет назад

мой новый vertexShader:
прецизионный высокоточный поплавок;

пустота главная() {

gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;
gl_Color = gl_Position + 0.5;
gl_FrontColor = gl_Color;

}

фрагментшейдер:
[код]прецизионный highp float;

пустота главная() {

gl_FragColor = gl_Color;

}


Рейтинг:
0

Richard MacCutchan

Вам нужно проверить документацию на наличие правильного синтаксиса для вашего кода и сообщений об ошибках. Поскольку это специализированная библиотека, вы, скорее всего, получите более быстрый ответ на Форум LWJGL - индекс[^].


8BITDEVreal

я уже проверил документацию и сделаю пост на форуме lwjgl

Richard MacCutchan

Я не смог найти ссылку на документацию, которая делает ваш код понятным. И, честно говоря, это не похоже на действительную Java.

8BITDEVreal

его glsl и этот учебник делают то же самое https://www.youtube.com/watch?v=4w7lNF8dnYw&t=2s