Entrée mobile

*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.

La majorité des sessions Roblox se déroulent sur des appareils mobiles, il est donc important de prendre en compte l' orientation de l'appareil et d'autres facteurs de cross-platform lors de la conception d'un jeu pour un large public.

Pour simplifier les entrées cross-platform, y compris l'interaction des joueurs avec des boutons virtuels, Roblox fournit le système d'actions d'entrée pour définir des actions telles que "sauter", "sprinter" ou "tirer" et configurer des liens pour plusieurs entrées matérielles qui déclenchent ces actions.

Roblox prend également en charge des fonctionnalités mobiles natives telles que le retour haptique, des gestes tactiles tels que TouchSwipe et TouchPinch, ou la fonctionnalité d'accéléromètre et de gyroscope sur les appareils AccelerometerEnabled et GyroscopeEnabled.

Détection du type d'entrée

Dans le développement cross-platform, il est important de déterminer et de répondre au type d'entrée PreferredInput qu'un joueur utilise, normalement pour s'assurer que les éléments UI comme les boutons et les menus à l'écran fonctionnent de manière élégante et supportent l'interaction à travers les appareils.

Par exemple, un appareil compatible tactile considère que le toucher est l'entrée par défaut et que des boutons tactiles peuvent apparaître pour des actions, mais un joueur peut choisir de connecter une manette bluetooth. Dans ce cas, le toucher reste une entrée valide, mais vous pouvez supposer que le joueur souhaite passer à la manette connectée comme type d'entrée principal et éventuellement utiliser le toucher comme entrée de secours pour l'UI à l'écran.

Consultez la détection du type d'entrée pour plus d'informations.

Orientation de l'appareil

Par défaut, les jeux Roblox s'exécutent en mode paysage, permettant au jeu de passer entre "paysage gauche" et "paysage droit" lorsque l'appareil du joueur tourne. Cependant, les jeux peuvent être verrouillés sur une orientation particulière si désiré.

Il existe cinq modes d'orientation différents, y compris deux modes basés sur des capteurs et trois modes verrouillés.¹ Chacun de ces modes peut être défini comme l'orientation défaut à travers StarterGui.ScreenOrientation, accessible via la fenêtre Propriétés de Studio.

Modes de capteur
LandscapeSensorLe paramètre par défaut de Roblox dans lequel le jeu apparaît toujours en mode paysage (pas de mode portrait) et l'appareil détecte son orientation physique pour s'assurer que la vue du jeu est toujours orientée vers le haut.
SensorL'appareil détecte son orientation physique pour s'assurer que la vue du jeu est toujours orientée vers le haut, passant entre les modes paysage et portrait au besoin.
Modes verrouillés
LandscapeLeftSur les appareils avec une barre de navigation/accueil virtuelle, sa zone tactile se trouve au bas de l'affichage. Sur les appareils avec un bouton d'accueil physique, le bouton d'accueil est à gauche de l'affichage.
LandscapeRightSur les appareils avec une barre de navigation/accueil virtuelle, sa zone tactile se trouve au bas de l'affichage. Sur les appareils avec un bouton d'accueil physique, le bouton d'accueil est à droite de l'affichage.
PortraitSur les appareils avec une barre de navigation/accueil virtuelle, sa zone tactile se trouve au bas de l'affichage. Sur les appareils avec un bouton d'accueil physique, le bouton d'accueil est en dessous de l'affichage.
¹ Roblox n'inclut pas de mode "portrait à l'envers" car de nombreux appareils ne prennent pas en charge cette orientation nativement.


Au-delà de la propriété par défaut StarterGui.ScreenOrientation, vous pouvez changer l'orientation pendant le gameplay à travers PlayerGui.ScreenOrientation. Cela peut être utile lorsqu'un jeu doit imposer une orientation, comme verrouiller la vue à Portrait pour un mini-jeu.

Le code suivant dans un LocalScript définit l'orientation de l'écran en portrait après un court délai :

LocalScript - Changer l'orientation de l'écran en portrait

local Players = game:GetService("Players")
local player = Players.LocalPlayer
local playerGui = player.PlayerGui
task.wait(5)
playerGui.ScreenOrientation = Enum.ScreenOrientation.Portrait

Enfin, vous pouvez détecter les changements d'orientation de l'écran pendant le gameplay en écoutant les changements de valeurs sur la propriété PlayerGui.CurrentScreenOrientation.

LocalScript - Détecter les changements d'orientation de l'écran

local Players = game:GetService("Players")
local player = Players.LocalPlayer
local playerGui = player.PlayerGui
local function onOrientationChange()
print("Orientation changée en", playerGui.ScreenOrientation)
end
playerGui:GetPropertyChangedSignal("ScreenOrientation"):Connect(onOrientationChange)

Retour haptique

La plupart des appareils mobiles ont des moteurs intégrés pour fournir un retour haptique. Ajouter des vibrations peut grandement améliorer l'expérience d'un joueur et fournir un retour subtil au-delà des visuels ou de l'audio.

Roblox prend en charge les haptics pour les appareils capables de haptique, y compris la plupart des iPhone, Pixel et appareils Samsung Galaxy. Le retour haptique est géré à travers des instances de HapticEffect qui peuvent être réglées à un Type spécifique tel que GameplayCollision ou UIClick.

Une fois qu'un HapticEffect est en place, vous pouvez l'initier par le biais de la méthode Play(), par exemple :


local Workspace = game:GetService("Workspace")
local effect = Instance.new("HapticEffect")
effect.Type = Enum.HapticEffectType.GameplayExplosion
effect.Parent = Workspace
-- Jouer l'effet haptique
effect:Play()
©2026 Société Roblox. Roblox, le logo Roblox et Powering Imagination font partie de nos marques déposées aux États-Unis et dans d'autres pays.