Tworzenie (lub emulowanie) „D-Pad” na ekranie dotykowym; wirtualny d-pad


12

Przy mnożeniu urządzeń dotykowych, z których wielu nie ma prawdziwego D-Pada, zastanawiam się, czy ktoś ma jakieś zasoby, jak emulować D-Pad na ekranie dotykowym? Szczególnie interesują mnie przykłady kodu XNA i / lub Androida.

Odpowiedzi:



16

Czy mogę zniechęcić cię do próby emulacji pada kierunkowego na urządzeniu z ekranem dotykowym?

Problemy z emulowaniem pada kierunkowego na ekranie dotykowym to:

  • D-pad zajmuje miejsce na ekranie, które możesz wykorzystać w grze;
  • w przeciwieństwie do prawdziwego pada kierunkowego, emulowany pada kierunkowa prawie nie daje informacji zwrotnej: jako gracz nie możesz powiedzieć, w którym kierunku naciskasz, ani na podstawie dotyku, ani wzroku (ponieważ palec zakrywa D- pad na ekranie). Więc palec zbyt łatwo zsuwa się z pada kierunkowego lub na niewłaściwą jego część, co prowadzi do pomieszania i frustracji.

Urządzenie z ekranem dotykowym to znacznie więcej niż urządzenie „pozbawione prawdziwego D-pada”. Urządzenie z ekranem dotykowym pozwala graczowi na dotykanie dowolnego miejsca na ekranie i interakcję z dowolnym widocznym elementem gry . Daje to szeroki zakres możliwości projektowania gier, a projekty te są prawdopodobnie znacznie przyjemniejsze w użyciu niż emulowany D-pad.


1
Wdrożenie Pathing dla takiego małego ekranu jest banalne. Powiększ i przewiń mapę gry, a następnie dotknij i ścieżka!
— Stephen Furlani,

9

Wiem, że nie jest to najbardziej użyteczna odpowiedź, ale jeśli nie przenosisz projektu z innej platformy, sugeruję ponowne przemyślenie wirtualnego D-Pad. Większość implementacji wirtualnych padów kierunkowych była co najwyżej kiepska, brak dotykowych informacji zwrotnych czyni z nich zły wybór dla platformy.

O wiele lepiej jest budować interfejs do gry, który podkreśla mocne strony platform zamiast budować słabość platform.


Najwyraźniej Gareth odpowiedział tak samo jak ja. Nic tu do oglądania, ruszać się.
— wkerslake

Cieszę się, że nie jestem w tym sam!
— Gareth Rees,

3

Jak powiedzieli inni, najlepiej jest wymyślić projekt, który pasuje do środowiska, nie zmuszając środowiska do dopasowania do twojego projektu, ale jeśli trzymasz się D-Pad, oto jak możesz to zrobić:

Jeśli myślisz o „punkcie dotykowym” jak o kursorze myszy, zasadniczo tworzysz „punkt aktywny”, który reaguje na ruch kursora.

Najlepszym / najprostszym sposobem na zrobienie tego jest zrobienie półprzezroczystego (pamiętaj, że zasłaniasz ekran gry) pola lub okręgu w jednym z dolnych rogów, gdzie gracz najprawdopodobniej ma już palec. Następnie po prostu śledzisz pozycję palca gracza względem środka gorącego punktu, i to jest twoja wartość delta wejściowej.


W ten sposób większość gier rozwiązuje problem kontrolera d-pad. To jest do bani dla precyzyjnego platformowania.
— Nailer,

2

Widzę, że większość ludzi uważa, że ​​D-Pad jest złym pomysłem i mają rację - przez większość czasu. Dungeon Hunter od Gameloft na Androida to świetny przykład świetnego D-Pad na ekrany dotykowe. Jest responsywny, ma kierunek 360 stopni i nie jest „głupi”. Chodzi mi o to, że nie jest to „głupie”, że kiedy naciskasz D-Pad i wysuwasz palec z obszaru D-Pad, nie przeszkadza to, co dzieje się na ekranie - po prostu się rozszerza. Więc jeśli przypadkowo wymkniesz się z obszaru D-Pad, nie stracisz ruchu.

Uważam, że ważna jest orientacja 360 stopni i szybkość reakcji poza boiskiem, a jeśli to zrobisz, będziesz mieć szansę na prawidłowe wykonanie pada kierunkowego.


1

Jeśli chcesz wdrożyć D-Pad, najprostszym sposobem, jaki przychodzi mi do głowy, jest utworzenie czterech prostokątów (po jednym dla każdego kierunku D-Pad), a następnie sprawdzenie, czy miejsce dotyku znajduje się w granicach któregokolwiek z prostokątów .

Jak powiedzieli inni; zastanów się dwa razy, zanim zastosujesz D-Pad na ekranie dotykowym. Z drugiej strony widziałem ludzi grających w te emulatory GBA przez cały dzień na swoich iPhone'ach.

Od Ciebie zależy ... czy możesz nam powiedzieć, co planujesz zrobić, jeśli chodzi o symulowany D-Pad?

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.