Решение проблемы акне
This commit is contained in:
parent
debbd4da6a
commit
af139e684b
|
@ -72,6 +72,8 @@ void main()
|
||||||
fragPosLightSpace = (sun.vp * vec4(fragPos, 1.0)).xyz;
|
fragPosLightSpace = (sun.vp * vec4(fragPos, 1.0)).xyz;
|
||||||
// Переход от [-1;1] к [0;1]
|
// Переход от [-1;1] к [0;1]
|
||||||
fragPosLightSpace = (fragPosLightSpace + vec3(1.0)) / 2;
|
fragPosLightSpace = (fragPosLightSpace + vec3(1.0)) / 2;
|
||||||
|
// Сдвиг для решения проблемы акне
|
||||||
|
fragPosLightSpace.z -= max(0.05 * (1.0 - dot(N, sun.direction)), 0.005);
|
||||||
// Получим значение ближайшей глубины к источнику
|
// Получим значение ближайшей глубины к источнику
|
||||||
closestDepth = texture(sunShadowDepth, fragPosLightSpace.xy).r;
|
closestDepth = texture(sunShadowDepth, fragPosLightSpace.xy).r;
|
||||||
// Проверим, что рассматриваемый фрагмент ближе чем значение глубины
|
// Проверим, что рассматриваемый фрагмент ближе чем значение глубины
|
||||||
|
|
Loading…
Reference in New Issue