【问题标题】:Non-power of two textures using Cubemaps in OpenGL在 OpenGL 中使用 Cubemaps 的两个纹理的非幂次
【发布时间】:2013-06-04 04:11:50
【问题描述】:

我正在尝试构建一些东西,但我认为它不可行。 是否可以在 OpenGL 中使用立方体贴图附加两个图像的非幂?我正在与:

for(int k = 0; k < 6; k++){
glTexImage2D(GL_TEXTURE_CUBE_MAP_POSITIVE_X + k, 0, GL_RGBA32F, 
m_iWidth, m_iHeight, 0, GL_RGBA, GL_FLOAT, NULL);
//other code
}

如果m_iWidthm_iHeight的值是NPOT,那么显然它不起作用。 有没有办法做到这一点?我的目标是根据大小动态制作环境贴图(取决于视口)。

绑定和参数是GL_TEXTURE_CUBE_MAP。其他细节:这不是 OpenGL ES 或希望兼容性 ;-)

【问题讨论】:

    标签: opengl textures viewport cubes


    【解决方案1】:

    立方体贴图的大小不必是二次方,但它们必须是正方形。所以它们的大小不能“取决于视口”。他们也没有理由这样做。

    如果您尝试制作环境贴图,则纹理的大小不应依赖于渲染图像的确切大小。您可能希望以更高分辨率放大纹理,但不希望环境贴图与目标图像大小相匹配。

    【讨论】:

    • 感谢您的回答。是我的错!我所有的测试都在m_iWidthm_iHeight的值上使用偶数乘以奇数。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多