GLSL
OpenGL Shading Language
OpenGLのAPIを叩いて映像表現などができる仕掛け。簡単にいうとGPUで動いているため、CPUから情報を持ってくるにはinterface的なものを介す必要がある。
そもそもCPUと世界線が違うことに注意が必要。たとえばこんなコードになる。
code:a
void mainImage(out vec4 fragColor, in vec2 fragCoord)
{
vec2 uv = fragCoord / iResolution.xy;
fragColor = vec4(1.0, 0, 0, 1.0);
}
この中で、mainImage関数は描画領域を再描画するときに、ピクセルの数だけ並列に呼ばれる。
つまり、この関数はあるピクセルの色を決定する関数
fragCoordは今色を決めようとしているピクセルの座標。(x,y)でvec2になっている。
fragColorはそのピクセルの色。ARGBで255が1.0、0が0。4つあるのでvec4。