소스 검색

Merge pull request #10570 from groud/fix_ssao_issue

Fix SSAO issue with intel hd**** hardwares
Rémi Verschelde 8 년 전
부모
커밋
1e55899dfe
1개의 변경된 파일3개의 추가작업 그리고 2개의 파일을 삭제
  1. 3 2
      drivers/gles3/shaders/ssao.glsl

+ 3 - 2
drivers/gles3/shaders/ssao.glsl

@@ -11,6 +11,7 @@ void main() {
 
 [fragment]
 
+#define TWO_PI 6.283185307179586476925286766559
 
 #define NUM_SAMPLES (15)
 
@@ -205,7 +206,7 @@ void main() {
 
 
 	// Hash function used in the HPG12 AlchemyAO paper
-	float randomPatternRotationAngle = float((3 * ssC.x ^ ssC.y + ssC.x * ssC.y) * 10);
+	float randomPatternRotationAngle = mod(float((3 * ssC.x ^ ssC.y + ssC.x * ssC.y) * 10), TWO_PI);
 
 	// Reconstruct normals from positions. These will lead to 1-pixel black lines
 	// at depth discontinuities, however the blur will wipe those out so they are not visible
@@ -225,7 +226,7 @@ void main() {
 #ifdef ENABLE_RADIUS2
 
 	//go again for radius2
-	randomPatternRotationAngle = float((5 * ssC.x ^ ssC.y + ssC.x * ssC.y) * 11);
+	randomPatternRotationAngle = mod(float((5 * ssC.x ^ ssC.y + ssC.x * ssC.y) * 11), TWO_PI);
 
 	// Reconstruct normals from positions. These will lead to 1-pixel black lines
 	// at depth discontinuities, however the blur will wipe those out so they are not visible