Roblox chấp nhận đầu vào từ các gamepad như bộ điều khiển Xbox và PlayStation. Để đơn giản hóa các đầu vào đa nền tảng, bao gồm cả gamepad, Roblox cung cấp Hệ thống Hành động Nhập liệu để định nghĩa hành động như "nhảy", "chạy", hoặc "bắn" và thiết lập liên kết cho nhiều đầu vào phần cứng để điều khiển những hành động đó.
Khi liên kết các đầu vào gamepad, hãy xem các sơ đồ điều khiển phổ biến để tạo ra trải nghiệm gamepad nhất quán cho người chơi. Sau khi các đầu vào được thiết lập, bạn có thể nâng cao trải nghiệm của người chơi bằng cách bao gồm phản hồi xúc giác trên các bộ điều khiển được hỗ trợ.
Khi bạn xây dựng hỗ trợ cho gamepad, hãy nhớ kiểm tra thường xuyên bằng cách sử dụng một gamepad được kết nối hoặc Trình giả lập Bộ điều khiển trong Studio.
Phát hiện loại đầu vào
Trong phát triển đa nền tảng, điều quan trọng là bạn xác định và phản hồi loại PreferredInput mà người chơi đang sử dụng, thường là để đảm bảo rằng các phần tử UI như nút và menu trên màn hình hoạt động một cách thanh lịch và hỗ trợ tương tác trên các thiết bị.
Ví dụ, một máy chơi game giả định rằng gamepad là đầu vào mặc định, nhưng một người chơi trên PC hoặc laptop cũng có thể chọn kết nối một gamepad bluetooth. Trong trường hợp này, chuột/bàn phím vẫn là một đầu vào hợp lệ cho người chơi đó, nhưng bạn có thể giả định rằng họ muốn chuyển sang gamepad được kết nối như là loại đầu vào chính.
Xem phát hiện loại đầu vào để biết thêm thông tin.
Các sơ đồ điều khiển phổ biến
Khi xem xét các liên kết điều khiển cụ thể cho Hệ thống Hành động Nhập liệu, tốt nhất là thiết lập sự nhất quán giữa các trò chơi khác nhau. Các liên kết đầu vào sau sẽ giúp người chơi cảm thấy quen thuộc và thoải mái ngay lập tức với các điều khiển gamepad.
| Đầu vào | Các trường hợp sử dụng phổ biến |
|---|---|
| ButtonA | Chấp nhận các lời nhắc của người chơi hoặc lựa chọn GUI. Thay vào đó được sử dụng cho các hành động chính như nhảy. |
| ButtonB | Hủy bỏ các lời nhắc của người chơi hoặc lựa chọn GUI. Thay vào đó được sử dụng cho các hành động thứ cấp như né, lăn, hoặc chạy. |
| Thumbstick1 | Thường liên quan đến chuyển động của nhân vật. |
| Thumbstick2 | Thường liên quan đến chuyển động của camera. |
| ButtonL2, ButtonR2 | Thường được sử dụng cho các hành động chính, chẳng hạn như bắn. |
| ButtonL1, ButtonR1, ButtonX, ButtonY | Các hành động thứ cấp như nạp lại, nhắm mục tiêu, hoặc truy cập vào kho hoặc bản đồ nhỏ. |

Phản hồi xúc giác
Nhiều bộ điều khiển gamepad có động cơ tích hợp để cung cấp phản hồi xúc giác. Thêm các rung động và rung lắc có thể nâng cao trải nghiệm của người chơi và cung cấp phản hồi tinh tế hơn ngoài hình ảnh hoặc âm thanh.
Roblox hỗ trợ haptic cho các gamepad PlayStation, gamepad Xbox và bộ điều khiển Quest Touch. Phản hồi xúc giác được quản lý thông qua các thể hiện HapticEffect có thể được đặt thành một Type cụ thể như GameplayCollision hoặc UIClick.
Khi một HapticEffect đã được thiết lập, bạn có thể khởi động nó thông qua phương thức Play(), chẳng hạn như:
local Workspace = game:GetService("Workspace")
local effect = Instance.new("HapticEffect")
effect.Type = Enum.HapticEffectType.GameplayExplosion
effect.Parent = Workspace
-- Phát hiệu ứng xúc giác
effect:Play()Giả lập bộ điều khiển
Sử dụng Trình giả lập Bộ điều khiển để kiểm tra đầu vào gamepad trực tiếp trong Studio mà không cần kết nối bộ điều khiển vật lý. Nó hiển thị hình ảnh của thiết bị giả lập và làm sáng các điều khiển của nó khi đầu vào đến, điều này giúp xác nhận rằng các trình xử lý UserInputService và các liên kết Hệ thống Hành động Nhập liệu phản ứng như bạn mong đợi.