小编Ell*_*ome的帖子

glGenTextures和glGenSamplers有什么区别?

我正在按照教程处理纹理加载,它有这个方法:

void CTexture::CreateEmptyTexture(int a_iWidth, int a_iHeight, GLenum format)
{
glGenTextures(1, &uiTexture);
glBindTexture(GL_TEXTURE_2D, uiTexture);
if(format == GL_RGBA || format == GL_BGRA)
    glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, a_iWidth, a_iHeight, 0, format, GL_UNSIGNED_BYTE, NULL);
// We must handle this because of internal format parameter
else if(format == GL_RGB || format == GL_BGR)
    glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, a_iWidth, a_iHeight, 0, format, GL_UNSIGNED_BYTE, NULL);
else
    glTexImage2D(GL_TEXTURE_2D, 0, format, a_iWidth, a_iHeight, 0, format, GL_UNSIGNED_BYTE, NULL);

glGenSamplers(1, &uiSampler);
}
Run Code Online (Sandbox Code Playgroud)

glGenSamplers是未定义的,我认为因为它需要GL v3.3或更高版本,我大学的实验室有GL v3.2所以我不能使用它.

我正在努力弄清楚glGenTextures和glGenSamplers之间的区别,它们是可以互换的吗?

c++ opengl textures

0
推荐指数
1
解决办法
1218
查看次数

标签 统计

c++ ×1

opengl ×1

textures ×1