Я работаю над проектом, в котором скрытые шейдеры скрыты в исходном коде. Я получил эту ошибку (во время выполнения):Ошибка компиляции шейдера
Error compiling vertex shader:
Full VS shader source:
//precision highp float;
uniform vec2 uEyeToSourceUVScale;
uniform vec2 uEyeToSourceUVOffset;
attribute vec4 aPosition; ///< [-1,+1],[-1,+1] over the entire framebuffer. Lerp factor in Pos.z. Vignette fade factorin Pos.w.
attribute vec2 aTanEyeAnglesR; ///< The tangents of the horizontal and vertical eye angles for the red channel.
attribute vec2 aTanEyeAnglesG; ///< The tangents of the horizontal and vertical eye angles for the green channel.
attribute vec2 aTanEyeAnglesB; ///< The tangents of the horizontal and vertical eye angles for the blue channel.
varying vec4 vPosition;
varying vec2 vTexCoordR;
varying vec2 vTexCoordG;
varying vec2 vTexCoordB;
void main(void)
{
vPosition = aPosition;
vTexCoordR = aTanEyeAnglesR * uEyeToSourceUVScale + uEyeToSourceUVOffset;
vTexCoordG = aTanEyeAnglesG * uEyeToSourceUVScale + uEyeToSourceUVOffset;
vTexCoordB = aTanEyeAnglesB * uEyeToSourceUVScale + uEyeToSourceUVOffset;
vTexCoordR.y = 1.0 - vTexCoordR.y;
vTexCoordG.y = 1.0 - vTexCoordG.y;
vTexCoordB.y = 1.0 - vTexCoordB.y;
gl_Position = vec4(aPosition.xy, 0, 1);
}
Shader compilation failed.
Я не знаю, как подойти не решение этой проблеме (нет опыта шейдера); однако, я знаю, что шейдерный код похож на код C++, и в этом смысле это выглядит очень корректно для меня (если только я чего-то не хватает).
Что-то явно не так с этим кодом шейдера?
Какое сообщение об ошибке вы получаете в журнале? –
@Nicol: как проверить журнал? – George
[См. Это] (https://www.khronos.org/opengl/wiki/Shader_Compilation#Example). [Или это] (http://stackoverflow.com/documentation/opengl/8685/shader-loading-and-compilation#t=201701200148341908547) –