Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Webgl 操纵gl_光源[gl_MaxLights]_Webgl - Fatal编程技术网

Webgl 操纵gl_光源[gl_MaxLights]

Webgl 操纵gl_光源[gl_MaxLights],webgl,Webgl,OpenGL®着色语言规范版本1.20显示以下内容: struct gl_LightSourceParameters { vec4 ambient; // Acli vec4 diffuse; // Dcli vec4 specular; // Scli vec4 position; // Ppli vec4 halfVector; // Derived: Hi vec3 s

OpenGL®着色语言规范版本1.20显示以下内容:

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];
此外,还显示了以下代码段:

lightDir = normalize(vec3(gl_LightSource[0].position));
显示了许多uniform*函数,但似乎没有任何函数像gl_LightSource[0]那样处理统一变量数组

如何使用JavaScript设置WebGL中的gl_LightSource[0]字段?例如,gl_光源[0]。位置

提前感谢你的帮助


注意:WebGL上的Cross post基于OpenGL ES 2.0,即专为手机等受限硬件设计的OpenGL版本,不支持开箱即用的照明;你必须自己编写代码。我已经写了(大部分是松散地基于NeHe OpenGL的)解释如何做到这一点;考虑到你的问题,它们可能对你来说有点基本,但第7课和第12课可能会给你一些有用的提示