Roblox akceptuje wejścia z kontrolerów, takich jak kontrolery Xbox i PlayStation. Aby uprościć wejścia międzyplatformowe, w tym z kontrolerów, Roblox oferuje System Akcji Wejściowych do definiowania akcji takich jak "skok", "sprint" lub "strzał" oraz ustawiania powiązań dla wielu wejść sprzętowych, aby uruchamiały te akcje.
Podczas przypisywania wejść z kontrolerów, zobacz częste schematy sterowania, aby stworzyć spójne doświadczenie z kontrolerami dla graczy. Po ustawieniu wejść możesz ulepszyć doświadczenie gracza, dodając sprzężenie zwrotne haptyczne na wspieranych kontrolerach.
Gdy rozwijasz wsparcie dla kontrolerów, pamiętaj, aby często testować przy użyciu podłączonego kontrolera lub Emulatora Kontrolera w Studio.
Wykrywanie typu wejścia
W rozwoju międzyplatformowym ważne jest, aby określić i reagować na typ PreferredInput, którego używa gracz, zazwyczaj aby upewnić się, że elementy UI takie jak przyciski i menu na ekranie działają elegancko i wspierają interakcję między urządzeniami.
Na przykład, konsola zakłada, że kontrolery są domyślnym wejściem, ale gracz na PC lub laptopie może także zdecydować się na podłączenie kontrolera bluetooth. W takim przypadku, mysz/klawiatura pozostaje ważnym wejściem dla tego gracza, ale można założyć, że chcą oni przełączyć się na podłączony kontroler jako domyślny typ wejścia.
Zobacz wykrywanie typu wejścia po więcej informacji.
Częste schematy sterowania
Rozważając konkretne powiązania sterowania dla Systemu Akcji Wejściowych, najlepiej jest ustalić spójność w różnych grach. Następujące powiązania wejść pomogą graczom natychmiast poczuć się znajomo i komfortowo z kontrolami kontrolera.
| Wejście | Częste zastosowania |
|---|---|
| ButtonA | Akceptuje prośby gracza lub wybory GUI. Alternatywnie używane do akcji podstawowych, takich jak skakanie. |
| ButtonB | Anuluje prośby gracza lub wybory GUI. Alternatywnie używane do akcji drugorzędnych, takich jak unik, przewrót lub sprint. |
| Thumbstick1 | Zazwyczaj związane z ruchem postaci. |
| Thumbstick2 | Zazwyczaj związane z ruchem kamery. |
| ButtonL2, ButtonR2 | Zazwyczaj używane do akcji podstawowych, takich jak strzelanie. |
| ButtonL1, ButtonR1, ButtonX, ButtonY | Akcje drugorzędne, takie jak przeładowanie, celowanie lub uzyskiwanie dostępu do ekwipunku lub minimapy. |

Sprzężenie zwrotne haptyczne
Wiele kontrolerów ma wbudowane silniki, aby zapewnić sprzężenie zwrotne haptyczne. Dodanie drgań i wibracji może znacznie wzbogacić doświadczenie gracza i dostarczyć subtelnych informacji zwrotnych poza wizualizacjami lub dźwiękiem.
Roblox wspiera haptykę dla kontrolerów PlayStation, kontrolerów Xbox i kontrolera Quest Touch. Sprzężenie zwrotne haptyczne jest zarządzane przez instancje HapticEffect, które mogą być ustawione na określony typ Type, taki jak GameplayCollision lub UIClick.
Gdy HapticEffect jest gotowy, można go uruchomić za pomocą metody Play(), na przykład:
local Workspace = game:GetService("Workspace")local effect = Instance.new("HapticEffect")effect.Type = Enum.HapticEffectType.GameplayExplosioneffect.Parent = Workspace-- Odtwórz efekt haptycznyeffect:Play()
Emulacja kontrolera
Emulator kontrolera, dostępny z menu Test w Studio, pozwala dokładnie emulować wejście z gamepada bezpośrednio w Studio. Domyślny kontroler to ogólny gamepad, ale możesz wybierać alternatywy z menu wyboru w lewym górnym rogu.

Podczas testowania gry możesz kontrolować grę za pomocą wirtualnego kontrolera przy użyciu myszy.
Możesz także kliknąć Edytuj mapowania w prawym górnym rogu, aby zobaczyć i edytować mapowania klawiszy dla wirtualnego kontrolera, na przykład E do ButtonL2 lub 9 do ButtonA. Te mapowania są zapisywane jak inne ustawienia w Studio (per kontroler, per użytkownik, per komputer) i są tłumaczone na zdarzenia gamepada zarówno w oknie emulatora, jak i w widoku 3D.