Input

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

Ogni gioco ha bisogno di ricevere input dagli utenti affinché i giocatori possano interagire e visualizzare il proprio ambiente. Roblox supporta quasi tutte le forme di input, inclusi mouse/tastiera, touch, gamepad e VR.

Input multipiattaforma

Roblox è intrinsecamente multipiattaforma, poiché i giocatori possono scoprire e unirsi ai giochi sul loro telefono o tablet, per poi continuare dove avevano lasciato su PC o console. L'input è particolarmente importante come parte del tuo piano di sviluppo multipiattaforma.

Per semplificare questo processo, Roblox fornisce il Sistema di Azioni Input per definire azioni come "salta", "corri" o "spara" e impostare bindings per più input hardware per eseguire quelle azioni. Questo ti libera dal dover pensare a tutti gli aspetti tecnici degli input hardware e ti consente di definire semplicemente quali input eseguono quali azioni.

Rilevamento del tipo di input

Nello sviluppo multipiattaforma, è importante determinare e rispondere al tipo di input principale che un giocatore sta utilizzando, normalmente per garantire che gli elementi UI come i pulsanti e i menu sullo schermo funzionino elegantemente su diversi dispositivi.

Ad esempio, un dispositivo abilitato al touch presume che il touch sia l'input predefinito e che potrebbero apparire pulsanti touch per le azioni, ma se un giocatore collega una tastiera/mouse o un gamepad bluetooth aggiuntivi, puoi presumere che voglia passare a quello come tipo di input principale e utilizzare eventualmente il touch come input di riserva per l'interfaccia utente sullo schermo. La proprietà di sola lettura UserInputService.PreferredInput è un modo conveniente per testare e adattarsi a più tipi di input su più tipologie di dispositivi, basandosi sul comportamento anticipato del giocatore.

Il valore di PreferredInput cambia in base agli input dei dispositivi integrati e all'interazione più recente del giocatore con un gamepad o una tastiera/mouse connessi. Alcuni esempi includono:

Scenario del mondo realePreferredInput
Il giocatore sta utilizzando un telefono senza altri dispositivi di input connessi; nessuna possibilità di cambiamento del tipo di input.Touch
Il giocatore sta utilizzando un dispositivo mobile con una tastiera e un mouse bluetooth connessi, ma non è connesso alcun gamepad.KeyboardAndMouse
Il giocatore sta utilizzando un tablet con un gamepad bluetooth connesso, ma non è connessa alcuna tastiera o mouse.Gamepad
Il giocatore è su un Xbox o PlayStation con una tastiera e un mouse bluetooth connessi e ha interagito più di recente con la tastiera o il mouse.KeyboardAndMouse
Il giocatore è su un PC Windows o Mac con un gamepad connesso e ha interagito più di recente con il gamepad.Gamepad

Il seguente LocalScript è un modello per rilevare inizialmente l'input preferito e rispondere ai cambiamenti durante il gioco.

Rilevamento PreferredInput

local UserInputService = game:GetService("UserInputService")
local function preferredInputChanged()
local preferredInput = UserInputService.PreferredInput
if preferredInput == Enum.PreferredInput.Touch then
-- Il giocatore è su un dispositivo abilitato al touch senza altri tipi di input disponibili/connessi
print("Touch")
elseif preferredInput == Enum.PreferredInput.Gamepad then
-- Il giocatore ha collegato o interagito più recentemente con un gamepad
print("Gamepad")
elseif preferredInput == Enum.PreferredInput.KeyboardAndMouse then
-- Il giocatore ha collegato o interagito più recentemente con una tastiera o un mouse
print("KeyboardAndMouse")
end
end
preferredInputChanged()
UserInputService:GetPropertyChangedSignal("PreferredInput"):Connect(function()
preferredInputChanged()
end)

Binding predefiniti

Roblox fornisce binding di input predefiniti per movimento, controllo della fotocamera e interazione di base con l'ambiente — I giocatori di Roblox sono familiari con questi controlli, quindi dovresti sovrascriverli solo in casi specifici. Nota anche che gli input riservati non possono essere sovrascritti e funzioneranno sempre con il loro scopo previsto.

AzioniMouse/TastieraGamepadTouch
Apri menu RobloxEscStart pulsante (ButtonStart)N/A
Console SviluppatoreF9N/AN/A
Modalità a schermo intero (Windows)
Mostra desktop (Mac)
F11N/AN/A
Registra video (Windows)F12N/AN/A
Fai uno screenshotPrintScreenN/AN/A
© 2026 Roblox Corporation. Roblox, il logo Roblox e Powering Imagination sono tra i nostri marchi registrati e non registrati negli Stati Uniti. e altri paesi.