Ukio_G
@Ukio_G
Незамысловатый юноша.

Почему QOpenGLWidget крашится (segmentation fault) при вызве glDrawArrays(...)?

Доброго времени суток.
Появилась необходимость внедрить рабочее (!) OpenGL приложение в виджет Qt (QOpenGLWidget), однако возникла проблема - как только дело доходит до отрисовки (glDrawArrays), некода абсолютно рабочее приложение падает с ошибкой segmentation fault. Код приложения (привожу весь - на всякий случай).

P.S.: Если закомментировать glDrawArrays, или glEnableVertexAttribArray(0) (Буффер с вершинами), то приложение запускается, но, разумеется, ничего не отрисовывает.
Класс моделей:
Исходный код.
Заголовочные файлы

Загрузчик ресурсов:
Исходный код.
Заголовочные файлы

MainWindow (Qt):
Исходный код.
Заголовочные файлы

Файл виджета QOpenGL:
Исходный код.
Заголовочные файлы

Main.cpp:
Исходный код.

Тот самый фрагмент, где приложение падает:
Исходный код
  • Вопрос задан
  • 295 просмотров
Решения вопроса 1
Ukio_G
@Ukio_G Автор вопроса
Незамысловатый юноша.
Upd: Надо было добавить верисию и профиль openGL.
main.cpp:
QSurfaceFormat format;
    format.setDepthBufferSize(24);
    format.setStencilBufferSize(8);
    format.setVersion(3, 3);
    format.setProfile(QSurfaceFormat::CoreProfile);
    QSurfaceFormat::setDefaultFormat(format);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы