Russian Qt Forum

Qt => 2D и 3D графика => Тема начата: Disa от Январь 26, 2012, 13:58



Название: Qt + OSG
Отправлено: Disa от Январь 26, 2012, 13:58
Добрый день) Уже пытаюсь пятый час прикрутить OSG к Qt. В сети нашел только какие-то обрывки bugreport'ов и каких-то ошибок.
 
По Osg'шному гайду установил OSG:
1) Cmak'ом обработал  CMakeList  
2) make - без ошибок
3) sudo make install - тоже все установилось.

После чего пытаюсь собрать проект (код взял из ../example/osgviewerQt)
В .pro прописал дополнительно:
Код
C++ (Qt)
INCLUDEPATH += /Users/.../OpenSceneGraph-3.0.1/include/
INCLUDEPATH += /Users/.../OpenSceneGraph-3.0.1/include/osg
INCLUDEPATH += /Users/.../OpenSceneGraph-3.0.1/include/osgQt/
 
LIBS +=-L/Users/.../OpenSceneGraph-3.0.1/lib/
 

При построении проекта вылезает:

Undefined symbols:
  "osgQt::QGraphicsViewAdapter::sendPointerEvent(int, int, int)", referenced from:
      osgQt::QWebViewImage::sendPointerEvent(int, int, int)in main.o
  "osg::Object::setThreadSafeRefUnref(bool)", referenced from:
      vtable for osgQt::QWebViewImagein main.o
      vtable for osgWidget::BrowserImagein main.o ...

и т.д.
Кто-нибудь если собирал Qt + Osg, подскажите пожалуйста.
(MacOs 10.6, Qt 4.7.4, Creator 2.3.1 (x64)).

PS: Как всегда дополнительный вопрос - много кто игрался с Qt3D и Qt Quick 3d соответсвенно? Вопрос - насколько пока  функционал меньше по сравнению с известными движками(Osg, Ogre, Deltha3D и пр)?


Название: Re: Qt + OSG
Отправлено: mutineer от Январь 26, 2012, 14:01
это винда? может тут LIBS +=-L/Users/.../OpenSceneGraph-3.0.1/lib/ имя либы добавить?


Название: Re: Qt + OSG
Отправлено: Disa от Январь 26, 2012, 14:43
MacOs 10.6(x64):

Код
C++ (Qt)
LIBS +=-L/Users/Disa/Documents/OpenSceneGraph-3.0.1/lib/ -losgWidget.3.0.1
LIBS +=-L/Users/Disa/Documents/OpenSceneGraph-3.0.1/lib/ -losgWidget
 

Вылезло 2а ворнинга:
../lib//libosgWidget.3.0.1.dylib, missing required architecture x86_64 in file и аналогичный второй, но это все же ворнинги.  Остальное отсталось так же.



Название: Re: Qt + OSG
Отправлено: Disa от Февраль 01, 2012, 16:19
Уффф))) За 3ое суток смог добиться стабильной работы связки Osg + Qt ( Qt Creator 2.4 (Qt 4.7.4) + Osg 3.0.1). Параллельно правда пробовал прикрутить eclipse и xcode с этой же связке, но что-то пока вываливается проект, но да это уже не так актуально.

Если кому-то интересно могу расписать небольшой мануал.


Название: Re: Qt + OSG
Отправлено: mcrads от Сентябрь 11, 2012, 17:14
Я буду очень признателен, если напишете мануал! Мне нужно это дело в экспресс-режиме сделать...


Название: Re: Qt + OSG
Отправлено: Disa от Сентябрь 17, 2012, 09:08
Сейчас уже всех тонкостей не вспомню :/

В общем собирал cmakе'ом OSG вместе с включением OpenThreads.
Помню что мне нужно было что-то поменять в поле архитектуры (для интела 64) и то, что собирал я в итоге именно  3.0.1, т.к. в 3.0.0 был какой-то большой баг.
Компилятор выбирал естесно gcc, ну дальше make-install...

Для компиляции под qt брал экзампл, тот что под рапускает в двух разных потоках qt и osg через OpenThreads (3d сцена была "внутри" виджета). И долго затем боролся с недостающими lib'ами, в итоге сделал monkeywork - все зависимые либы скорировал в папку в каталог проекта и подключил в папке проекта (я, видимо, в упор не верно прописывал где-то папку).