1

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

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

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

  • 大小为 64x64 的纹理二维数组,具有 n 个 mipmap 级别(n = 0 到 6)和 x 层(x = 0 到 11)

  • 大小为 32x32 的纹理二维数组,具有 n 个 mipmap 级别(n = 0 到 5)和 x 层(x = 0 到 11)
  • 等等..

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

4

1 回答 1

1

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

于 2014-03-31T21:20:07.577 回答