小编xtr*_*ium的帖子

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

在立方体贴图阵列纹理上调用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.
Run Code Online (Sandbox Code Playgroud)

GL规范指定"如果宽度,高度或深度为负,则生成INVALID_VALUE错误".除了我的情况,它不是......

我唯一的猜测是,我要么遇到一个特定供应商的无证错误(在nvidia 375.70驱动程序上的GL 4.4上下文),或者我做了一些完全错误的事情但是我完全失去了什么.

任何的想法 ?

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

c++ opengl 3d

1
推荐指数
1
解决办法
165
查看次数

标签 统计

3d ×1

c++ ×1

opengl ×1