Yükleme ekranları

*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.

Roblox, kullanıcılar bir oyuna bağlanırken varsayılan bir yükleme ekranı gösterir, ancak oyununuzu statik veya animasyonlu içeriğe sahip özel bir yükleme ekranı ile kişiselleştirebilirsiniz.

Uygulama

Özel bir yükleme ekranı göstermek için, ya ScreenGui örneğini doğrudan bir LocalScript içinde tasarlayabilir ya da oyun yer hiyerarşinizdeki bir ScreenGui nesnesine referans verebilirsiniz. Her iki seçenek de ReplicatedFirst kullanır; çünkü bu hizmet, örnekleri diğer her şeyden önce istemcilere çoğaltır. Bu, yükleme ekranınızın kullanıcıların oyuna girdiğinde gördükleri ilk şey olmasını sağlar.

Skriptten

Özel bir yükleme ekranını tamamen bir LocalScript aracılığıyla tasarlamak ve göstermek için:

  1. ReplicatedFirst içinde bir LocalScript oluşturun.
  2. Aşağıdaki kod örneğini yapıştırarak bir ScreenGui nesnesi oluşturun ve özelleştirin. Tasarımınızı oluşturmak için aşağıdaki kodu kendi değerlerinizle değiştirebilirsiniz.
Script-Created Loading Screen

local Players = game:GetService("Players")
local ReplicatedFirst = game:GetService("ReplicatedFirst")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local loadingScreen = Instance.new("ScreenGui")
loadingScreen.IgnoreGuiInset = true
loadingScreen.Parent = playerGui
-- ScreenGui değerlerini kendi değerlerinizle değiştirin
local textLabel = Instance.new("TextLabel")
textLabel.Size = UDim2.new(1, 0, 1, 0)
textLabel.BackgroundColor3 = Color3.fromRGB(0, 20, 40)
textLabel.Font = Enum.Font.DenkOne
textLabel.TextColor3 = Color3.new(0.8, 0.8, 0.8)
textLabel.Text = "Yükleniyor"
textLabel.TextSize = 32
textLabel.Parent = loadingScreen
-- Varsayılan yükleme ekranını kaldırın
ReplicatedFirst:RemoveDefaultLoadingScreen()
task.wait(5) -- Özel yükleme ekranının en az bir süre görünmesini sağla
if not game:IsLoaded() then
game.Loaded:Wait()
end
loadingScreen:Destroy()

Mevcut GUI'den

Yükleme ekranı ScreenGui'sini tamamen bir LocalScript aracılığıyla oluşturmak yerine, oyun yer hiyerarşinizde mevcut bir ScreenGui'ye de referans verebilirsiniz. Oyununuzun, ReplicatedFirst içinde referans verilen ScreenGui'yi içerdiğinden ve ScreenGui'nin TextLabels ve ImageLabels gibi UI öğelerini içerdiğinden emin olun.

Bu süreci göstermek için, aşağıdaki LocalScript, ReplicatedFirst içindeki LoadingScreen adlı bir ScreenGui'ye referans verir, ardından varsayılan yükleme ekranını kaldırır, böylece bir oyuncunun görebileceği tek yükleme ekranı özel yükleme ekranınızdır.

Reference Existing Loading Screen

local Players = game:GetService("Players")
local ReplicatedFirst = game:GetService("ReplicatedFirst")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local loadingScreen = ReplicatedFirst:FindFirstChild("LoadingScreen")
if loadingScreen then
loadingScreen.IgnoreGuiInset = true
loadingScreen.Parent = playerGui
-- Varsayılan yükleme ekranını kaldırın
ReplicatedFirst:RemoveDefaultLoadingScreen()
task.wait(5) -- Ekranın en az bir süre görünmesini sağla
if not game:IsLoaded() then
game.Loaded:Wait()
end
loadingScreen:Destroy()
end

Animasyon ekleme

Statik özel yükleme ekranlarına ek olarak, yükleme ekranını geliştirmek ve yükleme ilerlemesini göstermek için animasyonlar ekleyebilirsiniz. Bunu yapmanın en kolay yolu, bir TextLabel veya ImageLabel gibi bir UI öğesi oluşturmak ve ardından bunu TweenService kullanarak animasyona tabi tutmaktır. Örneğin, aşağıdaki kod örneği, bir ImageLabel çocuğu olan yeni bir ScreenGui oluşturur, varsayılan yükleme ekranını kaldırır, ardından TweenService merkezi öğeleri oyunun yüklenene kadar yavaşça görünür hale getirir ve döndürür.

Script-Created Loading Screen (Animated)

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 loadingScreen = Instance.new("ScreenGui")
loadingScreen.IgnoreGuiInset = true
loadingScreen.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.DenkOne
textLabel.TextColor3 = Color3.new(0.8, 0.8, 0.8)
textLabel.Text = "Yükleniyor"
textLabel.TextSize = 32
textLabel.TextTransparency = 1
textLabel.Parent = loadingScreen
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.ImageTransparency = 1
loadingRing.Parent = loadingScreen
-- Varsayılan yükleme ekranını kaldırın
ReplicatedFirst:RemoveDefaultLoadingScreen()
-- Fade-in tweens'lerini başlat ve başlat
local fadeTweenInfo = TweenInfo.new(1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out, 0, false, 2)
local fadeTween1 = TweenService:Create(textLabel, fadeTweenInfo, {TextTransparency = 0})
local fadeTween2 = TweenService:Create(loadingRing, fadeTweenInfo, {ImageTransparency = 0})
fadeTween1:Play()
fadeTween2:Play()
-- Dönme tween'ini başlat ve başlat
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) -- Ekranın en az bir süre görünmesini sağla
if not game:IsLoaded() then
game.Loaded:Wait()
end
loadingScreen:Destroy()
©2026 Roblox Corporation. Roblox, the Roblox logo and Powering Imagination are among our registered and unregistered trademarks in the U.S. and other countries.