การป้อนข้อมูลบนมือถือ

*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่

เซสชัน Roblox ส่วนใหญ่เล่นบนอุปกรณ์มือถือ ดังนั้นจึงเป็นสิ่งสำคัญที่จะต้องพิจารณา การจัดOrientationsของอุปกรณ์ และปัจจัยอื่น ๆ ข้ามแพลตฟอร์ม เมื่อออกแบบเกมสำหรับผู้ชมจำนวนมาก

เพื่อให้การป้อนข้อมูลข้ามแพลตฟอร์มที่ง่ายขึ้น รวมถึงการโต้ตอบของผู้เล่นกับปุ่มเสมือน Roblox มีระบบ Input Action เพื่อกำหนด การกระทำ เช่น "กระโดด" "วิ่ง" หรือ "ยิง" และตั้งค่าตัว จัดผูก สำหรับการป้อนข้อมูลฮาร์ดแวร์หลายประเภทเพื่อขับเคลื่อนการกระทำเหล่านั้น

Roblox ยังสนับสนุนฟีเจอร์มือถือพื้นเมือง เช่น การตอบสนองที่สัมผัสได้ ท่าทางการสัมผัส เช่น TouchSwipe และ TouchPinch หรือฟังก์ชันของเซนเซอร์เร่งความเร็วและจอยโรเตชั่นบนอุปกรณ์ AccelerometerEnabled และ GyroscopeEnabled

การตรวจจับประเภทการป้อนข้อมูล

ในการพัฒนาข้ามแพลตฟอร์ม สิ่งสำคัญคือการกำหนดและตอบสนองต่อชนิด PreferredInput ที่ผู้เล่นกำลังใช้ โดยปกติเพื่อรับประกันว่า UI elements เช่น ปุ่มและเมนูบนหน้าจอทำงานอย่างสวยงามและรองรับการโต้ตอบข้ามอุปกรณ์

ตัวอย่างเช่น อุปกรณ์ที่รองรับการสัมผัสถือว่าการสัมผัสเป็นการป้อนข้อมูลเริ่มต้นและปุ่มสัมผัสอาจปรากฏสำหรับการกระทำ แต่ผู้เล่นอาจเลือกเชื่อมต่อเกมแพดบลูทูธ ในกรณีนี้ การสัมผัสยังคงเป็นการป้อนข้อมูลที่ถูกต้อง แต่คุณสามารถสันนิษฐานได้ว่าผู้เล่นต้องการเปลี่ยนไปใช้เกมแพดที่เชื่อมต่อเป็นประเภทการป้อนข้อมูล หลัก และอาจใช้การสัมผัสเป็นการป้อนข้อมูลสำรองสำหรับ UI บนหน้าจอ

ดู การตรวจจับประเภทการป้อนข้อมูล สำหรับข้อมูลเพิ่มเติม

การจัดOrientationของอุปกรณ์

ตามค่าเริ่มต้น เกม Roblox จะทำงานในโหมด แนวนอน ทำให้เกมสามารถสับเปลี่ยนระหว่าง "ซ้าย" และ "ขวา" ได้เมื่ออุปกรณ์ของผู้เล่นหมุน อย่างไรก็ตาม เกมสามารถล็อคไปยังการมองที่เฉพาะเจาะจงได้ตามต้องการ

มีโหมดการจัดOrientation ห้าโหมด ซึ่งรวมถึงโหมดตามเซนเซอร์สองโหมดและสามโหมดที่ล็อค.¹ แต่ละโหมดเหล่านี้สามารถตั้งค่าเป็นโหมด เริ่มต้น ผ่าน StarterGui.ScreenOrientation ซึ่งสามารถเข้าถึงได้ผ่านหน้าต่าง Properties ของ Studio

โหมดเซนเซอร์
LandscapeSensorการตั้งค่า Roblox เริ่มต้นซึ่งเกมจะแสดงในโหมดแนวนอนเสมอ (ไม่มีโหมดแนวตั้ง) และอุปกรณ์ตรวจจับการจัดOrientationทางกายภาพเพื่อให้แน่ใจว่ามุมมองของเกมจะมุ่งตรงขึ้นเสมอ
Sensorอุปกรณ์ตรวจจับการจัดOrientationทางกายภาพเพื่อให้แน่ใจว่ามุมมองของเกมจะมุ่งตรงขึ้นเสมอ โดยสลับระหว่างโหมดแนวนอนและแนวตั้งตามที่ต้องการ
โหมดที่ล็อค
LandscapeLeftในอุปกรณ์ที่มีแถบบ้าน/นำทางเสมือน พื้นที่สัมผัสจะอยู่ที่ด้านล่างของการแสดงผล ในอุปกรณ์ที่มีปุ่มบ้านทางกายภาพ ปุ่มบ้านจะอยู่ทางซ้ายของการแสดงผล
LandscapeRightในอุปกรณ์ที่มีแถบบ้าน/นำทางเสมือน พื้นที่สัมผัสจะอยู่ที่ด้านล่างของการแสดงผล ในอุปกรณ์ที่มีปุ่มบ้านทางกายภาพ ปุ่มบ้านจะอยู่ทางด้านขวาของการแสดงผล
Portraitในอุปกรณ์ที่มีแถบบ้าน/นำทางเสมือน พื้นที่สัมผัสจะอยู่ที่ด้านล่างของการแสดงผล ในอุปกรณ์ที่มีปุ่มบ้านทางกายภาพ ปุ่มบ้านจะอยู่ด้านล่างของการแสดงผล
¹ Roblox ไม่มีโหมด "แนวตั้งกลับหัว" เนื่องจากอุปกรณ์หลายตัวไม่รองรับOrientationนั้นโดยธรรมชาติ


นอกเหนือจากคุณสมบัติเริ่มต้น StarterGui.ScreenOrientation แล้ว คุณสามารถเปลี่ยนการจัดOrientationขณะเล่นเกมผ่าน PlayerGui.ScreenOrientation ซึ่งอาจเป็นประโยชน์เมื่อเกมจำเป็นต้องบังคับการจัดOrientation เช่นการล็อคมุมมองไปที่ Portrait สำหรับมินิเกม

โค้ดต่อไปนี้ใน LocalScript ตั้งค่าการจัดOrientationของหน้าจอเป็นแนวตั้งหลังจากดีเลย์สั้น ๆ:

LocalScript - เปลี่ยนการจัดOrientationของหน้าจอเป็นแนวตั้ง

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

สุดท้าย คุณสามารถตรวจจับการเปลี่ยนแปลงการจัดOrientationของหน้าจอในระหว่างการเล่นเกมโดยการฟังการเปลี่ยนแปลงค่าในคุณสมบัติ PlayerGui.CurrentScreenOrientation

LocalScript - ตรวจจับการเปลี่ยนแปลงการจัดOrientationของหน้าจอ

local Players = game:GetService("Players")
local player = Players.LocalPlayer
local playerGui = player.PlayerGui
local function onOrientationChange()
print("การจัดOrientationเปลี่ยนเป็น", 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 เป็นส่วนหนึ่งของเครื่องหมายการค้าที่จดทะเบียน และไม่ได้จดทะเบียนของเราในสหรัฐฯ และประเทศอื่นๆ