]> git.rm.cloudns.org Git - xonotic/darkplaces.git/commitdiff
faster shadowmap sampler filter
authoreihrul <eihrul@d7cf8633-e32d-0410-b094-e92efae38249>
Sat, 1 Dec 2012 13:08:38 +0000 (13:08 +0000)
committerRudolf Polzer <divverent@xonotic.org>
Thu, 13 Dec 2012 19:19:54 +0000 (20:19 +0100)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@11857 d7cf8633-e32d-0410-b094-e92efae38249
::stable-branch::merge=466b8256de3e6b31fd4a05bf47cc0e0986810a02

shader_glsl.h

index b47f7609a601810a371580bdceba1a314c8579d1..dcb9c7051af13b7db51916d5e917d8d7fc52fd88 100644 (file)
 "#     ifdef USESHADOWMAPPCF\n"
 "#       define texval(off) dp_shadow2D(Texture_ShadowMap2D, vec3(off, shadowmaptc.z))  \n"
 "      vec2 offset = fract(shadowmaptc.xy - 0.5);\n"
-"      vec4 size = vec4(offset + 1.0, 2.0 - offset), weight = (vec4(2.0 - 1.0 / size.xy, 1.0 / size.zw - 1.0) + (shadowmaptc.xy - offset).xyxy)*ShadowMap_TextureScale.xyxy;\n"
+"      vec4 size = vec4(offset + 1.0, 2.0 - offset), weight = (vec4(1.0, 1.0, -0.5, -0.5) + (shadowmaptc.xy - 0.5*offset).xyxy)*ShadowMap_TextureScale.xyxy;\n"
 "      f = (1.0/9.0)*dot(size.zxzx*size.wwyy, vec4(texval(weight.zw), texval(weight.xw), texval(weight.zy), texval(weight.xy)));\n"
 "//#       define texval(x, y) dp_shadow2D(Texture_ShadowMap2D, vec3(center + vec2(x, y)*ShadowMap_TextureScale, shadowmaptc.z))  \n"
 "//    vec2 center = shadowmaptc.xy*ShadowMap_TextureScale;\n"