QOpenGL纹理层数
Posted
技术标签:
【中文标题】QOpenGL纹理层数【英文标题】:QOpenGLtexture number of layers 【发布时间】:2017-05-20 18:31:42 【问题描述】:我正在使用 Qt 上的 GL_TEXTURE_2D_ARRAY 和 QOpenGLTexture。我想知道这种纹理的层数是否有限制?我想要 81 x 81 层,但不知何故它现在只适用于 81 x 25 层。没有分段错误我只得到一个黑屏而不是纹理。
【问题讨论】:
【参考方案1】:是的,有一个限制。您可以通过调用来查询限制
GLint maxLayers;
glGetIntegerv(GL_MAX_ARRAY_TEXTURE_LAYERS, &maxLayers);
保证至少为 256。
如果您请求的图层过多(或由于任何其他原因不支持的纹理),则会生成相应的错误。您可以使用glGetError
查询错误。
【讨论】:
谢谢!就是这样!所以如果我使用 GL_TEXTURE_3D,图层的限制与深度的限制相同? @user3178756:没有。GL_TEXTURE_3D
支持的最大深度为 GL_MAX_3D_TEXTURE_SIZE
。以上是关于QOpenGL纹理层数的主要内容,如果未能解决你的问题,请参考以下文章