ImageIndex ImageIndex::MakeGeneric(GLenum target, GLint mipIndex) { GLint layerIndex = IsCubeMapTextureTarget(target) ? static_cast<GLint>(CubeMapTextureTargetToLayerIndex(target)) : ENTIRE_LEVEL; return ImageIndex(target, mipIndex, layerIndex); }
GLenum FramebufferAttachment::cubeMapFace() const { ASSERT(mType == GL_TEXTURE); const auto &index = mTarget.textureIndex(); return IsCubeMapTextureTarget(index.type) ? index.type : GL_NONE; }
size_t CubeMapTextureTargetToLayerIndex(GLenum target) { ASSERT(IsCubeMapTextureTarget(target)); return target - static_cast<size_t>(FirstCubeMapTextureTarget); }