望君持之以恒
2020-05-10 17:34
采纳率: 100%
浏览 163

OpenGL 模型加载 QT4 MSVC2017 Assimp 程序 有偿求帮助

问题
QT4.11
用的MSVC2017编译器
调用的Assimp, glm, stb_image库,

程序出问题的地方调用的QT核心库:

<QOpenGLFunctions_3_3_Core>

现在想实现多模型的载入. 但是我发现如果我在继承了QOpenGLWidget的GLManager类中

class GLManager : public QOpenGLWidget{
            Model *model;
            QOpenGLFunctions_3_3_Core* core;
}

调用函数:

void GLManager::initializeGL(){
        core = QOpenGLContext::currentContext()->versionFunctions<QOpenGLFunctions_3_3_Core>(); 
        model = new Model(core, "D:/cube.obj");
}
void GLManager::paintGL(){
        ourModel->Draw(ResourceManager::getShader("model"));
}

是可以使用的,
但是当我把这句话new Model(core, "D:/cube.obj");不放在GLManager::initializeGL()中时, 就不能正确的画出.

代码有点长, 就不贴具体实现了, 主要就是参考的learnopengl的代码
网址:https://learnopengl-cn.github.io/03%20Model%20Loading/03%20Model/

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

2条回答 默认 最新

相关推荐 更多相似问题