Czy powinienem rozwijać się z myślą o myszy, jeśli planuję celować bardziej niż na PC?

15

Dość proste pytanie, ale nie jestem pewien odpowiedzi.

Czy powinienem opracować formanty użytkownika, które używają myszy, lub całkowicie je zignorować i używać tylko kontrolek przycisków.

Przykładem może być:

Kliknięcie elementu, aby go podnieść, lub zbliżenie się do niego i naciśnięcie przycisku, aby go podnieść.

Jakie są twoje opinie na ten temat, zwłaszcza jeśli chcesz kierować reklamy na więcej platform niż na PC?

muszla
źródło
4
„Kliknięcie elementu, aby go podnieść, a następnie zbliżenie się do elementu i naciśnięcie przycisku, aby go podnieść”. Ostrzeżenie o tym. Chociaż byłoby to możliwe do zaimplementowania, twórcy Diablo III tego nie zrobili, ponieważ pomogli użytkownikowi zorientować się, jakie łupy zdobywają, musiało to coś znaczyć dla użytkownika. To jest coś do rozważenia.
Vaillancourt
3
Nie zmuszaj wejścia myszy do wprowadzania dyskretnego. Podsumowując, typowy roguelike powinien być w pełni grywalny bez myszy. Używaj myszki tylko tam, gdzie potrzebne jest precyzyjne wprowadzanie danych (np .: kliknij określony zakres pikseli na ekranie, celuj w obiekt, ...). Nawigacja po menu i wybór opcji dialogowych powinny być dostępne z klawiszami skrótu i ​​nawigacją ze strzałkami /
kartami

Odpowiedzi:

37

Tak, jeśli chcesz, aby Twoja gra działała na PC, od samego początku powinieneś pomyśleć o tym, jak najlepiej wykorzystać mysz. To samo dotyczy funkcji wprowadzania danych na wszystkich innych platformach, na które rozważasz kierowanie.

Jedną z głównych różnic między dobrym portem a złym portem na inną platformę jest ilość wysiłku włożonego w dostosowanie różnych stylów wprowadzania:

  • Gracze konsoli używają kontrolerów. To, jak potrafią precyzyjnie wskazywać na te niezdarne pałeczki, zawsze będzie dla mnie tajemnicą jako gracza na PC. Ale wszystkie różne analogowe osie wejściowe dostępne na standardowym padzie oferują kilka interesujących możliwości. Wprowadzanie tekstu jest irytujące, ale istnieje kilka naprawdę interesujących rozwiązań interfejsu użytkownika, które wymyślili ludzie.
  • Użytkownicy komputerów PC czasami mają gamepady, ale wielu z nich nie ma lub woli używać myszy. Naprawdę ich nie lubią, gdy muszą poruszać się po menu za pomocą klawiszy, gdy mysz będzie dostępna. Oczekują także, że za pomocą skrótów klawiaturowych będą dostępne wspólne działania.
  • Użytkownicy mobilni mają ekrany dotykowe. Są one znacznie mniej precyzyjne niż wprowadzanie za pomocą myszy, ale oferują dodatkowe metody wprowadzania, takie jak czułość nacisku, przeciąganie i gesty wielodotykowe. „Wirtualne gamepady”, tj. Umieszczenie przycisków gamepada w rogu i oczekiwanie od nich naciśnięcia przez graczy, jest bardzo leniwym obejściem, które cierpi na brak sprzężenia zwrotnego i zmniejszoną przestrzeń na ekranie.

Więc jeśli chcesz zrobić dobry port na inną platformę, musisz ponownie rozważyć swoje metody wprowadzania. To często oznacza, że ​​musisz przeprojektować interfejs użytkownika od zera. Możesz zmniejszyć ból, biorąc to pod uwagę od samego początku rozwoju i upewnić się, że wszystkie funkcje gry mogą być poprawnie zaimplementowane przy użyciu różnych metod wprowadzania.

Philipp
źródło
Przed odpowiedzią czekałem na drugie potwierdzenie. Dzięki za wszystkie odpowiedzi wszystkim. To rozwiązało moje problemy. Opracuję za pomocą myszy na PC i dostosuję wejścia dla różnych platform.
shell
Z mojego doświadczenia wynika, że ​​większość graczy na PC ma gamepada, a jego brak jest rzadkością. To jednak moja jedyna krytyka.
Pharap
@Pharap Jednak w zależności od gry ludzie na PC nie chcą używać kontrolera, a projekty kontrolerów mogą stać się irytujące na PC. System ekwipunku Oblivion i Skyrim przychodzi mi na myśl za każdym razem, gdy myślę o tym temacie. Jest to gigantyczna PITA pod względem klawiatury i myszy, ale ma sens pod względem gamepada.
TyCobb
3
Jako gracz na PC chciałbym podkreślić, że wolę nie używać myszy, jeśli gra na to odpowiada. Upewnij się więc, że zezwalasz na ustawienie skrótów klawiszowych. Np. Używam tylko klawiatury do ligi rakietowej. Obejmuje to poruszanie się po menu
lucidbrot
1
@CGriffin Myślę, że to zależy od tego, jakie rodzaje gier ludzie lubią grać. Jeśli ktoś gra głównie w brutalne gry FPS, powieści wizualne lub gry typu point & click lub RTS, to nie ma sensu, aby nie był właścicielem ani nie chciał mieć kontrolera, ale takie rzeczy jak gry akcji lub platformówki osób trzecich lub niektóre gry logiczne są bardziej sensowne kontroler wejściowy. Niestety nie mogę znaleźć żadnych statystyk na ten temat, więc pochwalę to YMMV. Nie twierdzę, że gry powinny zmusić użytkowników do korzystania z gamepada, ale twierdzę, że gracze nie są w stanie „często się zdarzać”.
Pharap
6

Tak, powinieneś.

Użytkownicy komputerów PC oczekują, że będą mieli mysz do gry. Jeśli go nie użyjesz, ryzykujesz, że Twoja gra zostanie oznaczona jako „kiepski port mobilny”, szczególnie jeśli niektóre czynności w grze powinny być bardziej naturalnie wykonywane za pomocą myszy.

Należy również pamiętać, że niektórzy użytkownicy komputerów PC będą oczekiwać, że będzie więcej niż podstawowa rozgrywka wykonywana za pomocą klawiatury.

Sugeruję, abyś wykorzystał w jak największym stopniu funkcje wejściowe urządzenia docelowego, aby zadowolić zarówno użytkowników mobilnych, jak i PC.

Vaillancourt
źródło
5

To zależy jak zwykle.

Jaki gatunek? Ile masz pieniędzy / czasu? Czy rozwijasz aplikację do zarabiania pieniędzy?

Użytkownicy na ogół zaskakująco wybaczają złe sterowanie wejściami w niszowych grach (np. JRPG niezależnych programistów), ale lepsza kontrola wprowadzania jest nadal plusem, jeśli chcesz sprzedać więcej.

Jeśli masz bardzo napięty budżet i nie zarabiasz bezpośrednio na sprzedaży (np. Fundusz charytatywny płaci określoną liczbę godzin na opracowanie oprogramowania edukacyjnego), rozsądnie jest trzymać się jednej metody wprowadzania dobrze - dobrze wykonując wiele metod wprowadzania zajmuje dużo czasu.

Jeśli chcesz sprzedać swoją grę za rozsądną cenę (20 USD +) i dążyć do dotarcia do stosunkowo dużej liczby kupujących (50 000 +), koniecznie pamiętaj * o różnych wymaganiach dotyczących myszy, klawiatury, ekranu dotykowego i urządzenia gamepad od samego początku. Nie ma sposobu, aby po prostu „zmodernizować” wejście gamepada w grze na myszy / klawiaturze lub odwrotnie.

* Myśląc o tym, jak sprawić, by gra była przyjazna, gamepad i mysz, może się okazać, że nie istnieje dobre rozwiązanie. Takie przypadki są dość powszechne (gry strategiczne w czasie rzeczywistym rzadko są wieloplatformowe). W takich przypadkach zwykłym rozwiązaniem jest wydawanie tylko na urządzenia obsługujące formę wprowadzania danych wymaganą przez grę.

Piotr
źródło
1

Zależy to dokładnie od rodzaju twojego rozwoju.

Gry 3D
Jeśli spojrzysz na większość gier z perspektywy pierwszej osoby, myszy używa się tylko do rozglądania się. Po przeniesieniu do konsoli używa się drążków analogowych i przycisków, a na urządzeniach mobilnych przesuwa się po ekranie, używając jak najmniejszej liczby innych przycisków sterujących. Aby uzyskać dobre porównanie, obejrzyj filmy wideo z różnych wersji gry Minecraft .

Gry 2D .
Do gier, w których interakcje odbywają się w przestrzeni 2d. Następnie można zastosować interakcje myszy zgodnie z opisem; ale najważniejszą rzeczą do rozważenia jest to, jak często musisz przesuwać ręce z klawiatury na mysz i do tyłu. Na telefonie komórkowym nie masz wyboru, ponieważ wszystkie przyciski, których możesz chcieć użyć, muszą znajdować się na ekranie. Chociaż możesz rozważyć użycie przycisków, które wyświetlają się tylko wtedy, gdy są potrzebne na urządzeniach mobilnych, na przykład: gdy zbliżasz się do elementu, przycisk może pojawić się na ekranie tylko wtedy, gdy istnieje możliwość jego podniesienia. W grach 2D punkt ax działa dobrze na PC i urządzeniach mobilnych, ale może być nieco niezręczny na konsoli ze względu na fakt, że można użyć drążków analogowych.

Na twoje pytanie najważniejszą rzeczą, którą należy wziąć pod uwagę przy programowaniu na PC na wiele platform, jest to, że masz do dyspozycji znacznie więcej przycisków niż na innych platformach. Więc pod warunkiem, że Twoja liczba przycisków jest minimalna i (dla komputera z korzyścią) upewnij się, że jedną ręką Chan trzymasz mysz i jedną klawiaturę, to nie będzie problemu drukować kontrolek gier na innych platformach.

Thomas Mathieson
źródło
1

Tak, powinieneś. Jednak opracowałbym w oparciu o abstrakcyjną klasę wejściową lub interfejs, a następnie zaimplementowałem różne sposoby interakcji użytkownika z tym, w zależności od typu sprzętu.

Nie wiem konkretnie o twojej grze, ale na przykład utwórz interfejs klasy abstrakcyjnej za pomocą metod takich jak

bool lookingUp();
bool shooting();

A następnie zaimplementuj je w konkretnej klasie, np .:

bool lookingUp() {
    return mouseIsMovingUp(); // e.g. PC
}

bool lookingUp() {
    return isTrianglePressed(); // e.g. Gamepad
}

bool shooting() { // e.g. phone
    return screenPressedAt(10, 10);
}

Następnie w swojej grze utwórz konkretną klasę na podstawie typu sprzętu. To sprawi, że Twój kod będzie czystszy, a Ty możesz łatwo obsługiwać różne platformy.

Steve Smith
źródło
Ogólna idea jest słuszna, ale zwykle w grze reagujesz raczej na zdarzenia wejściowe, które stale sprawdzają stan.
Rotem,
@Rotem Zazwyczaj wszystko zależy od używanego frameworka lub bibliotek. Zwykle używam kombinacji obu, np. Biorę wydarzenie do „strzelania”, gdy się pojawia, i przechowuję je w bool, i sprawdzam bool przy każdej iteracji w pętli gry. Pozwala to również uniknąć problemów z wielowątkowością.
Steve Smith
-3

Będę grał adwokata diabła. Jestem ostatnim raportem dotyczącym problemów z danymi root, więcej osób korzysta z aplikacji komórkowych niż na komputerach. Zgadza się, nie tylko przejęły urządzenia mobilne, ale aplikacje mobilne przekroczyły w sumie użytkowników komputerów.

To powiedziawszy, konsumenci lubią wygodę i mogą mieć urządzenie, które wymaga myszy. Tylko myśl.

Josh Salganik
źródło
Więc ... czy OP powinien rozwijać się z myślą o myszach, jeśli planują atakować więcej niż na PC?
Vaillancourt
nie jestem pewien, jak to odpowiada na pytanie.
Brian H.
Byłoby to lepsze jako komentarz do pytania