Autor Wątek: Ogre3D - problemy przy kompilacji  (Przeczytany 4827 razy)

Offline An0nym8us

  • Użytkownik

# Lipiec 24, 2014, 01:54:02
Obiecałem że nie będę robił innych tematów, więc piszę tutaj :).

Problem trochę podchodzi pod temat, gdyż jest powiązany z TutorialFramework.



W końcu udało się wywalić błędy i zbuildować kod, jednak mam w nim jeden problem - ale najpierw parę pytań:

Po zbuildowaniu boosta nie mam bibliotek typu boost_system.dll tylko:
  • libboost_system-mgw48-1_55
  • libboost_system-mgw48-mt-1_55

Pomijając biblioteki pod Debug. Czy mógłby mi ktoś wyjaśnić czy takie biblioteki są dobre? Chodzi mi o to, czy zakończyłem (przynajmniej w kwestii dllek) pomyślnie proces buildowania ;-; (btw. jak rozumiem dopiska "mt" znaczy multi-threading?).

Wracając do mojego problemu. Projekt po kilku naprawionych błędach o braku resource_d.cfg (skopiowałem je z zbuildowanego Ogre Debug (folder bin)) dał się uruchomić, jednak widać na ekranie jedynie logo Ogre3D i "okienko" z danymi dot. FPS. Model się nie ładuje ;-; (a z tego co mi się wydaje to powinna się renderować głowa ogra). Wysyłam linka do logów:

http://pastebin.com/BtmzwmXm

Następnie: Rozmiar zbuildowanego programu wynosi 3,2MB podczas gdy rozmiar programu do wyświetlania przykładów (SampleBrowser) ma tylko 180kB - czy jest to wina tego że zbuildowałem wersję Debug?

Próbowałem zbuildować Release, jednak wywaliło mi te oto błędy:

c:\mingw\include\unistd.h|67|error: 'off_t' has not been declared|

c:\mingw\include\unistd.h||In function 'int ftruncate(int, int)':|
c:\mingw\include\unistd.h|67|error: declaration of C function 'int ftruncate(int, int)' conflicts with|
c:\mingw\include\unistd.h|65|error: previous declaration 'int ftruncate(int, _off_t)' here|



Tak samo jak wcześniej: proszę o pomoc ;-;. Za dużo błędów bibliotek na raz jak dla mnie, osoby która większość programów pisała w C# :/.






EDIT: Błąd z niewidzialnym modelem naprawiony - znaczy nie naprawiony, bo go nie było - createScene było puste.

Pomyliłem tutoriale. Korzystałem z tego:
http://www.ogre3d.org/tikiwiki/Ogre+Wiki+Tutorial+Framework

podczas gdy w pamięć zapadł mi screenshot z tego tutoriala:
http://www.ogre3d.org/tikiwiki/tiki-index.php?page=Basic+Tutorial+1&structure=Tutorials

i uznałem że model być powinien.



Niemniej jednak pozostają pozostałe (wiem, masło maślane) problemy/pytania :/. Zaskakuje mnie też co to za 218 trójkątów renderowanych przez moją aplikację - liczba taka wyświetla się w "okienku" z danymi dot. FPS, trójkątów itd (z modelem liczba ta wynosi 4553).
« Ostatnia zmiana: Lipiec 25, 2014, 20:56:53 wysłana przez An0nym8us »

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline An0nym8us

  • Użytkownik

# Lipiec 25, 2014, 16:55:48
Teraz kolejny problem, już natury wątku - wystąpił wcześniej, owy problem rzekomo z DirectX. Postanowiłem wszystko przeinstalować, błąd pojawił się znów, ale tym razem znalazłem właściwą treść błędu:

C:/Ogre/src/v1-9/RenderSystems/Direct3D11/include/OgreD3D11Device.h: In constructor 'Ogre::D3D11Device::ThreadInfo::ThreadInfo(Ogre::ID3D11DeviceContextN*)':
C:/Ogre/src/v1-9/RenderSystems/Direct3D11/include/OgreD3D11Device.h:55:96: error: 'CreateEventEx' was not declared in this scope
                 mEventHandle = CreateEventEx(0, TEXT("ThreadContextEvent"), 0, EVENT_ALL_ACCESS);

                                                                                                ^

Na oficjalnym forum Ogre'a niby znalazłem rozwiązanie (cytując TheSHEEEP):

Cytuj
Yes, D3D11 does not work with MinGW.

Niby mogę na to przystać i wyłączyć Direct3D 11 w CMake, ale mógłby mi ktoś wyjaśnić jakim cudem wcześniej po którejś próbie zbuildowania ogre-release ten błąd się nie pojawił i OgreSDK zostało pomyślnie zbuildowane?









W każdym bądź razie, wyłączyłem Direct3D 11, zbuildowało się ładnie, tylko że nie zbuildowała mi się OIS_d.dll dla OGRE SDK i Dependencies. Zwróciłem się z tym problemem na oficjalne forum OGRE, niestety z powodu linków do pastebin.com i tego że jestem tam nowym użytkownikiem moderator musi zaakceptować mój wątek, dlatego wklejam cały post z tamtego forum:
http://pastebin.com/XRsfbpd3
« Ostatnia zmiana: Lipiec 25, 2014, 19:53:50 wysłana przez An0nym8us »

Offline conx

  • Użytkownik

# Lipiec 31, 2014, 11:33:32
Zaczynasz w Ogre, tak? Nie ma wersji skompilowanej do pobrania?
Jeśli renderer d11 nie chce się skompilować / działać -  użyj inny D9 lub OpenGL.

Rozumiem, że kompilujesz Ogre3d 1.9 ? O ile wiem stabilna jest 1.8.1 - może nie kombinuj i użyj stabilnej.
Z twojego punktu widzenia co to za różnica czy renderujesz w d11 czy w d9? Przecież zaczynasz dopiero!!


Pobierz to i zacznij rzeźbić swój projekt: http://sourceforge.net/projects/ogre/files/ogre/1.8/1.8.1/ogre_src_v1-8-1.exe/download


Pozdro 600
« Ostatnia zmiana: Lipiec 31, 2014, 11:36:29 wysłana przez conx »