모바일 입력

*이 콘텐츠는 AI(베타)를 사용해 번역되었으며, 오류가 있을 수 있습니다. 이 페이지를 영어로 보려면 여기를 클릭하세요.

대부분의 Roblox 세션은 모바일 장치에서 플레이되므로, 광범위한 관객을 위한 게임을 디자인할 때 모바일 장치 방향 및 기타 크로스 플랫폼 요소를 고려하는 것이 중요합니다.

플레이어가 가상 버튼과 상호작용하는 것을 포함하여 크로스 플랫폼 입력을 단순화하기 위해, Roblox는 점프, 질주 또는 사격과 같은 동작을 정의하고 이러한 동작을 유도하기 위해 여러 하드웨어 입력에 대한 바인딩을 설정하는 입력 동작 시스템을 제공합니다.

Roblox는 햅틱 피드백과 같은 네이티브 모바일 기능, TouchSwipeTouchPinch와 같은 터치 제스처, 또는 AccelerometerEnabledGyroscopeEnabled 장치에서의 가속도계 및 자이로스코프 기능을 지원합니다.

입력 유형 감지

크로스 플랫폼 개발에서는 플레이어가 사용하는 PreferredInput 유형을 결정하고 이에 대응하는 것이 중요합니다. 이는 일반적으로 UI 요소와 같은 화면상의 버튼 및 메뉴가 우아하게 작동하고 장치 간의 상호작용을 지원하는 것을 보장하기 위해 필요합니다.

예를 들어, 터치 지원 장치는 터치를 기본 입력으로 간주하며 동작을 위한 터치 버튼이 나타날 수 있지만, 플레이어가 블루투스 게임패드를 연결할 수 있습니다. 이 경우 터치는 유효한 입력으로 남지만, 플레이어가 연결된 게임패드를 입력 유형으로 바꾸고 화면 UI를 위한 백업 입력으로 터치를 사용하고 싶어한다고 가정할 수 있습니다.

자세한 정보는 입력 유형 감지를 참조하십시오.

장치 방향

기본적으로 Roblox 게임은 가로 모드로 실행되며, 플레이어의 장치가 회전할 때마다 가로 "왼쪽"과 가로 "오른쪽" 간에 전환됩니다. 그러나 원할 경우 특정 방향으로 잠글 수 있습니다.

다섯 가지 다른 방향 모드가 있으며, 여기에는 두 개의 센서 기반 모드와 세 개의 잠금 모드가 포함됩니다.¹ 이러한 각각은 StarterGui.ScreenOrientation을 통해 기본 방향으로 설정할 수 있으며, Studio의 속성 창을 통해 액세스할 수 있습니다.

센서 모드
LandscapeSensor게임이 항상 가로 모드(세로 모드 없음)로 표시되며, 장치가 물리적 방향을 감지하여 게임 뷰가 항상 위쪽으로 향하도록 하는 기본 Roblox 설정입니다.
Sensor장치가 물리적 방향을 감지하여 게임 뷰가 항상 위쪽으로 향하도록 하며 필요에 따라 가로 모드와 세로 모드 간에 전환합니다.
잠금 모드
LandscapeLeft가상 홈/내비게이션 바가 있는 장치의 경우, 터치 영역이 디스플레이 하단에 있습니다. 물리적 홈 버튼이 있는 장치의 경우, 홈 버튼이 디스플레이의 왼쪽에 있습니다.
LandscapeRight가상 홈/내비게이션 바가 있는 장치의 경우, 터치 영역이 디스플레이 하단에 있습니다. 물리적 홈 버튼이 있는 장치의 경우, 홈 버튼이 디스플레이의 오른쪽에 있습니다.
Portrait가상 홈/내비게이션 바가 있는 장치의 경우, 터치 영역이 디스플레이 하단에 있습니다. 물리적 홈 버튼이 있는 장치의 경우, 홈 버튼이 디스플레이 하단에 있습니다.
¹ 많은 장치가 이 방향을 본래 지원하지 않기 때문에 Roblox는 "세로 거꾸로" 모드를 포함하지 않습니다.


기본 StarterGui.ScreenOrientation 속성을 넘어, 게임 플레이 중에 PlayerGui.ScreenOrientation을 통해 방향을 변경할 수 있습니다. 이는 게임이 방향을 강제해야 할 때 유용할 수 있습니다. 예를 들어, 미니게임을 위해 뷰를 Portrait로 잠그는 경우입니다.

다음 코드는 LocalScript에서 짧은 지연 후 화면 방향을 세로로 설정합니다:

LocalScript - 화면 방향을 세로로 변경

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

마지막으로, 게임 플레이 중에 화면 방향의 변화를 감지하려면 PlayerGui.CurrentScreenOrientation 속성의 값 변화에 대해 듣는 방법이 있습니다.

LocalScript - 화면 방향 변화 감지

local Players = game:GetService("Players")
local player = Players.LocalPlayer
local playerGui = player.PlayerGui
local function onOrientationChange()
print("방향이 변경되었습니다:", playerGui.ScreenOrientation)
end
playerGui:GetPropertyChangedSignal("ScreenOrientation"):Connect(onOrientationChange)

햅틱 피드백

대부분의 모바일 장치에는 햅틱 피드백을 제공하기 위해 내장된 모터가 있습니다. 진동과 떨림을 추가하면 플레이어의 경험을 크게 향상시킬 수 있으며, 시각적 또는 오디오 이상의 미세한 피드백을 제공할 수 있습니다.

Roblox는 대부분의 iPhone, Pixel 및 Samsung Galaxy 장치와 같은 햅틱 기능이 있는 장치를 위한 햅틱을 지원합니다. 햅틱 피드백은 HapticEffect 인스턴스를 통해 관리되며, Type을 특정값으로 설정할 수 있습니다. 예를 들어, GameplayCollision 또는 UIClick이 해당합니다.

HapticEffect가 설정되면, Play() 메서드를 통해 이를 시작할 수 있습니다. 예를 들어:


local Workspace = game:GetService("Workspace")
local effect = Instance.new("HapticEffect")
effect.Type = Enum.HapticEffectType.GameplayExplosion
effect.Parent = Workspace
-- 햅틱 효과 재생
effect:Play()
©2026 Roblox Corporation. Roblox 및 Roblox 로고, 'Powering Imagination'은 미국 및 기타 국가 내 당사의 등록 및 미등록 상표입니다.