Geometry Pass Depth(xy), Normal(xy) Geometry Buffer(이하 G-Buffer) 저장 Light Properties Pass 아래 최종 색상 식에 미리 계산된 항목을 Light Buffer(이하 L-Buffer) 최종 색상 = Ambient + Shadow * Att * (N.L * diffuseColor * diffuseIntensity * diffuseLightColor + R.V^n * specularColor * specularIntensity * specularLightColor ) Light Properties - N.L - LightColor (Diffuse, Specular) - R.V^n - Attenuation Light Texture(A8R8G8B8 format) - Channel 1 : diffuseLightColor.r * N.L * Att - Channel 2 : diffuseLightColor.g * N.L * Att - Channel 3 : diffuseLightColor.b * N.L * Att - Channel 4 : R.V^n * N.L *Att 아래는 관련 Shader Code 입니다. half4 ps_main( PS_INPUT Input ) : COLOR { half4 G_Buffer = tex2D( G_Buffer, Input.texCoord ); // Compute pixel position half Depth = UnpackFloat16( G_Buffer.zw ); float3 PixelPos = normalize(Input.EyeScreenRay.xyz) * Depth; // Compute normal half3 Normal; Normal.xy = G_Buffer.xy*2-1; Normal.z = -sqrt(1-dot(Normal.xy,Normal.xy)); // Computes light attenuation and direction float3 LightDir = (Input....