Trail

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.

İz nesnesi, iki bağlantı arasında bir iz efekti oluşturmak için kullanılır.Eklentiler uzayda hareket ettiğinde, tanımlanan plana bir doku çizilir.Bu genellikle mermilerin, ayak izlerinin, lastik izlerinin ve benzeri hareketlerin görselleştirdiği efektleri oluşturmak için kullanılır.

Daha fazla bilgi için İzler bakın.

Kod Örnekleri

This example demos the functionality of Trails by creating a BasePart to be the parent of the trail. Two Attachments are then parented to the part. The positions of these two attachments (more importantly the distance between them) determines where the trail is drawn as the part moves.

For these attachments to create a trail as described, a new Trail is parented to the part and its Attachment0 and Attachment1 are parented to attachment0 and attachment1 respectively. Finally, TweenService is used to move the part back and forth, showing how the trail is drawn as the part (and its attachments) move.

Creating a Part with a Basic Trail

local TweenService = game:GetService("TweenService")
-- Create a parent part
local part = Instance.new("Part")
part.Material = Enum.Material.SmoothPlastic
part.Size = Vector3.new(4, 1, 2)
part.Position = Vector3.new(0, 5, 0)
part.Anchored = true
part.Parent = workspace
-- Create attachments on part
local attachment0 = Instance.new("Attachment")
attachment0.Name = "Attachment0"
attachment0.Position = Vector3.new(-2, 0, 0)
attachment0.Parent = part
local attachment1 = Instance.new("Attachment")
attachment1.Name = "Attachment1"
attachment1.Position = Vector3.new(2, 0, 0)
attachment1.Parent = part
-- Create a new trail
local trail = Instance.new("Trail")
trail.Attachment0 = attachment0
trail.Attachment1 = attachment1
trail.Parent = part
-- Tween part to display trail
local dir = 15
while true do
dir *= -1
local goal = { Position = part.Position + Vector3.new(0, 0, dir) }
local tweenInfo = TweenInfo.new(3)
local tween = TweenService:Create(part, tweenInfo, goal)
tween:Play()
task.wait(4)
end

Özet

Özellikler

Özellikler

Attachment0

Paralel oku

Bir Trail segmentlerini çizmeye başlar Bağlantı0 ve Attachment1 konumlarında.İz Enabled olduğunda, her karede eklerinin konumlarını kaydeder ve bu konumları önceki karedeki eklerin konumlarına bağlar, böylece izin Color ve Texture tarafından doldurulan bir poligon oluşturur.

Bir iz çizilirken izin eklentilerini değiştirmek, izin zaten çizdiği tüm segmentleri kaldıracaktır.

Attachment1

Paralel oku

Bir Trail çizgilerini çizmeye başlar Attachment0 ve Eklenti1 konumlarında.İz Enabled olduğunda, her karede eklerinin konumlarını kaydeder ve bu konumları önceki karedeki eklerin konumlarına bağlar, böylece izin Color ve Texture tarafından doldurulan bir poligon oluşturur.

Bir iz çizilirken izin eklentilerini değiştirmek, izin zaten çizdiği tüm segmentleri kaldıracaktır.

Brightness

Paralel oku

LightInfluence 1'den az olduğunda yoldan yayılan ışığı ölçeklendirir.Bu özellik varsayılan olarak 1'dir ve 0 ile 10000 arasındaki herhangi bir sayıya ayarlanabilir.LightInfluence değerini artırmak, bu özelliğin değerinin etkisini azaltır.

Paralel oku

Hayatı boyunca izin rengini belirler. Eğer Texture ayarlandıysa, bu renk dokuyu renklendirecektir.

Bu özellik bir ColorSequence , renklerin iz uzunluğu boyunca değiştirilebilmesine izin vererek renklerin değiştirilebilmesini sağlar.Yol segmentlerinin bazıları çizildikten sonra renk değişirse, tüm eski segmentler yeni renklere uyacak şekilde güncellenir.

Kod Örnekleri

This example creates a Trail with a gradient color, meaning that the color at one end of the trail is different than the color at the opposite end, and both colors blend together as they get closer to the middle of the trail.

Creating a Trail with a Color Gradient

local TweenService = game:GetService("TweenService")
-- Create a parent part
local part = Instance.new("Part")
part.Material = Enum.Material.SmoothPlastic
part.Size = Vector3.new(4, 1, 2)
part.Position = Vector3.new(0, 5, 0)
part.Anchored = true
part.Parent = workspace
-- Create attachments on part
local attachment0 = Instance.new("Attachment")
attachment0.Name = "Attachment0"
attachment0.Position = Vector3.new(-2, 0, 0)
attachment0.Parent = part
local attachment1 = Instance.new("Attachment")
attachment1.Name = "Attachment1"
attachment1.Position = Vector3.new(2, 0, 0)
attachment1.Parent = part
-- Create a new trail with color gradient
local trail = Instance.new("Trail")
trail.Attachment0 = attachment0
trail.Attachment1 = attachment1
local color1 = Color3.fromRGB(255, 0, 0)
local color2 = Color3.fromRGB(0, 0, 255)
trail.Color = ColorSequence.new(color1, color2)
trail.Parent = part
-- Tween part to display trail
local dir = 15
while true do
dir *= -1
local goal = { Position = part.Position + Vector3.new(0, 0, dir) }
local tweenInfo = TweenInfo.new(3)
local tween = TweenService:Create(part, tweenInfo, goal)
tween:Play()
task.wait(4)
end

Enabled

Paralel oku

Bu özellik, izinin çizilecek olup olmadığını belirler.

Bir iz çizilirken false olarak ayarlanırsa, yeni bir bölüm çizilmeyecek, ancak mevcut herhangi bir bölüm doğal olarak sonuna ulaştığında temizlenecek Lifetime .Mevcut segmentleri zorla temizlemek için, aynı anda Clear() yöntemini çağırın.

FaceCamera

Paralel oku

Bir Trail 3B uzayda mevcut 2B bir projeksiyondur, yani her açıdan görülemeyebilir. Yüz Kamerası özelliği, true olarak ayarlanırken, izinin daima CurrentCamera yönünde olduğundan emin olur, yönü ne olursa olsun.

Bu özelliği hemen değiştirmek, mevcut ve gelecekteki tüm iz segmentlerini etkiler.

Lifetime

Paralel oku

Ömür boyu özelliği, bir izdeki her bir segmentin kaç saniye süreceğini belirler, kaybolmadan önce.Varsayılan 2 saniyedir, ancak 0.01 ile 20 arasında herhangi bir yere ayarlanabilir.

Bir izinin ömrü, her bir segmentin nasıl çizileceğini belirlemek için bu etkinin Color ve Transparency özellikleri tarafından da kullanılır.Bu özelliklerin her ikisi de sıralardır, yani segmentin ömründe belirli anahtarlarda değerlerini tanımlarlar ve ardından segment yaşlandıkça değerler arasında yer değiştirirler.

Bir izinin ömrü değişirse, mevcut segmentler hemen yeni ömür sahibiymiş gibi davranacaktır, yani yeni ömürden daha uzun süredir varlarsa, hemen kaldırılacaklar demektir.

LightEmission

Paralel oku

Yolun renklerinin arkasındaki renklerle ne ölçüde birleştirileceğini belirler.0 ile 1 arasında ayarlanmalıdır.0 değeri normal karışım modlarını ve 1 değeri ekleyici karışımı kullanır.

Bu özellik, yolun çevresel ışıktan nasıl etkilendiğini belirleyen LightInfluence ile karıştırılmamalıdır.

Bu özelliği hemen değiştirmek, izin tüm mevcut ve gelecekteki segmentlerini etkiler.

Bu özellik yolun çevreyi aydınlatmasına neden olmaz.

LightInfluence

Paralel oku

İzin, çevrenin aydınlatması tarafından etkilendiği dereceyi belirler, 0 ile 1 arasında sıkıştırılır.0 olduğunda, iz, çevrenin aydınlatmasından etkilenmeyecektir.1 olduğunda, aydınlatma tarafından tamamen etkilenecek ve bir BasePart gibi olacaktır.

Bu özelliği hemen değiştirmek, izin tüm mevcut ve gelecekteki segmentlerini etkiler.

Ayrıca bakın LightEmission çizginin renklerinin arkasındaki renklerle ne ölçüde karıştırılacağını belirleyen.

LocalTransparencyModifier

Gizli
Çoğaltılmamış
Paralel oku

MaxLength

Paralel oku

Bu özellik, izin maksimum uzunluğunu, mil başına belirler.Değeri 0 olarak geçer, yani izin maksimum uzunluğa sahip olmayacak ve iz parçaları süresi dolacak Lifetime .

Bu özellik, çizginin çizilmeden önce minimum uzunluğunu belirleyen MinLength özelliği ile birlikte kullanılabilir.

MinLength

Paralel oku

Bu özellik, izin minimum uzunluğunu, milimetre olarak belirler.Yolun bağlantılarından hiçbiri bu değeri en azından hareket ettirmediyse, yeni segmentler oluşturulmayacak ve mevcut segmentin son noktaları bağlantıların mevcut konumuna taşınacak.

Bu özelliği değiştirmenin sadece çizilen yeni segmentleri etkileyeceğini unutmayın; zaten çizilmiş olan herhangi bir eski segment mevcut uzunluğunu koruyacaktır.

Bu özellik, en eski segmentler silinmeden önce maksimum iz uzunluğunu belirleyen MaxLength özelliği ile birlikte kullanılabilir.

Texture

ContentId
Paralel oku

Yolda görüntülenecek dokunun içeriği ID'si.Bu özellik ayarlanmazsa, iz yüksek bir uçak olarak görüntülenir; bu ayrıca, dokunun tekstürüne ait içeriğin geçersiz bir ID'ye ayarlanması veya dokunun tekstürle ilişkili görüntünün henüz yüklenmemesi durumunda da gerçekleşir.

Doku görünümü, Color ve Transparency dahil diğer iz iz özellikleriyle daha da değiştirilebilir.

Doku ölçeklenmesi, Attachment0 ve Attachment1 arasındaki mesafe ile birlikte, ayrıca TextureMode , TextureLength ve WidthScale özelliklerine göre belirlenir.

Kod Örnekleri

This example adds a paw prints texture to a trail object. In order for the paw prints to remain "stamped" in place after rendering, TextureMode is set to Enum.TextureMode.Static.

Creating a Trail with a Paw Print Texture

local TweenService = game:GetService("TweenService")
-- Create a parent part
local part = Instance.new("Part")
part.Material = Enum.Material.SmoothPlastic
part.Size = Vector3.new(2, 1, 2)
part.Position = Vector3.new(0, 5, 0)
part.Anchored = true
part.Parent = workspace
-- Create attachments on part
local attachment0 = Instance.new("Attachment")
attachment0.Name = "Attachment0"
attachment0.Position = Vector3.new(-1, 0, 0)
attachment0.Parent = part
local attachment1 = Instance.new("Attachment")
attachment1.Name = "Attachment1"
attachment1.Position = Vector3.new(1, 0, 0)
attachment1.Parent = part
-- Create a new trail with color gradient
local trail = Instance.new("Trail")
trail.Attachment0 = attachment0
trail.Attachment1 = attachment1
trail.Texture = "rbxassetid://16178262222"
trail.TextureMode = Enum.TextureMode.Static
trail.TextureLength = 2
trail.Parent = part
-- Tween part to display trail
local dir = 15
while true do
dir *= -1
local goal = { Position = part.Position + Vector3.new(0, 0, dir) }
local tweenInfo = TweenInfo.new(3)
local tween = TweenService:Create(part, tweenInfo, goal)
tween:Play()
task.wait(4)
end

TextureLength

Paralel oku

Yolun dokusunun uzunluğunu TextureMode 'ye bağlı olarak ayarlar. Bu özelliği hemen değiştirmek, mevcut ve gelecekteki tüm iz parçalarını etkiler.

TextureMode

Paralel oku

Bu özellik, yanında TextureLength , bir izin izinin Texture ölçeğini, tekrarlanmasını ve izin ekleriyle birlikte hareket etmesini belirler.Bu özelliği hemen değiştirmek, mevcut ve gelecekteki tüm iz segmentlerini etkiler.

Ölçek ve Tekrarlama

Doku Modu veya Doku Modu ayarlandığında, özelliği doku uzunluğunu yol boyunca tekrarlarken ayarlar.

TextureMode diagram with Wrap mode

DokuModu ile ayarlanırsa, doku genel uzunluğun boyunca 8 kez tekrarlanacaktır.

TextureMode diagram with Stretch mode

Hareket

Doku Modu özelliği ayrıca izin dokusunun hareketi üzerinde şu şekilde etki eder:

  • Enum.TextureMode.Stretch olarak ayarlanırsa, dokunun ömrüne göre genişleyecek ve yolun ekleri hareket etmezse içeri küçülecektir.

  • Enum.TextureMode.Wrap olarak ayarlanırsa, dokunun yönü değiştikçe dokunun dokusu döşenir, ancak dokular bağlantılarına göre sabit kalır.

  • Enum.TextureMode.Static olarak ayarlanırsa, dokunma yerleri hareket ettiğinde dokunma yeri kaldırılacak ve ömürleri karşılandığına kadar kalacaklar.Bu ayar, pençe izleri veya tekerlek izleri gibi göründüğü yerde "basılmış" olması gereken iz tekstürleri için idealdir.

Transparency

Paralel oku

Yolun bölümlerinin şeffaflığını Lifetime.Bu değer bir NumberSequence , yani statik bir değer olabilir veya iz parçalarının ömrü boyunca değişebilir.

WidthScale

Paralel oku

Bu özellik, ömür boyunca iz genişliğini ölçeklendiren bir NumberSequence özelliğidir.Değerler 0 ile 1 arasında değişebilir ve yolun ekleri arasındaki mesafe üzerinde çarpan olarak hareket eder.Örneğin, yolun ekleri 2 santim ayrıysa ve bu özelliğin değeri 0.5 ise, yolun genişliği 1 santimetre olacak ve yol iki ek arasında orta olacaktır.

Yöntemler

Clear

()

Bu yöntem hemen tüm iz parçalarını temizler ve daha uzun ömürlü izleri temizlemek veya belirli bir aksiyonnedeniyle izin kaldırılması gereken durumlar için yararlıdır.

Bu yöntemi çağırmak sadece mevcut segmentleri etkiler.Mevcut iz segmentlerini temizlemek için ve geçici olarak yeni segmentlerin çizilmesini engelleyin, izin Enabled özelliklerini aynı anda false açın.


Dönüşler

()

Etkinlikler