r_shadow_shadowmode = R_SHADOW_SHADOWMODE_SHADOWMAP2D;
break;
}
+ // Cg has very little choice in depth texture sampling
+ if (vid.cgcontext)
+ {
+ r_shadow_shadowmapsampler = false;
+ r_shadow_shadowmode = R_SHADOW_SHADOWMODE_SHADOWMAP2D;
+ }
}
break;
case RENDERPATH_GL13:
{
case R_SHADOW_SHADOWMODE_SHADOWMAP2D:
case R_SHADOW_SHADOWMODE_SHADOWMAPRECTANGLE:
- break;
+ if (r_shadows.integer >= 2)
+ break;
+ // fall through
case R_SHADOW_SHADOWMODE_STENCIL:
for (i = 0;i < r_refdef.scene.numentities;i++)
{
vec3_t relativeshadowmins, relativeshadowmaxs;
vec3_t tmp, shadowdir;
- if (!r_refdef.scene.numentities || !vid.stencil || r_shadow_shadowmode != R_SHADOW_SHADOWMODE_STENCIL)
+ if (!r_refdef.scene.numentities || !vid.stencil || (r_shadow_shadowmode != R_SHADOW_SHADOWMODE_STENCIL && r_shadows.integer != 1))
return;
CHECKGLERROR