Расположение The OpenGL ® Shading Language Spec версия 1,20 http://www.opengl.org/registry/doc/GLSLangSpec.Full.1.20.8.pdf показывает следующее:Манипулирование gl_LightSource [gl_MaxLights]
struct gl_LightSourceParameters {
vec4 ambient; // Acli
vec4 diffuse; // Dcli
vec4 specular; // Scli
vec4 position; // Ppli
vec4 halfVector; // Derived: Hi
vec3 spotDirection; // Sdli
float spotExponent; // Srli
float spotCutoff; // Crli
// (range: [0.0,90.0], 180.0)
float spotCosCutoff; // Derived: cos(Crli)
// (range: [1.0,0.0],-1.0)
float constantAttenuation; // K0
float linearAttenuation; // K1
float quadraticAttenuation;// K2
};
uniform gl_LightSourceParameters gl_LightSource[gl_MaxLights];
Кроме того, http://www.lighthouse3d.com/opengl/glsl/index.php?ogldir1 показывает следующие фрагменты кода:
lightDir = normalize(vec3(gl_LightSource[0].position));
https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/doc/spec/WebGL-spec.html#5.10 показывает много униформы * но ничего, похоже, не имеет дело с массивом однородной переменной типа gl_LightSource [0].
Как установить поля gl_LightSource [0] в WebGL с использованием JavaScript? Например, gl_LightSource [0] .положение
Заранее за вашу помощь.
Примечание: Кросс пост на http://www.khronos.org/message_boards/viewtopic.php?f=43&t=3373