【问题标题】:OpenGL - reusing a texture idOpenGL - 重用纹理ID
【发布时间】:2020-11-01 16:51:58
【问题描述】:

我有一个场景需要更改纹理参数并加载新数据。我可以只生成一次纹理 id (glGenTextures),然后调用用户请求以下代码:

glBindTexture(GL_TEXTURE_2D, texId);
glTexImage2D(GL_TEXTURE_2D, 0, img.internalformat, img.width, img.height, 0, img.format, GL_UNSIGNED_BYTE, img.buf);

在调用后续 glTexImage2D 之前我应该​​删除并生成一个新的纹理 id 吗?

【问题讨论】:

  • 你为什么要这么做?
  • 我开发了一个使用 OpenGL 的 gui 应用程序。用户可以加载一些图像,所以我想知道每次删除和创建一个新的纹理 id 是否有意义。

标签: opengl


【解决方案1】:

是的!如果我正确理解您的问题,您可以致电glDeleteTextures,删除纹理并重新使用名称。这里有更多信息:

https://www.khronos.org/registry/OpenGL-Refpages/gl2.1/xhtml/glDeleteTextures.xml

【讨论】:

    猜你喜欢
    • 2021-11-04
    • 2014-03-26
    • 1970-01-01
    • 1970-01-01
    • 2023-03-30
    • 1970-01-01
    • 1970-01-01
    • 2011-05-19
    • 1970-01-01
    相关资源
    最近更新 更多