 	{
 		for(float j = -filterWidth; j < filterWidth; j += stepSize)
 		{
-			float shadowDistance = textureCube(u_ShadowMap, I + right * i + up * j).SWIZ1;
+			float shadowDistance = textureCube(u_ShadowMap, I.xyz + right * i + up * j).SWIZ1;
 
 			if(vertexDistance > shadowDistance)
 			{

	return penumbra;
}

#endif


/*
Some explanations by Marco Salvi about exponential shadow mapping:

		for(float j = -filterWidth; j < filterWidth; j += stepSize)
		{
			float shadowDistance = texture2DProj(u_ShadowMap0, vec3(shadowVert.xy + vec2(i, j), shadowVert.w)).SWIZ1;
			// float shadowDistance = texture2D(u_ShadowMap, shadowVert.xy / shadowVert.w + vec2(i, j)).x;

			// FIXME VSM_CLAMP

