| 12345678910111213141516171819202122232425262728 |
- // _____________________________ Diffuse ________________________________________
- vec3 finalDiffuse = diffuseBase;
- finalDiffuse *= surfaceAlbedo.rgb;
- finalDiffuse = max(finalDiffuse, 0.0);
- finalDiffuse *= vLightingIntensity.x;
- // _____________________________ Ambient ________________________________________
- vec3 finalAmbient = vAmbientColor;
- finalAmbient *= surfaceAlbedo.rgb;
- // _____________________________ Emissive ________________________________________
- vec3 finalEmissive = vEmissiveColor;
- #ifdef EMISSIVE
- vec3 emissiveColorTex = texture2D(emissiveSampler, vEmissiveUV + uvOffset).rgb;
- finalEmissive *= toLinearSpace(emissiveColorTex.rgb);
- finalEmissive *= vEmissiveInfos.y;
- #endif
- finalEmissive *= vLightingIntensity.y;
- // ______________________________ Ambient ________________________________________
- #ifdef AMBIENT
- vec3 ambientOcclusionForDirectDiffuse = mix(vec3(1.), aoOut.ambientOcclusionColor, vAmbientInfos.w);
- #else
- vec3 ambientOcclusionForDirectDiffuse = aoOut.ambientOcclusionColor;
- #endif
- finalAmbient *= aoOut.ambientOcclusionColor;
- finalDiffuse *= ambientOcclusionForDirectDiffuse;
|