Jak uniknąć zjawy przy naciskaniu wielu klawiszy?


15

Pracuję nad 2d przewijaną bocznie grą na PC, która korzysta z biblioteki gier SFML. Problem, którego nie jestem w stanie rozwiązać, polega na tym, że w wielu klawiaturach kombinacja trzech lub więcej klawiszy (jak w + d + k) nie działa. Czy jest jakiś sposób na rozwiązanie tego problemu?


1
Nigdy nie miałem klawiatury, w której W + D + K spowodowałoby problem z widmem. Czy jesteś pewien, że to, co widzisz, to duchy, a nie ograniczona liczba jednoczesnych sygnałów na klawiaturze?
— Logarr

@Logarr „ duszki ” jest problem, że niektóre klawisze klawiatury nie działają po naciśnięciu kilku klawiszy jednocześnie. Naciśnięcia klawiszy, które nie pojawiają się na komputerze lub wydają się znikać, są uważane za „zjawy”.
— Cees Timmerman

@CeesTimmerman - Wiem dokładnie, czym jest ghosting. Mówię o tym, że ponieważ W + D + K nie tworzą skrzyżowania, nigdy nie miałem klawiatury, która byłaby zaprojektowana w sposób, który miałby tę kombinację ducha.
— Logarr

@Logarr Wówczas limit byłby w oprogramowaniu OP, a nie w klawiaturze lub sterowniku. Ponadto nie wszystkie klawiatury są takie same.
— Cees Timmerman

Odpowiedzi:


28

Nie możesz Przynajmniej nie jako twórca gier.

Jako gracz możesz kupić droższe klawiatury z funkcjami „anti-ghosting”, ale w przeciwnym razie ograniczenie jest częścią samego sprzętu, więc nie możesz nic zrobić w oprogramowaniu, aby to rozwiązać.

Sprawdź tę stronę demonstracyjną, aby zobaczyć, jak działa ghosting klawiatury, a także wersję demonstracyjną: http://www.microsoft.com/appliedsciences/antighostingexplained.mspx

Więc twoje najlepsze zakłady to:

  • Nie używaj schematu sterowania, który wymaga zbyt wielu jednoczesnych naciśnięć klawiszy
  • Użyj padów, jeśli są dostępne
  • Pozwól graczowi ponownie przypisać klucze, aby mogli znaleźć zestaw kluczy nie powodujących zjawy dla ich sprzętu
  • Jeśli musisz, trzymaj się lewej strony klawiatury (wokół WASD), ponieważ klawiatury zwykle unikają tu zjawy

Historycznie rzecz biorąc, wiele gier PC używane klawisze modyfikatorów ( Ctrl, Alt, Shift) jako część ich kontroli, ponieważ te klawisze były podłączone do obsługi wciśnięty jest razem z innymi klawiszami, aby uniknąć smug. Ta praktyka trochę przestała być przychylna w latach 90., ponieważ klawisze modyfikujące były coraz częściej używane przez system operacyjny, co zakłócało grę.

Później niektóre gatunki gier kontrolowały się wokół kluczowych klastrów, w szczególności gatunek FPS wokół WASDmyszy +, ale innym przykładem byłyby japońskie gry niezależne wokół ZXCstrzałek. W sposób samospełniający się, ponieważ większość gier korzystała z tych klastrów, producenci klawiatur upewnili się również, że ghosting został zminimalizowany w tym obszarze, więc jeśli będziesz trzymać się tych samych elementów sterujących, które używają inne popularne gry, unikniesz również ghostingu.

Patrząc na przykład, Wi Dsą w porządku, ale Knie jest; czy przypadkiem używasz Kjako kontroli kierunkowej? Jeśli tak, rozważ użycie klawiszy strzałek.


1
Twoja odpowiedź zaczyna się od „Nie możesz”, ale następnie dajesz dobrą radę, jak tego uniknąć. Myślę, że właściwą odpowiedzią jest tutaj: „wybierz klawisze sterujące, które nie mają problemu z duchem na większości klawiatur”. Dobra informacja tutaj.
— JPhi1618,

@ JPhi1618 Myślę, że istnieje różnica między „tutaj, jak uniknąć duchów”, a „tutaj, jak sobie poradzić z faktem, że większość klawiatur ma klawiatury tego ducha”
— undergroundmonorail

3

Kup lepszą klawiaturę.

Zjawy są spowodowane przez sam sprzęt. Nawet wiele klawiatur do gier nadal będzie miało ten problem; inwestują tylko w rozwiązanie problemu „wspólnych” kluczy, takich jak WASD (ale nie na przykład „K”).

http://www.microsoft.com/appliedsciences/antighostingexplained.mspx


6
... i powiedz wszystkim swoim klientom, aby kupowali także lepsze klawiatury? To nie brzmi jak najbardziej przyjazne dla użytkownika rozwiązanie.
— Philipp

Życie jest trudne. Zmuszaj klientów do kupowania lepszego sprzętu lub nie projektuj gier, które są wewnętrznie zepsute na klawiaturach towarowych. To nie jest dokładnie nauka rakietowa. :)
— Sean Middleditch
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.