无法创建QOpenGLTexture

时间:2017-07-14 07:43:38

标签: c++ qt opengl opengl-es qt5

我的纹理有问题。我想从uchar*导入纹理但是如果我使用这种方法,我在屏幕上看不到任何内容。如果我从QImage导入纹理就可以了。我的程序出了什么问题?

此代码工作。

QImage image = LoadTextureFromFile(MP, c->file);
mp->m_textures.m_textures.last()->setData(image);
mp->m_textures.m_textures.last()->setMinMagFilters(QOpenGLTexture::Linear, QOpenGLTexture::Linear);

此代码不起作用..

QImage image = LoadTextureFromFile(MP, c->file);
mp->m_textures.m_textures.last()->setSize(c->width, c->height);
mp->m_textures.m_textures.last()->setFormat(QOpenGLTexture::RGBA8_UNorm);
mp->m_textures.m_textures.last()->allocateStorage(QOpenGLTexture::RGBA, QOpenGLTexture::UInt8);
mp->m_textures.m_textures.last()->setData(QOpenGLTexture::RGBA, QOpenGLTexture::UInt8, image.bits());
mp->m_textures.m_textures.last()->generateMipMaps();
mp->m_textures.m_textures.last()->setMinMagFilters(QOpenGLTexture::Linear, QOpenGLTexture::Linear);

有人可以帮我解决这个问题吗?

0 个答案:

没有答案