Cube-maps with GL_DEPTH_COMPONENT

Many papers have referenced the concept of using cube-maps with depth-textures for onmidirectional light sources.

Why can’t OpenGL support copy depth-map to texture with depth-component and cube-map?

It’s ARB_shadow that causes the problem.

The “shadow lookup” takes the R coordinate as the value for comparison, rather than as one of the texture coordinates. This makes it impossible to use a shadow lookup for such textures.

And, since depth texture can only be bound and used with shadow lookups, it makes the use of depth cubemaps impossible (except to replace/offset the fragment’s depth by the depth texture’s depth). The obvious way to work around this is to do it yourself. Rather than reading the depth buffer, make a 32-bit float luminance cubemap and write the depth into that (depth as computed in the fragment program). Then read the color and do the comparison yourself.

Really, I’d like to see depth textures expanded a bit more, so that reading from them didn’t automatically mean a shadow lookup (according to glslang, anyway). I’d like to be able to get the depth value directly and do some operations on it.