Sha256: f8f3238693f1cd87160d89362fc5813105fbad76632f67a629cb5d28673d3d6b

Contents?: true

Size: 1.16 KB

Versions: 12

Compression:

Stored size: 1.16 KB

Contents

void main(void) {
  if (PASS_TYPE == <%=Jax.Scene.AMBIENT_PASS%> || !SHADOWMAP_ENABLED) return;

  vShadowCoord = SHADOWMAP_MATRIX * mMatrix * VERTEX_POSITION;
  
//  if (LIGHT.type == <%=Jax.POINT_LIGHT%>) {
    /* Perform dual-paraboloid shadow map calculations - for point lights only */
    vec4 p = vShadowCoord;
    vec3 pos = p.xyz / p.w;
          
    float L = length(pos.xyz);
    vDP0.xyz = pos / L;
    vDP1.xyz = pos / L;
      
    vDP0.w = pos.z;    
    //vDPz = pos.z;
          
    vDP0.z = 1.0 + vDP0.z;
    vDP0.x /= vDP0.z;
    vDP0.y /= vDP0.z;
    vDP0.z = (L - DP_SHADOW_NEAR) / (DP_SHADOW_FAR - DP_SHADOW_NEAR);
          
    vDP0.x =  0.5 * vDP0.x + 0.5;
    vDP0.y =  0.5 * vDP0.y + 0.5;
          
    vDP1.z = 1.0 - vDP1.z;
    vDP1.x /= vDP1.z;
    vDP1.y /= vDP1.z;
    vDP1.z = (L - DP_SHADOW_NEAR) / (DP_SHADOW_FAR - DP_SHADOW_NEAR);
      
    vDP1.x =  0.5 * vDP1.x + 0.5;
    vDP1.y =  0.5 * vDP1.y + 0.5;
          
    float map_depth, depth;
    vec4 rgba_depth;
      
    if (vDP0.w > 0.0) {    
    //if (vDPz > 0.0) {
      vDP1.w = vDP0.z;
      //vDPDepth = vDP0.z;
    } else {
      vDP1.w = vDP1.z;
      //vDPDepth = vDP1.z;
    }
//  }
}

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
jax-1.0.1.rc1 builtin/shaders/shadow_map/vertex.ejs
jax-1.0.0 builtin/shaders/shadow_map/vertex.ejs
jax-0.0.0.10 builtin/shaders/shadow_map/vertex.ejs
jax-0.0.0.9 builtin/shaders/shadow_map/vertex.ejs
jax-0.0.0.8 builtin/shaders/shadow_map/vertex.ejs
jax-0.0.0.7 builtin/shaders/shadow_map/vertex.ejs
jax-0.0.0.6 builtin/shaders/shadow_map/vertex.ejs
jax-0.0.0.5 builtin/shaders/shadow_map/vertex.ejs
jax-0.0.0.4 builtin/shaders/shadow_map/vertex.ejs
jax-0.0.0.3 builtin/shaders/shadow_map/vertex.ejs
jax-0.0.0.2 builtin/shaders/shadow_map/vertex.ejs
jax-0.0.0.1 builtin/shaders/shadow_map/vertex.ejs