Ĺadny brzuch
Korzystając z funkcji glutMotionFunc() mogę zmieniać pozycje kamery poprzez poruszanie myszką, ale gdy kursor dochodzi do krawędzi ekranu, nie poruszy się dalej i nie można zmienić pozycji kamery. Jak rozwiązać ten problem? Czy wystarczy ukryć kursor myszki, czy może trzeba zmieniać jego pozycję przy pomocy jakiejś funkcji? Jak zrobić te dwie rzeczy?
Programuję w Linuxie. także zdarzenia WM_coś_tam odpadają.
roger
Jeżeli chodzi o Delphi no to mogę podać najwyżej wskazówkę bo sam piszę pod windowsa.
ShowCursor(fales); // w windowsie ukrywa kursor, ale linux też powinien wykorzystywać podobną funkcję poszukaj w handbook'u
Jeśli chodzi o ustawienie pozycji kursora no to leci tak:
deklarujesz zmienną typu TPoint
... var cp : TPoint ...
W pętli głównej programu robisz coś takiego(bo ten kod korzysta z windowsa, ale w pingwinie powinno to wyglądać podobnie).
GetCursorPos(cp); if cp.X = 0 then SetCursorPos(400, cp.Y); // Ustawia cursor na punkt 400, ale nie zmienia wysokości if cp.X = 800 then SetCursorPos(400, cp.Y);
Wiem, że to pewnie Ci zbyt wiele nie pomoże, ale linuź powinien chyba wykorzystywać podobne funkcje.
Na www.delphi.bajo.pl w dziale downloadkursy-ebooki masz ebook o OpenGL napisanego do C++ jeśli Cię interesuje to go sobie ściągnij(Ja się z niego uczę chociaż piszę w Delphi);
Pozdrawiam
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
Programuję w Linuxie. także zdarzenia WM_coś_tam odpadają.
roger
Jeżeli chodzi o Delphi no to mogę podać najwyżej wskazówkę bo sam piszę pod windowsa.
ShowCursor(fales); // w windowsie ukrywa kursor, ale linux też powinien wykorzystywać podobną funkcję poszukaj w handbook'u
Jeśli chodzi o ustawienie pozycji kursora no to leci tak:
deklarujesz zmienną typu TPoint
... var cp : TPoint ...
W pętli głównej programu robisz coś takiego(bo ten kod korzysta z windowsa, ale w pingwinie powinno to wyglądać podobnie).
GetCursorPos(cp); if cp.X = 0 then SetCursorPos(400, cp.Y); // Ustawia cursor na punkt 400, ale nie zmienia wysokości if cp.X = 800 then SetCursorPos(400, cp.Y);
Wiem, że to pewnie Ci zbyt wiele nie pomoże, ale linuź powinien chyba wykorzystywać podobne funkcje.
Na www.delphi.bajo.pl w dziale downloadkursy-ebooki masz ebook o OpenGL napisanego do C++ jeśli Cię interesuje to go sobie ściągnij(Ja się z niego uczę chociaż piszę w Delphi);
Pozdrawiam