我们可以创建纹理视图,其中1个暗淡(宽度/高度/深度)小于基础纹理但是相同数量的mipmap级别和图层?

时间:2014-03-30 16:40:13

标签: opengl textures glsl opengl-4

我知道我们可以使用某些纹理贴图级别和/或纹理图层作为视图。

例如,如果我们有一个大小为64x64且具有12层和7个mipmpap级别的纹理2d数组,我可以创建以下视图:

  • 纹理2d,大小为64x64,具有n个mipmap级别(n = 0到6)。
  • 纹理2d,大小为16x16,具有n个mipmap级别(n = 0到4)。
  • 依旧......

  • 纹理2d数组大小为64x64,n个mipmap级别(n = 0到6)和x层(x = 0到11)

  • 纹理2d数组,大小为32x32,n个mipmap级别(n = 0到5)和x层(x = 0到11)
  • 依旧......

但glTextureView命令不会询问必须创建的视图的各个维度。从我们选择的mipmap级别可以理解吗?考虑到上面的例子,我们不能创建一个纹理2D视图,其大小为64x32和7个mipmap级别,12层? 即它将使用所有mipmap级别和图层的原始纹理的正好半个子图像。?

1 个答案:

答案 0 :(得分:1)

不,GL_ARB_texture_view不提供您正在寻找的功能(也没有GL的其他功能)。你需要这个什么?如果您只想使用纹理的子图像,则可以使用纹理坐标。