Trail

แสดงที่เลิกใช้งานแล้ว

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

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

ดู เส้นทาง สำหรับข้อมูลเพิ่มเติม

ตัวอย่างโค้ด

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

สรุป

คุณสมบัติ

  • อ่านพร้อมๆ กัน

    ร่วมกับ Attachment1 กำหนดว่าเส้นทางจะเริ่มวาดส่วนต่างๆ ที่ไหน

  • อ่านพร้อมๆ กัน

    ร่วมกับ Attachment0 กำหนดว่าเส้นทางจะเริ่มวาดส่วนต่างๆ ที่ไหน

  • อ่านพร้อมๆ กัน

    ขยายแสงที่ปล่อยจากเส้นทางเมื่อ LightInfluence น้อยกว่า 1

  • อ่านพร้อมๆ กัน

    สีของเส้นทางตลอดชีวิตของมัน

  • อ่านพร้อมๆ กัน

    กำหนดว่าเส้นทางจะถูกวาดหรือไม่

  • อ่านพร้อมๆ กัน

    กำหนดว่าเส้นทางจะเผชิญกับกล้องเสมอไม่ว่าจะเป็นทิศทางใดก็ตาม

  • อ่านพร้อมๆ กัน

    กำหนดระยะเวลาของแต่ละส่วนในเส้นทางที่จะใช้เวลานานแค่ไหนในวินาที

  • อ่านพร้อมๆ กัน

    กำหนดว่าสีของเส้นทางจะผสมกับสีที่อยู่เบื้องหลังมันในระดับใด

  • อ่านพร้อมๆ กัน

    กำหนดระดับที่เส้นทางได้รับอิทธิพลจากแสงของสภาพแวดล้อม

  • ซ่อนอยู่
    ไม่ซ้ำ
    อ่านพร้อมๆ กัน
  • อ่านพร้อมๆ กัน

    ตั้งค่าความยาวสูงสุดของเส้นทาง

  • อ่านพร้อมๆ กัน

    ตั้งค่าระยะขั้นต่ำของเส้นทาง

  • Texture:ContentId
    อ่านพร้อมๆ กัน

    ID เนื้อหาของเทกเจอร์ที่จะแสดงบนเส้นทาง

  • อ่านพร้อมๆ กัน

    ตั้งค่าความยาวของเทกเจอร์ของเส้นทางขึ้นอยู่กับ TextureMode

  • อ่านพร้อมๆ กัน

    กำหนดวิธีที่เครื่องชั่ง Texture ทำซ้ำและเคลื่อนที่ไปพร้อมกับสิ่งที่แนบมาของเส้นทาง

  • อ่านพร้อมๆ กัน

    ตั้งค่าความโปร่งใสของส่วนของเส้นทางผ่าน Lifetime ของมัน

  • อ่านพร้อมๆ กัน

    ขยายความกว้างของเส้นทางในระหว่างช่วงชีวิตของมัน

คุณสมบัติ

Attachment0

อ่านพร้อมๆ กัน

A Trail เริ่มวาดส่วนของมันในตำแหน่งของ แนบเนียน 0 และ Attachment1เมื่อเส้นทางมีค่า Enabled จะบันทึกตำแหน่งของสิ่งที่แนบมาในแต่ละเฟรมและเชื่อมตำแหน่งเหล่านั้นกับตำแหน่งของสิ่งที่แนบมาในเฟรมก่อนหน้า สร้างรูปหลายเหลี่ยมที่จะถูกเติมโดย Color และ Texture ของเส้นทาง

การเปลี่ยนสิ่งที่แนบมาของเส้นทางในขณะที่เส้นทางวาดอยู่จะลบส่วนทั้งหมดที่เส้นทางได้วาดไปแล้ว

Attachment1

อ่านพร้อมๆ กัน

A Trail เริ่มวาดส่วนของมันที่ตำแหน่งของ Attachment0 และ แนบเนียน 1 ของมันเมื่อเส้นทางมีค่า Enabled จะบันทึกตำแหน่งของสิ่งที่แนบมาในแต่ละเฟรมและเชื่อมตำแหน่งเหล่านั้นกับตำแหน่งของสิ่งที่แนบมาในเฟรมก่อนหน้า สร้างรูปหลายเหลี่ยมที่จะถูกเติมโดย Color และ Texture ของเส้นทาง

การเปลี่ยนสิ่งที่แนบมาของเส้นทางในขณะที่เส้นทางวาดอยู่จะลบส่วนทั้งหมดที่เส้นทางได้วาดไปแล้ว

Brightness

อ่านพร้อมๆ กัน

ขยายแสงที่ปล่อยจากเส้นทางเมื่อ LightInfluence น้อยกว่า 1คุณสมบัตินี้คือ 1 โดยค่าเริ่มต้นและสามารถตั้งค่าเป็นหมายเลขใดก็ได้ภายในช่วง 0 ถึง 10000การเพิ่มมูลค่าของ LightInfluence ลดผลกระทบของมูลค่าของคุณสมบัตินี้

อ่านพร้อมๆ กัน

กำหนดสีของเส้นทางตลอดชีวิต หากตั้งค่า Texture สีนี้จะเปลี่ยนสีเทกเจอร์

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

ตัวอย่างโค้ด

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

อ่านพร้อมๆ กัน

คุณสมบัตินี้กำหนดว่าเส้นทางจะถูกวาดหรือไม่

หากตั้งค่าเป็น false ในขณะที่เส้นทางวาดอยู่ จะไม่มีการวาดเซกเมนต์ใหม่ แต่เซกเมนต์ที่มีอยู่จะถูกล้างออกตามธรรมชาติเมื่อถึงจุดสิ้นสุดของพวกเขา Lifetimeเพื่อล้างส่วนที่มีอยู่อย่างบังคับโดยใช้วิธี Clear() ในเวลาเดียวกัน

FaceCamera

อ่านพร้อมๆ กัน

A Trail เป็นการฉายภาพ 2D ที่มีอยู่ในพื้นที่ 3D ซึ่งหมายความว่ามันอาจไม่สามารถมองเห็นได้จากทุกมุมคุณสมบัติ FaceCamera เมื่อตั้งค่าเป็น true จะมั่นใจว่าเส้นทางจะเผชิญหน้ากับ CurrentCamera เสมอ ไม่ว่าจะเป็นทิศทางใด

การเปลี่ยนแปลงคุณสมบัตินี้ทันทีมีผลต่อส่วนเส้นทางทั้งหมดที่มีอยู่และอนาคต

Lifetime

อ่านพร้อมๆ กัน

คุณสมบัติ ตลอดชีวิต กำหนดระยะเวลาที่แต่ละส่วนในเส้นทางจะอยู่ได้นานเท่าใดในวินาทีก่อนที่จะหายไปค่าเริ่มต้นคือ 2 วินาที แต่สามารถตั้งค่าได้ทุกที่ระหว่าง 0.01 และ 20

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

หากระยะเวลาชีวิตของเส้นทางเปลี่ยนแปลง ส่วนที่มีอยู่จะทำงานทันทีเหมือนว่าพวกเขามีอายุการใช้งานใหม่เสมอ ซึ่งหมายความว่าหากพวกเขามีอยู่นานกว่าอายุการใช้งานใหม่ พวกเขาจะถูกลบออกทันที

LightEmission

อ่านพร้อมๆ กัน

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

คุณสมบัตินี้ไม่ควรสับสนกับ LightInfluence ซึ่งกำหนดวิธีที่เส้นทางได้รับผลกระทบจากแสงสิ่งแวดล้อม

การเปลี่ยนค่าคุณสมบัตินี้ทันทีมีผลต่อทุกส่วนของเส้นทางที่มีอยู่และอนาคตทั้งหมด

คุณสมบัตินี้ไม่ทําให้เส้นทางสว่างขึ้นในสภาพแวดล้อม ไม่

LightInfluence

อ่านพร้อมๆ กัน

กำหนดระดับที่เส้นทางได้รับอิทธิพลจากแสงของสภาพแวดล้อมที่อยู่ระหว่าง 0 และ 1เมื่อ 0 เส้นทางจะไม่ได้รับผลกระทบจากแสงของสภาพแวดล้อมเมื่อ 1 จะได้รับผลกระทบเต็มรูปแบบจากแสงเช่นเดียวกับที่ BasePart จะเป็น

การเปลี่ยนค่าคุณสมบัตินี้ทันทีมีผลต่อทุกส่วนของเส้นทางที่มีอยู่และอนาคตทั้งหมด

ดูเพิ่มเติม LightEmission ซึ่งระบุถึงระดับที่สีของเส้นทางจะผสมกับสีด้านหลังมัน

LocalTransparencyModifier

ซ่อนอยู่
ไม่ซ้ำ
อ่านพร้อมๆ กัน

MaxLength

อ่านพร้อมๆ กัน

คุณสมบัตินี้กำหนดความยาวสูงสุดของเส้นทางในสตัด เส้นค่าเริ่มต้นของมันคือ 0 ซึ่งหมายความว่าเส้นทางจะไม่มีความยาวสูงสุดและส่วนเส้นทางจะหมดอายุในระยะเวลา Lifetime

คุณสมบัตินี้สามารถใช้ร่วมกับคุณสมบัติ MinLength ซึ่งกำหนดความยาวขั้นต่ำที่เส้นต้องมีก่อนที่จะวาด

MinLength

อ่านพร้อมๆ กัน

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

โปรดทราบว่าการเปลี่ยนค่าคุณสมบัตินี้จะส่งผลเฉพาะต่อ ส่วนใหม่ ที่วาด; ส่วนเก่าใดๆ ที่วาดไปแล้วจะรักษาความยาวปัจจุบันไว้

คุณสมบัตินี้สามารถใช้ร่วมกับคุณสมบัติ MaxLength ซึ่งกำหนดระยะเส้นทางสูงสุดก่อนที่จะลบส่วนที่เก่าที่สุด

Texture

ContentId
อ่านพร้อมๆ กัน

ID เนื้อหาของเทกเจอร์ที่จะแสดงบนเส้นทางหากคุณสมบัตินี้ไม่ได้ถูกกำหนด เส้นทางจะแสดงเป็นเครื่องบินขนาดเดียว; สิ่งนี้เกิดขึ้นเมื่อเทกเจอร์ถูกตั้งค่าเป็น ID เนื้อหาที่ไม่ถูกต้องหรือภาพที่เกี่ยวข้องกับเทกเจอร์ยังไม่โหลด

ลักษณะของเทกเจอร์สามารถปรับแต่งได้เพิ่มเติมโดยคุณสมบัติเส้นทางอื่น ๆ รวมถึง Color และ Transparency

การปรับขนาดของเทกเจอร์จะถูกกำหนดโดยระยะห่างระหว่าง Attachment0 และ Attachment1 รวมถึงคุณสมบัติ TextureMode , TextureLength และ WidthScale

ตัวอย่างโค้ด

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

อ่านพร้อมๆ กัน

ตั้งค่าความยาวของเทกเจอร์ของเส้นทางขึ้นอยู่กับ TextureMode การเปลี่ยนคุณสมบัตินี้จะส่งผลกระทบต่อเซกเมนต์เส้นทางทั้งหมดที่มีอยู่และอนาคตทันที

TextureMode

อ่านพร้อมๆ กัน

คุณสมบัตินี้ร่วมกับ TextureLength กำหนดวิธีที่เส้นทาง Texture จะเพิ่มขึ้น ซ้ำ และเคลื่อนที่ไปพร้อมกับสิ่งที่แนบมากับเส้นทางการเปลี่ยนแปลงคุณสมบัตินี้ทันทีมีผลต่อส่วนเส้นทางทั้งหมดที่มีอยู่และอนาคต

เครื่องชั่งและการทำซ้ำ

เมื่อ โหมดเทกเจอร์ ถูกตั้งค่าเป็น Enum.TextureMode.Wrap หรือ Enum.TextureMode.Static คุณสมบัติ TextureLength จะตั้งค่าความยาวของเทกเจอร์ตามที่มันทำซ้ำไปตามความยาวของเส้นทาง

TextureMode diagram with Wrap mode

เมื่อ โหมดเทกเจอร์ ถูกตั้งค่าเป็น Enum.TextureMode.Stretch เทกเจอร์จะทำซ้ำ TextureLength ครั้งในระยะทางทั้งหมดของเส้นทาง

TextureMode diagram with Stretch mode

การเคลื่อนไหว

คุณสมบัติ โหมดเทกเจอร์ ยังมีผลต่อ การเคลื่อนไหว ของเทกเจอร์ของเส้นทางดังต่อไปนี้:

  • หากตั้งค่าเป็น Enum.TextureMode.Stretch เทกเจอร์จะยืดออกตามระยะเวลาของเส้นทางและหดเข้าไปหากการแนบประกอบของเส้นทางหยุดเคลื่อนที่

  • หากตั้งค่าเป็น Enum.TextureMode.Wrap เทกเจอร์จะถูกจัดเรียงตามความยาวของเส้นทาง แต่เทกเจอร์จะยังคงคงที่เมื่อเทียบกับสิ่งที่แนบมา

  • หากตั้งค่าเป็น Enum.TextureMode.Static เทกเจอร์จะถูกกวาดออกเมื่อการแนบไฟล์เคลื่อนที่ และพวกเขาจะยังคงอยู่จนกว่าจะถึงอายุการใช้งานการตั้งค่านี้เหมาะสำหรับเทกเจอร์เส้นทางที่ควรปรากฏเป็น "ประทับ" เมื่อแสดงผล เช่น รอยเท้าสุนัขหรือเส้นทางยาง

Transparency

อ่านพร้อมๆ กัน

ตั้งค่าความโปร่งใสของส่วนของเส้นทางผ่าน Lifetime ของมันค่านี้คือ NumberSequence ซึ่งหมายความว่ามันสามารถเป็นค่าคงที่หรือสามารถเปลี่ยนแปลงได้ตลอดอายุของส่วนสนามของเส้นทาง

WidthScale

อ่านพร้อมๆ กัน

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

วิธีการ

Clear

()

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

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


ส่งค่ากลับ

()

อีเวนต์