playcanvas
Version:
PlayCanvas WebGL game engine
28 lines (26 loc) • 858 B
JavaScript
var combinePS = `
vec3 combineColor(vec3 albedo, vec3 sheenSpecularity, float clearcoatSpecularity) {
vec3 ret = vec3(0);
ret += (dDiffuseLight - light_globalAmbient) * albedo + material_ambient * light_globalAmbient;
ret += albedo * dDiffuseLight;
ret += dSpecularLight;
ret += dReflection.rgb * dReflection.a;
float sheenScaling = 1.0 - max(max(sheenSpecularity.r, sheenSpecularity.g), sheenSpecularity.b) * 0.157;
ret = ret * sheenScaling + (sSpecularLight + sReflection.rgb) * sheenSpecularity;
float clearCoatScaling = 1.0 - ccFresnel * clearcoatSpecularity;
ret = ret * clearCoatScaling + (ccSpecularLight + ccReflection) * clearcoatSpecularity;
return ret;
}
`;
export { combinePS as default };