crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Qt 4.5.0, не запускается демка с OpenGL'ем
Litkevich Yuriy
  опции профиля:
сообщение 11.3.2009, 15:16
Сообщение #1


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


вообщем сегодня закончил пошаговую сборку Qt 4.5.0. (которая финишный релиз), под вин2к.
Пошаговая потому, что нужно было срочно минимум собрать. Последовательность и времянка (всего за три дня с большими перерывами), для справки:
bat'ник:
set QTDIR=H:\Qt\4.5.0_shared
set MINGWDIR=F:\MinGW\3.4.5

set QMAKESPEC=win32-g++

set QTBIN=%QTDIR%\bin
set MINGWBIN=%MINGWDIR%\bin
::===================================
set ADDONPATH=F:\svn\bin;F:\cygwin\bin;F:\GnuWin32\bin\
::===================================
set PATH=%QTBIN%;%MINGWBIN%;%ADDONPATH%;%SystemRoot%\System32

CMD.EXE

Отчет:
    Сборка 4.5.0 динамическая:
configure -shared -debug-and-release -plugin-sql-odbc -plugin-sql-sqlite -qt-zlib -qt-zlib -qt-libpng -qt-libmng -qt-libtiff -qt-libjpeg -no-webkit -no-qt3support
(заняло
qmake = 00:11
make-файлы = 00:07
всего = 00:18)
make sub-src
(заняло = 01:13)
make sub-tools
(заняло = 00:47)
cd demos
make
(заняло = 00:08)
cd examples
make
(заняло = 01:19)

сегодня, после сборки демок и примеров, запустил qtdemo и увидил в нем симпотичную демку demos\boxes клик её, а она мне:
Прикрепленное изображение

и что-то я непойму, где мне расширением разжится.
подумал, что не всё собралось, выполнил make в корне %QTDIR%, потратилось 7мин на сборку qdoc3 и все.
Кто-нибудь может меня просветить, что еще нужно сделать, чтобы эта демка заработала?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Litkevich Yuriy
  опции профиля:
сообщение 11.3.2009, 18:00
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Сделал тест версий OpenGL.
В pro-файл добавил QT += opengl
код теста
#include <QApplication>
#include <QDebug>
#include <QtOpenGL>


int main(int argc, char *argv[])
{
  QApplication app(argc, argv);
  QGLFormat::OpenGLVersionFlags    ver;
  
    if(QGLFormat::hasOpenGL())
    {
        qDebug() << "has OpenGL";
        ver = QGLFormat::openGLVersionFlags();

        if (ver = QGLFormat::OpenGL_Version_3_0)
            qDebug() << "Version" << "OpenGL_Version_3_0" << "presents";

        if (ver = QGLFormat::OpenGL_ES_Version_2_0)
            qDebug() << "Version" << "OpenGL_ES_Version_2_0" << "presents";

        if (ver = QGLFormat::OpenGL_ES_CommonLite_Version_1_1)
            qDebug() << "Version" << "OpenGL_ES_CommonLite_Version_1_1" << "presents";

        if (ver = QGLFormat::OpenGL_ES_Common_Version_1_1)
            qDebug() << "Version" << "OpenGL_ES_Common_Version_1_1" << "presents";

        if (ver = QGLFormat::OpenGL_ES_CommonLite_Version_1_0)
            qDebug() << "Version" << "OpenGL_ES_CommonLite_Version_1_0" << "presents";

        if (ver = QGLFormat::OpenGL_ES_Common_Version_1_0)
            qDebug() << "Version" << "OpenGL_ES_Common_Version_1_0" << "presents";

        if (ver = QGLFormat::OpenGL_Version_2_1)
            qDebug() << "Version" << "OpenGL_Version_2_1" << "presents";

        if (ver = QGLFormat::OpenGL_Version_2_0)
            qDebug() << "Version" << "OpenGL_Version_2_0" << "presents";

        if (ver = QGLFormat::OpenGL_Version_1_5)
            qDebug() << "Version" << "OpenGL_Version_1_5" << "presents";

        if (ver = QGLFormat::OpenGL_Version_1_4)
            qDebug() << "Version" << "OpenGL_Version_1_4" << "presents";

        if (ver = QGLFormat::OpenGL_Version_1_3)
            qDebug() << "Version" << "OpenGL_Version_1_3" << "presents";

        if (ver = QGLFormat::OpenGL_Version_1_2)
            qDebug() << "Version" << "OpenGL_Version_1_2" << "presents";

        if (ver = QGLFormat::OpenGL_Version_1_1)
            qDebug() << "Version" << "OpenGL_Version_1_1" << "presents";

        if (ver = QGLFormat::OpenGL_Version_None)
            qDebug() << "Version" << "OpenGL_Version_None" << "presents";

    }
    
    qDebug() << "==================================================";
    
    qDebug() << "Renderer   : " << glGetString(GL_RENDERER) << endl;
    qDebug() << "Version     : " << glGetString(GL_VERSION) << endl;
    qDebug() << "Vendor      : " << glGetString(GL_VENDOR) << endl;
    qDebug() << "Extensions : " << glGetString(GL_EXTENSIONS) << endl;
    return 0;
}

Вывод в консоль, странный (после линии)
has OpenGL
Version OpenGL_Version_3_0 presents
Version OpenGL_ES_Version_2_0 presents
Version OpenGL_ES_CommonLite_Version_1_1 presents
Version OpenGL_ES_Common_Version_1_1 presents
Version OpenGL_ES_CommonLite_Version_1_0 presents
Version OpenGL_ES_Common_Version_1_0 presents
Version OpenGL_Version_2_1 presents
Version OpenGL_Version_2_0 presents
Version OpenGL_Version_1_5 presents
Version OpenGL_Version_1_4 presents
Version OpenGL_Version_1_3 presents
Version OpenGL_Version_1_2 presents
Version OpenGL_Version_1_1 presents
==================================================
Renderer   :  0x0

Version     :  0x0

Vendor      :  0x0

Extensions :  0x0
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
BRE
  опции профиля:
сообщение 11.3.2009, 18:29
Сообщение #3


Профессионал
*****

Группа: Участник
Сообщений: 1112
Регистрация: 6.3.2009
Из: Ростов-на-Дону
Пользователь №: 591

Спасибо сказали: 264 раз(а)




Репутация:   44  


Цитата(Litkevich Yuriy @ 11.3.2009, 18:00) *
Сделал тест версий OpenGL.

...

Вывод в консоль, странный (после линии)

Это сработает после инициализации OpenGL.
void GLWidget::initializeGL()
{
    qglClearColor(trolltechPurple.dark());
    object = makeObject();
    glShadeModel(GL_FLAT);
    glEnable(GL_DEPTH_TEST);
    glEnable(GL_CULL_FACE);

    qDebug() << "Renderer   : " << (const char*)glGetString(GL_RENDERER) << endl;
    qDebug() << "Version     : " << (const char*)glGetString(GL_VERSION) << endl;
    qDebug() << "Vendor      : " << (const char *)glGetString(GL_VENDOR) << endl;
    qDebug() << "Extensions : " << (const char *)glGetString(GL_EXTENSIONS) << endl;
}

Это кусок из примера hellogl.

Функция определена так:
const GLubyte* glGetString( GLenum name )
поэтому нужно приведение типа к (const char*).
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме
- Litkevich Yuriy   Qt 4.5.0, не запускается демка с OpenGL'ем   11.3.2009, 15:16
- - SABROG   Смотрю webkit так и не поборол. У меня таже петру...   11.3.2009, 15:22
- - Litkevich Yuriy   Цитата(SABROG @ 11.3.2009, 18:22) envir.s...   11.3.2009, 15:31
|- - BRE   Цитата(Litkevich Yuriy @ 11.3.2009, 15:31...   11.3.2009, 15:39
- - SABROG   Цитата(Litkevich Yuriy @ 11.3.2009, 15:31...   11.3.2009, 15:41
- - Litkevich Yuriy   Цитата(BRE @ 11.3.2009, 18:39) Демки нужн...   11.3.2009, 15:45
|- - SABROG   Цитата(Litkevich Yuriy @ 11.3.2009, 15:45...   11.3.2009, 15:52
|- - BRE   Цитата(Litkevich Yuriy @ 11.3.2009, 15:45...   11.3.2009, 16:20
- - Litkevich Yuriy   Цитата(SABROG @ 11.3.2009, 18:52) Для мен...   11.3.2009, 16:07
- - trdm   я и собрать 4,5 под мингвой не смог.... в смысле ...   11.3.2009, 16:48
- - Kagami   Собирал Qt 4.5 полностью под Debian Lenny путем сб...   11.3.2009, 17:08
- - SABROG   Это нормально Человек писал, что собирал в -fast...   11.3.2009, 17:10
- - Litkevich Yuriy   Сделал тест версий OpenGL. В pro-файл добавил QT +...   11.3.2009, 18:00
|- - BRE   Цитата(Litkevich Yuriy @ 11.3.2009, 18:00...   11.3.2009, 18:29
- - kwisp   Цитата(Litkevich Yuriy @ 11.3.2009, 18:00...   11.3.2009, 18:14
- - Kagami   Может надо было так? if (ver & QGLFormat...   11.3.2009, 18:27
- - Litkevich Yuriy   Цитата(kwisp @ 11.3.2009, 21:14) что за с...   11.3.2009, 18:39
- - kwisp   Litkevich Yuriy, Цитата(Litkevich Yuriy @ 11....   11.3.2009, 18:49
- - void*   Цитата(SABROG @ 11.3.2009, 16:10) Человек...   11.3.2009, 18:51
|- - SABROG   Цитата(void* @ 11.3.2009, 18:51) Цитата(S...   11.3.2009, 18:55
- - Litkevich Yuriy   Цитата(BRE @ 11.3.2009, 21:29) Это сработ...   11.3.2009, 19:00
- - void*   Цитата(SABROG @ 11.3.2009, 17:55) Хм. Wi...   11.3.2009, 19:04
- - Litkevich Yuriy   Цитата(kwisp @ 11.3.2009, 21:49) люди юза...   11.3.2009, 19:11
|- - Kagami   Цитата(Litkevich Yuriy @ 11.3.2009, 19:11...   11.3.2009, 19:13
- - trdm   а йя забил на 4.5 мну не критично...   11.3.2009, 19:26
- - Litkevich Yuriy   Цитата(Kagami @ 11.3.2009, 22:13) А разве...   11.3.2009, 19:58
|- - trdm   Цитата(Litkevich Yuriy @ 11.3.2009, 19:58...   11.3.2009, 22:45
|- - Kagami   Цитата(trdm @ 11.3.2009, 22:45) Далает, е...   11.3.2009, 22:57
- - voipp   а в win7 почему то вылезает пустое окошко вывода и...   1.2.2010, 18:14
- - Kagami   Win7 поддерживается начиная с версии 4.6.0   1.2.2010, 18:19


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


5 чел. читают эту тему (гостей: 5, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 28.12.2024, 16:49