uniform vec3 lightPos;
void main(void)
{
vec3 normal;
vec3 lightDir;
vec4 diffuse;
float angle,kDiff=0.8;
normal=normalize(gl_NormalMatrix * gl_Normal);
lightDir = normalize(lightPos);
angle=max(dot(normal, lightDir), 0.0);
diffuse=vec4(0.5,0.5,0.5,1.0);
gl_FrontColor=gl_Color*angle+vec4(0.3,0.3,0.3,1.0);
gl_Position=ftransform();
}
OpenGL Light Shader
Есть вершинный шейдер для света:
Код:
Проблема в том, что положение света получается относительно положения камеры. Т.е. передвигается камера-передвигается и источник света. Вопрос. Как зафиксировать источник света на одной позиции? Желательно пример...да и объяснение доступное...