OSDN Git Service

Further fix and cleanup to SSAO for glsl < 1.5
authorremy.bouquet@gmail.com <remy.bouquet@gmail.com@75d07b2b-3a1a-0410-a2c5-0572b91ccdca>
Tue, 8 Jan 2013 17:02:33 +0000 (17:02 +0000)
committerremy.bouquet@gmail.com <remy.bouquet@gmail.com@75d07b2b-3a1a-0410-a2c5-0572b91ccdca>
Tue, 8 Jan 2013 17:02:33 +0000 (17:02 +0000)
git-svn-id: http://jmonkeyengine.googlecode.com/svn/trunk@10059 75d07b2b-3a1a-0410-a2c5-0572b91ccdca

engine/src/core-effects/Common/MatDefs/SSAO/ssao.frag

index ec84bb5..b54d18a 100644 (file)
@@ -45,19 +45,6 @@ float doAmbientOcclusion(in vec2 tc, in vec3 pos, in vec3 norm){
    return max(0.0, dot(norm, v) - m_Bias) * ( 1.0/(1.0 + d) ) * m_Intensity;\r
 }\r
 \r
-vec4 getColor(in float result){\r
-\r
- if(m_UseOnlyAo){\r
-     return vec4(result,result,result, 1.0);\r
- }\r
- if(m_UseAo){\r
-      return texture2D(m_Texture,texCoord)* vec4(result,result,result, 1.0);\r
-  }else{\r
-      return texture2D(m_Texture,texCoord);\r
-  }\r
-\r
-}\r
-\r
 vec2 reflection(in vec2 v1,in vec2 v2){\r
     vec2 result= 2.0 * dot(v2, v1) * v2;\r
     result=v1-result;\r
@@ -74,7 +61,7 @@ void main(){
    vec3 position = getPosition(texCoord);\r
     //optimization, do not calculate AO if depth is 1\r
    if(depthv==1.0){\r
-        gl_FragColor=getColor(1.0);\r
+        gl_FragColor=vec4(1.0);\r
         return;\r
    }\r
    vec3 normal = getNormal(texCoord);\r
@@ -93,12 +80,9 @@ void main(){
       ao += doAmbientOcclusion(texCoord + coord2 * 0.50, position, normal);\r
       ao += doAmbientOcclusion(texCoord + coord1.xy * 0.75, position, normal);\r
       ao += doAmbientOcclusion(texCoord + coord2 * 1.00, position, normal);\r
-\r
    }\r
    ao /= float(iterations) * 4.0;\r
-   result = 1.0-ao;\r
-\r
-  //gl_FragColor=getColor(result);\r
+   result = 1.0 - ao;\r
 \r
-    gl_FragColor=vec4(result);\r
+   gl_FragColor=vec4(result);\r
 }
\ No newline at end of file