HJG*_*AUM 2 javascript webgl vertex-shader fragment-shader
我正在学习 WebGL 图形编程,最近出现了这段代码。
void main() { gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0); }
Run Code Online (Sandbox Code Playgroud)
这是什么意思?我听说它与渲染光有关,但我完全不知道。
这是一个片段着色器。
片段着色器由您的 GPU 执行以渲染每个样本(通常是一个像素,但在您使用多重采样进行抗锯齿时可能会发生变化)。
片段着色器有一个 main() 函数,它是着色器的起点。
在这里,您只是为gl_FragColor变量赋值。这是一个内置变量,它将决定样本的颜色(像素)。它是一个vec4(4 分量向量)。X 是红色分量,Y 是绿色分量,Z 是蓝色分量。最后一个组件 (w) 是 alpha。
所以这个简短的代码只是简单地用绿色填充你的多边形。