gpt4 book ai didi

c++ - 带有立方体贴图数组的 glTextureStorage3D 上的 GL_INVALID_VALUE

转载 作者:行者123 更新时间:2023-11-30 01:08:28 39 4
gpt4 key购买 nike

在立方体贴图数组纹理上调用 glTextureStorage3D 时,我得到一个 GL_INVALID_VALUE。我的代码非常抽象,但是将纹理创建中的原始 gl 代码转储到 gl 错误归结为:

[SafeGL DUMP] glCreateTextures(glTargets[uint32_t(type)], 1, &id_) // glTargets[uint32_t(type)] = GL_TEXTURE_CUBE_MAP_ARRAY
[SafeGL DUMP] glTextureParameteri(id_, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR)
[SafeGL DUMP] glTextureParameteri(id_, GL_TEXTURE_MAG_FILTER, GL_LINEAR)
[SafeGL DUMP] glTextureStorage3D(id_, mipLevels, glFormats[uint32_t(format_)], width, height, depth) // mipLevels = 1, glFormats[uint32_t(format_)] = GL_RG16F, width = 1024, height = 1024, depth = 4
/!\ GL ERROR 501: GL_INVALID_VALUE -- Breaking to debugger.

GL 规范指定“如果宽度、高度或深度为负数,则会生成 INVALID_VALUE 错误。” 除了在我的情况下不是...

我唯一的猜测是,我要么遇到了特定于供应商的未记录错误(nvidia 375.70 驱动程序上的 GL 4.4 上下文),要么我做的事情完全错误,但我完全不知道是什么.

有什么想法吗?

编辑:刚刚将驱动程序更新到 378.66,但无济于事。

最佳答案

问题是 depth 不能被 6 整除。当您使用立方体贴图数组时,您不处理层,而是处理“layerfaces”。

另见 here .

关于c++ - 带有立方体贴图数组的 glTextureStorage3D 上的 GL_INVALID_VALUE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42596547/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com