playcanvas
Version:
Open-source WebGL/WebGPU 3D engine for the web
29 lines (28 loc) • 870 B
JavaScript
var combine_default = `
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 {
combine_default as default
};