tutorial9.frag

来自「GLSL tutorial with sourcecode」· FRAG 代码 · 共 22 行

FRAG
22
字号
varying vec3 N;
varying vec3 L;
varying vec3 P;
varying float pattern;

uniform vec4 color0;    // "Diffuse" Color
uniform vec4 color1;    // "Ambient" Color
uniform vec4 color2;    // "Specular" Color

void main (void)
{
vec3 E = normalize(-P);
vec3 R = normalize(-reflect(L,N));

float diffuse = max(dot(N,L),0.0);
diffuse = smoothstep(diffuse, 0.0, 0.5); 

float spec = pow(max(dot(R,E),0.0), 10.0);
float spec2= pattern*spec;

gl_FragColor = color1 + color0*diffuse + color2*(spec+spec2);
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?