หน้าจอการโหลด

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

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

การแสดงผลหน้าจอการโหลดที่กำหนดเอง

เพื่อแสดงหน้าจอการโหลดที่กําหนดเองให้คุณสามารถออกแบบ ScreenGui ริงค์ในพื้นที่งานของคุณหรือคุณสามารถอ้างอิ

ออกแบบภายใน LocalScripts

เพื่อออกแบบและแสดงผลหน้าจอการโหลดที่กำหนดเอง:

  1. ใน ReplicatedFirst สร้าง LocalScript
  2. ใช้ตัวอย่างรหัสต่อไปนี้เพื่อสร้างและปรับแต่งวัตถุ ScreenGui คุณสามารถปรับแต่งรหัสต่อไปนี้ด้วยค่าของคุณเองเพื่อสร้างการออกแบบของคุณ:

local Players = game:GetService("Players")
local ReplicatedFirst = game:GetService("ReplicatedFirst")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local screenGui = Instance.new("ScreenGui")
screenGui.IgnoreGuiInset = true
screenGui.Parent = playerGui
-- แทนที่ ScreenGUI เป็นเจ้าของ
local textLabel = Instance.new("TextLabel")
textLabel.Size = UDim2.new(1, 0, 1, 0)
textLabel.BackgroundColor3 = Color3.fromRGB(0, 20, 40)
textLabel.Font = Enum.Font.GothamMedium
textLabel.TextColor3 = Color3.new(0.8, 0.8, 0.8)
textLabel.Text = "Loading"
textLabel.TextSize = 28
textLabel.Parent = screenGui
-- ลบหน้าจอการโหลดที่เริ่มต้น
ReplicatedFirst:RemoveDefaultLoadingScreen()
task.wait(5) -- บังคับให้หน้าจอปรากฏขึ้นเป็นเวลาอย่างน้อยสองวินาที
if not game:IsLoaded() then
game.Loaded:Wait()
end
screenGui:Destroy()

อ้างถึง ScreenGuis

แทนที่จะสร้าง ScreenGui ผ่าน Class.Local

เพื่อแสดงให้เห็นว่ากระบวนการนี้เกิดขึ้นได้อย่างไร ต่อไปนี้ LocalScript อ้างถึง ScreenGui ที่มีชื่อว่า LoadingScreen ภายใน 1> Class.ReplicatedFirst1> แล้วลบ


local Players = game:GetService("Players")
local ReplicatedFirst = game:GetService("ReplicatedFirst")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local screenGui = ReplicatedFirst.LoadingScreen
screenGui.IgnoreGuiInset = true
screenGui.Parent = playerGui
-- ลบหน้าจอการโหลดที่เริ่มต้น
ReplicatedFirst:RemoveDefaultLoadingScreen()
task.wait(5) -- บังคับให้หน้าจอปรากฏขึ้นเป็นเวลาอย่างน้อยสองวินาที
if not game:IsLoaded() then
game.Loaded:Wait()
end
screenGui:Destroy()

เพิ่มแอนิเมชัน

นอกเหนือจากหน้าจอการโหลดแบบคงที่แล้วคุณยังสามาร


local Players = game:GetService("Players")
local ReplicatedFirst = game:GetService("ReplicatedFirst")
local TweenService = game:GetService("TweenService")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local screenGui = Instance.new("ScreenGui")
screenGui.IgnoreGuiInset = true
screenGui.Parent = playerGui
local textLabel = Instance.new("TextLabel")
textLabel.Size = UDim2.new(1, 0, 1, 0)
textLabel.BackgroundColor3 = Color3.fromRGB(0, 20, 40)
textLabel.Font = Enum.Font.GothamMedium
textLabel.TextColor3 = Color3.new(0.8, 0.8, 0.8)
textLabel.Text = "Loading"
textLabel.TextSize = 28
textLabel.Parent = screenGui
local loadingRing = Instance.new("ImageLabel")
loadingRing.Size = UDim2.new(0, 256, 0, 256)
loadingRing.BackgroundTransparency = 1
loadingRing.Image = "rbxassetid://4965945816"
loadingRing.AnchorPoint = Vector2.new(0.5, 0.5)
loadingRing.Position = UDim2.new(0.5, 0, 0.5, 0)
loadingRing.Parent = screenGui
-- ลบหน้าจอการโหลดที่เริ่มต้น
ReplicatedFirst:RemoveDefaultLoadingScreen()
local tweenInfo = TweenInfo.new(4, Enum.EasingStyle.Linear, Enum.EasingDirection.In, -1)
local tween = TweenService:Create(loadingRing, tweenInfo, {Rotation = 360})
tween:Play()
task.wait(5) -- บังคับให้หน้าจอปรากฏขึ้นเป็นเวลาอย่างน้อยสองวินาที
if not game:IsLoaded() then
game.Loaded:Wait()
end
screenGui:Destroy()