Я работаю над игрой, и я в настоящее время пишу шейдер для отражения света от объекта, и я получаю сообщение об ошибке:GLSL Shader не компиляции
ERROR: 0:25: '-' does not operate on 'vec3' and 'vec4'
fragmentShader файл:
vec3 unitVectorToCamera = normalize(toCameraVector);
vec3 lightDirection = -unitLightVector;
vertexShader файл:
toCameraVector = (inverse(viewMatrix) * vec4(0.0, 0.0, 0.0, 1.0)).xyz - worldPosition;
Версия:
#version 400 core
Любая помощь была бы принята с благодарностью.
Можем ли мы увидеть полные файлы шейдеров? Вероятно, вы пытаетесь вычесть vec4 из vec3 (или наоборот). – Reigertje
fragmentShader: http://pastebin.com/YQZDTDWU vertexShader: http://pastebin.com/CSqs02wS –
Вы должны добавить код к вопросу. В противном случае вопрос/ответы больше не имеет смысла, когда пастебины удаляются. – BDL