Decal

Artık kullanılmayanları göster

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

Resim nesnesi bir BasePart yüzüne bir görüntü uygulayan bir nesnedir.

Bir Resim Nasıl Çalıştır?

Bir Çıkartma, BasePart ına uygulanan bir görüntüyü uygulayacaktır. Uygulanan görüntünün aşağıdaki öğelere bağlı olduğu yüzeysi, FaceInstance.Face özelliğine bağlıdır. Çıkartmanın boyutu,

Bir Resim'e bir Çıkartma uygulandığı belirlenir bir Class.Decal.Texture özelliği. İzler, topluluk kurallarına uymak şartıyla Roblox'a yüklenebilir. İzler hakkında bilgi için, bak Textures ve Decals.

Resimlerin Alternatifleri

Resimlerin çeşitli uygulamalarına rağmen, bazı durumlarda geliştiriciler bunun yerine aşağıdaki kategoriden birini seçmeyi tercih edebilir.

  • Tekrarlanan kareli yüzükler için Texture nesnesi kullanılmalıdır
  • GUI elemanlarını uygulamak için, SurfaceGui nesnesi kullanılmalıdır
  • Eğer görüntünün ışık etkisi değiştirilmesi gerekirse, SurfaceGui nesnesi kullanılmalıdır

Kod Örnekleri

Changing Decal Texture

-- create part
local part = Instance.new("Part")
part.Size = Vector3.new(5, 1, 5)
part.Position = Vector3.new(0, 0.5, 0)
part.Anchored = true
part.TopSurface = Enum.SurfaceType.Smooth
part.BrickColor = BrickColor.new("Toothpaste")
-- create decal
local decal = Instance.new("Decal")
decal.Face = Enum.NormalId.Top
decal.Parent = part
-- create sound
local sound = Instance.new("Sound")
sound.SoundId = "rbxasset://sounds/uuhhh.mp3" -- oof
sound.Parent = part
-- define faces
local happyFace = "http://www.roblox.com/asset/?id=26424652"
local sadFace = "http://www.roblox.com/asset/?id=147144198"
decal.Texture = happyFace
-- touched event
local cooldown = false
part.Touched:Connect(function(hit)
if not cooldown then
if hit and hit.Parent then
cooldown = true
sound:Play()
decal.Texture = sadFace
task.wait(1)
decal.Texture = happyFace
task.wait(0.2)
cooldown = false
end
end
end)
-- add to workspace
part.Parent = workspace

Özet

Özellikler

  • Paralel oku

    Class.Decal ın renkleri.

  • Gizli
    Çoğaltılmamış
    Paralel oku

    Etkisi, çıkartmanın Decal.Transparency özelliğinin çarpanıdır. Efektler yalnızca yerel oyuncuya görünür.

  • Texture:ContentId
    Paralel oku

    Uygulanacak görüntünün Decal tarafından kullanılan görüntü kimliği.

  • Paralel oku

    0'ın tamamen opake olması ve 1'in tamamen şeffaflığıyla Decal ın birincil şeffaflığını belirler.

  • Paralel oku

    Çok sayıda Dekalar aynı yüzüne atanırken görüntü sırasını belirler.

Şuradan alınan Özellikler: FaceInstance
  • Paralel oku

    Nesnenin tuğunun hangi yüzünde göründüğünü ayarlar.

Özellikler

Color3

Paralel oku

Class.Decal ın renkleri.

Geliştiriciler bu özelliklerin sadece renk değil, ayrıca şeffaf olarak değiştirilebilir olması nedeniyle tüm renkleri ayarladığını unutmalıdır. Bu, Decal ile ilgili görüntülerin orijinal olarak beyaz (RGB = 1,1,1) olması durumunda renkleri bu özellikle değiştirilemez.

Datatype.Color3 ün RGB özelliklerini azaltarak, geliştiriciler bir çıkartmayı daha karanlık hale getirebilirler.

Kod Örnekleri

Decal Color3

local TweenService = game:GetService("TweenService")
local part = Instance.new("Part")
part.Size = Vector3.new(10, 10, 1)
part.Position = Vector3.new(0, 5, 0)
part.Anchored = true
part.Transparency = 1
local decal = Instance.new("Decal")
decal.Face = Enum.NormalId.Front
decal.Texture = "http://www.roblox.com/asset/?id=1145367640" -- white circle
decal.Parent = part
part.Parent = workspace
local redTween = TweenService:Create(
decal,
TweenInfo.new(1, Enum.EasingStyle.Linear, Enum.EasingDirection.Out),
{ Color3 = Color3.new(1, 0, 0) }
)
local greenTween = TweenService:Create(
decal,
TweenInfo.new(1, Enum.EasingStyle.Linear, Enum.EasingDirection.Out),
{ Color3 = Color3.new(0, 1, 0) }
)
local blueTween = TweenService:Create(
decal,
TweenInfo.new(1, Enum.EasingStyle.Linear, Enum.EasingDirection.Out),
{ Color3 = Color3.new(0, 0, 1) }
)
while true do
redTween:Play()
redTween.Completed:Wait()
greenTween:Play()
greenTween.Completed:Wait()
blueTween:Play()
blueTween.Completed:Wait()
end

LocalTransparencyModifier

Gizli
Çoğaltılmamış
Paralel oku

Etkisi, çıkartmanın Decal.Transparency özelliği için bir çarpan olarak görülür. Efektler sadece Players.LocalPlayer'e görünür.

Bu özellik, Decal.Transparency ın başka bir script tarafından ayarlanması durumunda kullanılmalıdır. Decal.Transparency bu, orijinal Decal 'in şeffaflığından endişelenmeden değiştirilebilir olmasıdır.

LocalTransparencyModifier 1'e ayarlandığında, Decal görünmez olacaktır, orijinal şeffaflığına bağlı olarak. Onu 0'a ayarlandığında, şeffaflığın görünümü Decal.Transparency çıkartmaeşit olacaktır. Bu formül şu şekildedir:


Displayed Transparency = Transparency + ((1 - Transparency) * LocalTransparencyModifier)

Not, bu özellik sadece klişemizde kullanılmalıdır ve sunucuya kopyalanmaz.

For a variant of this property for BaseParts , see BasePart.LocalTransparencyModifier .

Texture

ContentId
Paralel oku

Uygulanacak resmin Decal tarafından belirlenen içeriği.

Bir Resmi Nasıl Yükleyebilirim?

Görüntüler, topluluk kurallarına uymak şartıyla Roblox'a yüklenebilir. Görüntüler nasıl yüklenebileceği hakkında bilgi için, Görüntüler ve Resimler bakın.

Bir Resim'in İçeriği ID'sini nasıl bulabilirim?

Class.Sound ve Animation nesneleri ile aynı değildir, bir İşaret'in İçeriği ID'si URL ile aynı değildir. İçeriği bulmanın iki ana yolu vardır:

  • Roblox Studio'da URL'yi Doku özelliğine yapıştırın. Roblox, özelliği doğru içerik ID'si ile otomatik olarak güncellenecek. Bu sadece Roblox Studio'da çalışır ve oyun çalışırken yapılabilir.
  • Resmin oyuna yerleştirilmesini sağlayın, bu genellikle "My Decals" altındaki Alet Kutusu aracılığıyla yapılır. İçerik ID'si, yerleştirilen resmin içinde bulunabilir. Ayrıca, InsertService:LoadAsset() bu yöntemi otomatikleştirmek isteyen geliştiriciler için de kullanılabilir.

Kod Örnekleri

Changing Decal Texture

-- create part
local part = Instance.new("Part")
part.Size = Vector3.new(5, 1, 5)
part.Position = Vector3.new(0, 0.5, 0)
part.Anchored = true
part.TopSurface = Enum.SurfaceType.Smooth
part.BrickColor = BrickColor.new("Toothpaste")
-- create decal
local decal = Instance.new("Decal")
decal.Face = Enum.NormalId.Top
decal.Parent = part
-- create sound
local sound = Instance.new("Sound")
sound.SoundId = "rbxasset://sounds/uuhhh.mp3" -- oof
sound.Parent = part
-- define faces
local happyFace = "http://www.roblox.com/asset/?id=26424652"
local sadFace = "http://www.roblox.com/asset/?id=147144198"
decal.Texture = happyFace
-- touched event
local cooldown = false
part.Touched:Connect(function(hit)
if not cooldown then
if hit and hit.Parent then
cooldown = true
sound:Play()
decal.Texture = sadFace
task.wait(1)
decal.Texture = happyFace
task.wait(0.2)
cooldown = false
end
end
end)
-- add to workspace
part.Parent = workspace

Transparency

Paralel oku

0'ın tamamen opake olması ve 1'in tamamen şeffaflığıyla Decal ın birincil şeffaflığını belirler.

Not, Decals ayrıca Roblox'a yüklenen orijinal görüntü dosyasının şeffaflığına saygı gösterir. Bu, şeffaflığı Roblox'a yüklemeden önce değiştirilebilir anlamına gelir ve Transparency özelliğini kullanmak zorunda kalmadan önce şeffaflığı değiştirilebilir.

Decal.LocalTransparencyModifier etkili bir görünüm olarak kullanılır ve Decal'in görünümünün başka bir script tarafından değiştirilmesi olası olduğunda kullanılmalıdır, bu da oyuncu karakterleri için geçerlidir.

For BaseParts , see BasePart.Transparency .

Kod Örnekleri

Fading Decal

local TweenService = game:GetService("TweenService")
local part = Instance.new("Part")
part.Size = Vector3.new(10, 10, 1)
part.Position = Vector3.new(0, 5, 0)
part.Anchored = true
part.Transparency = 1
local decal = Instance.new("Decal")
decal.Face = Enum.NormalId.Front
decal.Texture = "http://www.roblox.com/asset/?id=699259085" -- roblox logo
decal.Parent = part
part.Parent = workspace
local tween = TweenService:Create(
decal,
TweenInfo.new(1, Enum.EasingStyle.Linear, Enum.EasingDirection.Out, -1, true),
{ Transparency = 1 }
)
tween:Play()

ZIndex

Paralel oku

ZIndex ile aynı Face ın üstündeki çıkartmaların sırasını belirler. Çıkartmalar, daha düşük değerleri önce rendere eder. Bu nedenle, daha yüksek bir ZIndex ile daha sonra (ve üstü) diğer çıkartmalar

Geçerli değerlerin aralığı -MAX_INT ile MAX_INT, içinde (2,147,483,647 veya (2^31 - 1)) olabilir. Eğer gelecekte iki mevcut decal arasında bir çıkartma gerektiğinden emin değilseniz, iyi bir fikir olabilir 100

Ayrıca bakınız:

  • GuiObject.ZIndex , GUI elemanları için aynı davranışı sağlayan bir özellik

Yöntemler

Etkinlikler