playcanvas
Version:
Open-source WebGL/WebGPU 3D engine for the web
34 lines (31 loc) • 922 B
JavaScript
var combine_default = (
/* glsl */
`
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
};