But one little-used combination that is supported, is a texture cube array. That's a single texture, which is an array of cubemaps, which optionally have mip levels as well.
In Direct3D 11, this involves creating a 2D texture using D3D11_TEXTURE2D_DESC struct, where arraySize is six times the number of cubemaps.
Then, when you create the shaderResourceView, you'll use a D3D11_SHADER_RESOURCE_VIEW_DESC with ViewDimension equal to D3D11_SRV_DIMENSION_TEXTURECUBEARRAY.
You'll fill in the TextureCubeArray member of that struct's union, e.g.
SRVDesc.ViewDimension =D3D11_SRV_DIMENSION_TEXTURECUBEARRAY; SRVDesc.TextureCubeArray.MipLevels =numMips; SRVDesc.TextureCubeArray.MostDetailedMip =0; SRVDesc.TextureCubeArray.First2DArrayFace =0; SRVDesc.TextureCubeArray.NumCubes =numLevels;