Russian Qt Forum
Ноябрь 23, 2024, 08:00 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: первое приложение с openGL  (Прочитано 3359 раз)
samposebe
Гость
« : Сентябрь 26, 2018, 14:17 »

Только начал пробывать и Qt c OGL и сразу засада.
Планирую в приложении рисовать графики, но хочется прям не могу как, в OGL (просто был когда-то хороший опыт на VS).
Установил
Qt Creator 4.7.0
Based on Qt 5.11.1 (MSVC 2015, 32 bit)
Built on Jul 17 2018 04:27:33

Скачал простейший пример для разгона - https://www.bogotobogo.com/Qt/Qt5_OpenGL_QGLWidget.php
Ну пришлось подключить библиотеку LIBS += -lopengl32 и....
Выходит приложение, а вместо изображения - черный фон.
Погуглил вроде нашел ответ - https://stackoverflow.com/questions/34381314/qopenglwidget-show-black-screen
Но вот засада

c:\Qt\5.11.1\Src>configure configure -debug-and-release -opensource -opengl desktop -platform win32-msvc2015
+ cd qtbase
+ c:\Qt\5.11.1\Src\qtbase\configure.bat -top-level configure -debug-and-release -opensource -opengl desktop -platform win32-msvc2015

Notice: re-mapping requested qmake spec to unified 'win32-msvc'.

Bootstrapping qmake ...
"nmake" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.

и тут я застрял...  Помогите кто-нибудь пожалуйтса.
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #1 : Сентябрь 26, 2018, 14:22 »

Есть же куча готовых примеров с ОГЛ в Креаторе
Записан
samposebe
Гость
« Ответ #2 : Сентябрь 26, 2018, 18:09 »

Примеров действительно масса. Этот конкретный не работает. Судя по всему его делали под Qt4. Хочется понять как его запустить.
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #3 : Сентябрь 26, 2018, 21:08 »

Использовать QOpenGLWidget+QOpenGLFunctions, QGLWidget obsolete.
Ну и да, не нужно линковаться к либогл, Qt уже грузит сама ее динамически.
Записан
samposebe
Гость
« Ответ #4 : Сентябрь 26, 2018, 23:10 »

Попробовал этот урок- https://www.youtube.com/watch?v=6eu8oMULqaU
Все компилируется и запускается (действительно библиотеки не подключаю), но все равно черный экран.

#include <QMainWindow>
#include <QOpenGLWindow>
#include <QSurfaceFormat>
#include <QOpenGLFunctions>
#include <QtOpenGL>
#include <GL/GLU.h>

Но есть нюанс -
D3D11: ERROR: ID3D11Device::CheckFormatSupport: Format (null) is not available at the current FeatureLevel. [ MISCELLANEOUS ERROR #2097402: CHECKFORMATSUPPORT_FORMAT_NOT_SUPPORTED ]
Гугление ведет к ANGLE - доконца не понял что это за фигня, но ясно что какая-то приблуда для кросплатформенного программирования графики. Может я ее по незнанию установил вместе со средой, толи...
Отключать ее надо в конфигурации Qt : http://doc.qt.io/qt-5/configure-options.html#opengl-options-for-windows,

но снова засада

c:\Qt\5.11.1\Src>configure -opengl dynamic
+ cd qtbase
+ c:\Qt\5.11.1\Src\qtbase\configure.bat -top-level -opengl dynamic
Cannot detect host toolchain. Please use -platform. Aborting.

c:\Qt\5.11.1\Src>configure -opengl dynamic -plarform win32-g++
+ cd qtbase
+ c:\Qt\5.11.1\Src\qtbase\configure.bat -top-level -opengl dynamic -plarform win
32-g++
Cannot detect host toolchain. Please use -platform. Aborting.

c:\Qt\5.11.1\Src>configure -opengl dynamic -plarform win32-msvc
+ cd qtbase
+ c:\Qt\5.11.1\Src\qtbase\configure.bat -top-level -opengl dynamic -plarform win
32-msvc
Cannot detect host toolchain. Please use -platform. Aborting.

Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.146 секунд. Запросов: 23.