Programowanie gier dla Androida

Programowanie gier dla Androida 11: Zdarzenia wejściowe InputAdapter

42 filmy

238 minuty

Aby pracować z wydarzeń wejściowych libgdx posiada klasę o nazwie InputProcessor. Klasa ta jest kontrolowana przez libgdx na wejściu i To działa jak ApplicationAdapter: jest to wydarzenie klasy. Piszemy kod i pozwalają wydarzenia libgdx rozmowę, gdy uzna to za aktualny. Nie sprawdzamy, czy dowolny klawisz jest wciśnięty, niech kto libgdx powiadomić nas, że został naciśnięty klawisz.

Odróżnia to system, który widzieliśmy w poprzednim wideo, odpytywania, że ​​jeśli nie są naciskając ten klucz nie jest, że kod jest wykonywany i gra działa szybciej. W przypadku InputProcessor co to takiego zdarzenia będzie uwolniona w oddzielnych wątków nie zakłócają Kod Główny. Pierwsza rzecz, którą trzeba zrobić, to stworzyć procesor wejściowy, a to jest coś, co powinno być w oddzielnej klasie,

Procesor np. Mój procesor wejściowy musi implementować InputProcessor. Jest to interfejs, więc zobowiązany do realizacji wszystkich swoich metod. Istnieje wiele metod, ujrzymy je stopniowo. Niektóre z nich są w dół, a inne są w górę. W dół, używane, gdy zaczynamy dotknij lub dotknij ekranu, i są stosowane, gdy nie uda nam się to zrobić. Na przykład, keyDown jest zdarzenie, które wyzwala kiedy zaczęliśmy naciśnięcie klawisza, na przykład, kiedy 'K'

i pozostawić 'K' w dół, ale nie zwolnić palec. Po zwolnieniu palca keyUp fotografowania. Więc możemy wykryć, kiedy zaczęliśmy się prasowaniem i prasowaniem. Może to służyć do gry, w której chcesz znak do przodu, naciskając przycisk kierunkowy w prawo, a gdy stop jest uwalniana do przodu. Tu trzeba by się poruszać, a tu mówimy to do końca. Podobnie jest z przyziemienia i Touchup możemy zrobić to samo, ale z palca.

Touchdown jest uruchamiany po naciśnięciu palcem, a gdy wstał Touchup. Mamy inne ciekawe metody jak mouseMoved, która mówi nam, kiedy jest poruszając myszą. Dzięki temu możemy comproabr jeśli mysz jest w ruchu. To nie działa w telefonach komórkowych, ponieważ nie wiem, gdzie palec jest bezpieczny który gramy. Mamy drugi jako touchDragged wykryć, kiedy jesteśmy przeciągając myszką lub palcem na ekranie, dzięki czemu możemy postępować zgodnie ze

Ruch lub uczynić gest, czy cokolwiek. Albo keyTyped który wykrywa, kiedy kliknął znak, takich jak A lub B. tak, że jeśli mamy do pisania listów możemy wykryć szybciej. Jak widać mają wiele parametrów, więc nie chcesz oberwać z niej, ponieważ istnieje wiele, ale zacznijmy dla tych, którzy mają do czynienia z dotyku, czyli co nas interesuje. Przede wszystkim będę to wyeliminować, a jak wiele będzie mnie interesować zmianę

InputProcessor przez InputAdapter. Czemu? Bo jak ApplicationAdapter, InputAdapter i dowolną kartą to nie jest implementuje interfejs nami, to znaczy, że pozostaje przetwarzającego, ale nie wdrożenie metod, które nie będą realizacji, co jest bardzo wygodne. Chcemy wykorzystać przyziemienia, a następnie je wykorzystujemy. Chcemy wykorzystać Touchup, użyj go. Nie będziemy wykorzystywać keyDown, zostawić go tam i nie używane.

Ważną cechą, że być może zastanawiasz się o metodach InputProcessor Dlatego wszystkim zwrócić wartość logiczną. To dlatego, że Boolean mówi, że jeśli zrobiliśmy coś w tej metodzie, tak, że jeśli mamy return false, co mówimy, jest to, że nie masz nic zrobić. I to jest w porządku, ponieważ libgdx jeżeli inny procesor ma do załatwienia, można określić, czy jeśli nie mamy nic zrobić, należy użyć własnego kodu do przetwarzania zdarzeń, albo go nie upuścić

lub zadzwoń do innego procesora ..., że będziemy zawsze sprawiają, że kod na dotyk, lub klawisza lub wszędzie tam, gdzie mają zamiar to zrobić, musimy powrócić prawdziwe dla libgdx wskazują, że mamy przetwarzane zdarzenie. Touchdown oraz Touchup. Mają cztery parametry tutaj. Zarówno samo dobrze. screenY screenX i powiedzieć, gdzie graliśmy. Wskaźnik palec wskazuje, jak graliśmy. Powiesz, z jakim palcem? Tak, ponieważ telefony są

multitouch dzień dzisiaj i można kliknąć z kilkoma palcami naraz, na przykład, aby gest powiększenia. Lub do jakiegokolwiek innego gestu, ale zazwyczaj przyjmują 4 lub 5 palców bez problemu. Kiedy nacisnąć ekran palcem, że palec będzie 0, a jeśli jednocześnie przytrzymując 0 prasowa z innego palca, czyli palec 1, i tak aż do osiągnięcia limitu, każdy z nich ma swój własny, ponieważ nie wszystkie dobre ekrany.

W przypadku stacjonarnego, jeśli mamy przycisk myszy prowadzi nas z powrotem to, co mamy kliknięciu przycisku myszy, a po lewej lub prawej stronie. Do badania tego mam zamiar zrobić, to powiedzieć 'grałeś na pozycji (screenX, screenY)' i 'nie użył palca (wskaźnika) i przycisk (przycisk)'. Jak próbowałem moją imprezę w taki sposób, wrócę prawda tak wiesz Zrobiłem rzeczy. Jedyne co pozostaje, to połączyć je z głównej gry.

Aby znaleźć nowe kursy, zapisz. Nie będzie spam, obiecał :)

o autorze

foto de jotajotavm
José Javier Villena

Biografia: Analityk-Programmer w różnych językach. Platformy Opiekun PREMIUM rozpoznawane na całym świecie jako CodigoFacilito. Artykuły Edytor Cristalab. Mój kanał YouTube jest sponsorowany przez wydawcę Anaya LaTostadora. Lubię szczegółowo wyjaśnić i podać kilka przykładów dla uniknięcia wątpliwości.