ShadowkhaN Temat założony przez niniejszego użytkownika |
Połączenie SFML z Qt » 2013-10-14 15:32:25 Witam, mam pytanie, ja połączyć SFML z Qt w taki sposób, że za pomocą okna utworzonego w Qt ingerować w okno utworzone za pomocą SFML. Czyli mam np utworzone okno za pomocą SFML i wyświetlany jest obrazek, a za pomocą okna utworzonego poprzez Qt klikając przycisk zmieniam położenie obrazka. Chodzi o mniej więcej coś takiego http://www.youtube.com/watch?v=1mYUxovVW-o
|
|
Mrovqa |
» 2013-10-14 16:06:01 Radzę najpierw zapoznać się z jakimiś tutorialami Qt i SFML-a, by znać ich podstawy i wiedzieć jak działają, a nie najpierw o to pytać. Jeżeli masz tę wiedzę, to co w tym trudnego? Odbierasz event kliknięcia przycisku, który może (w najprostszym, aczkolwiek nie najlepszym przypadku) ustawić zmienną globalną lub jakąkolwiek inną, dzięki której będziesz mógł w innym wątku odpowiedzialnym za logikę gry odebrać tę informację i uwzględnić w symulacji. |
|
ShadowkhaN Temat założony przez niniejszego użytkownika |
» 2013-10-14 16:32:13 Zrobiłem wstępne. Tworzą mi się te dwa okna. Funkcja odpowiedzialna za tworzenie okna sfml i wyswietlanie obrazka jest mniej wiecej tak zbudowana, że uruchomiona jest pętla w której cały czas rysuje elementy. Z petli tej nie moge wyjsc bo wszystko zniknie i dlatego button z okna Qt nie reaguje na wciśnięcie... |
|
Mrovqa |
» 2013-10-14 16:52:04 Odbierasz event kliknięcia przycisku, który może (w najprostszym, aczkolwiek nie najlepszym przypadku) ustawić zmienną globalną lub jakąkolwiek inną, dzięki której będziesz mógł w innym wątku odpowiedzialnym za logikę gry odebrać tę informację i uwzględnić w symulacji. |
Pętle okna SFML-a oraz Qt muszą wykonywać się równocześnie. Jak inaczej sobie wyobrażasz równoczesne działanie obydwu okien? Radzę poczytać o wątkach. Najlepiej wykorzystaj std::thread. |
|
ShadowkhaN Temat założony przez niniejszego użytkownika |
» 2013-10-14 16:56:42 No właśnie chodzi mi o to żeby działały jednocześnie. Przykładem jest, że jak tworze dwa okna za pomocą Qt to działa tak jak powinno, czyli w każdej chwili mogę korzystać zarówno z pierwszego okna jak i drugiego. Dzięki poczytam o tym. |
|
Mrovqa |
» 2013-10-14 17:03:33 Przykładem jest, że jak tworze dwa okna za pomocą Qt to działa tak jak powinno, czyli w każdej chwili mogę korzystać zarówno z pierwszego okna jak i drugiego. |
Ponieważ Qt ma swoją wewnętrzną pętlę, w której zarządza swoimi wszystkimi oknami. |
|
MrPoxipol |
» 2013-10-14 17:17:53 Dla przykładu w GTK, musisz rysowanie podpiąć pod zdarzenie 'expose' (czy jakoś tak), a okno utworzyć z HWND drawing area'y. Swoją drogą: http://sfml-dev.org/tutorials/1.6/graphics-qt.php (dla 2.1 pewnie jest podobnie) ? Czyli rozumiem, że nawet nie próbowałeś/aś poszukać. |
|
ShadowkhaN Temat założony przez niniejszego użytkownika |
» 2013-10-14 17:21:05 Jeżeli chodzi o to http://sfml-dev.org/tutorials/1.6/graphics-qt.php (znalazlem to juz dawno) to po prostu rysuje okno sfml w oknie qt, tzn sfml zawiera sie w Qt, a mi nie o to chodzi tylko o dwa rozne okna... Myślę, że Mrovqa dał odpowiedź, więc MrPoxipol dzięki, ale nie to chciałem :P |
|
« 1 » 2 |