Impara
Classe motore
ParticleEmitter

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.


Campioni di codice
Creare un Emittitore di Particelle da Zero
local emitter = Instance.new("ParticleEmitter")
-- Numero di particelle = Frequenza * Vita
emitter.Rate = 5 -- Particelle al secondo
emitter.Lifetime = NumberRange.new(1, 1) -- Quanto tempo le particelle dovrebbero vivere (min, max)
emitter.Enabled = true
-- Proprietà visive
emitter.Texture = "rbxassetid://1266170131" -- Un'immagine trasparente di un anello bianco
-- Per il Colore, costruire un ColorSequence usando ColorSequenceKeypoint
local colorKeypoints = {
-- API: ColorSequenceKeypoint.new(time, color)
ColorSequenceKeypoint.new(0, Color3.new(1, 1, 1)), -- A t=0, Bianco
ColorSequenceKeypoint.new(0.5, Color3.new(1, 0.5, 0)), -- A t=.5, Arancione
ColorSequenceKeypoint.new(1, Color3.new(1, 0, 0)), -- A t=1, Rosso
}
emitter.Color = ColorSequence.new(colorKeypoints)
local numberKeypoints = {
-- API: NumberSequenceKeypoint.new(time, size, envelop)
NumberSequenceKeypoint.new(0, 1), -- A t=0, completamente trasparente
NumberSequenceKeypoint.new(0.1, 0), -- A t=.1, completamente opaco
NumberSequenceKeypoint.new(0.5, 0.25), -- A t=.5, principalmente opaco
NumberSequenceKeypoint.new(1, 1), -- A t=1, completamente trasparente
}
emitter.Transparency = NumberSequence.new(numberKeypoints)
emitter.LightEmission = 1 -- Quando le particelle si sovrappongono, moltiplica il loro colore per essere più luminoso
emitter.LightInfluence = 0 -- Non essere influenzato dall'illuminazione del mondo
-- Proprietà di velocità
emitter.EmissionDirection = Enum.NormalId.Front -- Emissione in avanti
emitter.Speed = NumberRange.new(0, 0) -- Velocità zero
emitter.Drag = 0 -- Non applicare resistenza al movimento delle particelle
emitter.VelocitySpread = NumberRange.new(0, 0)
emitter.VelocityInheritance = 0 -- Non ereditare la velocità del genitore
emitter.Acceleration = Vector3.new(0, 0, 0)
emitter.LockedToPart = false -- Non bloccare le particelle al genitore
emitter.SpreadAngle = Vector2.new(0, 0) -- Nessun angolo di dispersione su nessuno degli assi
-- Proprietà di simulazione
local numberKeypoints2 = {
NumberSequenceKeypoint.new(0, 0), -- A t=0, dimensione di 0
NumberSequenceKeypoint.new(1, 10), -- A t=1, dimensione di 10
}
emitter.Size = NumberSequence.new(numberKeypoints2)
emitter.ZOffset = -1 -- Renderizza leggermente dietro la posizione effettiva
emitter.Rotation = NumberRange.new(0, 360) -- Inizia con rotazione casuale
emitter.RotSpeed = NumberRange.new(0) -- Non ruotare durante la simulazione
-- Crea un attacco in modo che le particelle emettano dallo stesso punto esatto (anelli concentrici)
local attachment = Instance.new("Attachment")
attachment.Position = Vector3.new(0, 5, 0) -- Sposta l'attacco verso l'alto un po'
attachment.Parent = script.Parent
emitter.Parent = attachment

Riferimento API
Proprietà
Acceleration
Lettura Parallela
Capacità: Basic
ParticleEmitter.Acceleration:Vector3

Brightness
Lettura Parallela
Capacità: Basic
ParticleEmitter.Brightness:number

Color
Lettura Parallela
Capacità: Basic
ParticleEmitter.Color:ColorSequence

Drag
Lettura Parallela
Capacità: Basic
ParticleEmitter.Drag:number

EmissionDirection
Lettura Parallela
Capacità: Basic
ParticleEmitter.EmissionDirection:Enum.NormalId

Enabled
Lettura Parallela
Capacità: Basic
ParticleEmitter.Enabled:boolean

FlipbookBlendFrames
Lettura Parallela
Capacità: Basic
ParticleEmitter.FlipbookBlendFrames:boolean

FlipbookFramerate
Lettura Parallela
Capacità: Basic
ParticleEmitter.FlipbookFramerate:NumberRange

FlipbookIncompatible
Lettura Parallela
Capacità: Basic
ParticleEmitter.FlipbookIncompatible:string

FlipbookLayout
Lettura Parallela
Capacità: Basic
ParticleEmitter.FlipbookLayout:Enum.ParticleFlipbookLayout

FlipbookMode
Lettura Parallela
Capacità: Basic
ParticleEmitter.FlipbookMode:Enum.ParticleFlipbookMode

FlipbookSizeX
Lettura Parallela
Capacità: Basic
ParticleEmitter.FlipbookSizeX:number

FlipbookSizeY
Lettura Parallela
Capacità: Basic
ParticleEmitter.FlipbookSizeY:number

FlipbookStartRandom
Lettura Parallela
Capacità: Basic
ParticleEmitter.FlipbookStartRandom:boolean

Lifetime
Lettura Parallela
Capacità: Basic
ParticleEmitter.Lifetime:NumberRange

LightEmission
Lettura Parallela
Capacità: Basic
ParticleEmitter.LightEmission:number

LightInfluence
Lettura Parallela
Capacità: Basic
ParticleEmitter.LightInfluence:number

LocalTransparencyModifier
Nascosto
Non Replicato
Lettura Parallela
Capacità: Basic
ParticleEmitter.LocalTransparencyModifier:number

LockedToPart
Lettura Parallela
Capacità: Basic
ParticleEmitter.LockedToPart:boolean

Orientation
Lettura Parallela
Capacità: Basic
ParticleEmitter.Orientation:Enum.ParticleOrientation

Rate
Lettura Parallela
Capacità: Basic
ParticleEmitter.Rate:number

Rotation
Lettura Parallela
Capacità: Basic
ParticleEmitter.Rotation:NumberRange

RotSpeed
Lettura Parallela
Capacità: Basic
ParticleEmitter.RotSpeed:NumberRange

Shape
Lettura Parallela
Capacità: Basic
ParticleEmitter.Shape:Enum.ParticleEmitterShape

ShapeInOut
Lettura Parallela
Capacità: Basic
ParticleEmitter.ShapeInOut:Enum.ParticleEmitterShapeInOut

ShapePartial
Lettura Parallela
Capacità: Basic
ParticleEmitter.ShapePartial:number

ShapeStyle
Lettura Parallela
Capacità: Basic
ParticleEmitter.ShapeStyle:Enum.ParticleEmitterShapeStyle

Size
Lettura Parallela
Capacità: Basic
ParticleEmitter.Size:NumberSequence

Speed
Lettura Parallela
Capacità: Basic
ParticleEmitter.Speed:NumberRange

SpreadAngle
Lettura Parallela
Capacità: Basic
ParticleEmitter.SpreadAngle:Vector2

Squash
Lettura Parallela
Capacità: Basic
ParticleEmitter.Squash:NumberSequence

Texture
Lettura Parallela
Capacità: Basic
ParticleEmitter.Texture:ContentId

TimeScale
Lettura Parallela
Capacità: Basic
ParticleEmitter.TimeScale:number

Transparency
Lettura Parallela
Capacità: Basic
ParticleEmitter.Transparency:NumberSequence

VelocityInheritance
Lettura Parallela
Capacità: Basic
ParticleEmitter.VelocityInheritance:number

VelocitySpread
Obsoleto

WindAffectsDrag
Lettura Parallela
Capacità: Basic
ParticleEmitter.WindAffectsDrag:boolean

ZOffset
Lettura Parallela
Capacità: Basic
ParticleEmitter.ZOffset:number

Metodi
Clear
Capacità: Basic
ParticleEmitter:Clear():()
Restituzioni
()
Campioni di codice
Emissione di particelle
local emitter = script.Parent
while true do
emitter:Clear()
emitter:Emit(10)
task.wait(2)
end

Emit
Capacità: Basic
ParticleEmitter:Emit(particleCount:number):()
Parametri
particleCount:number
Valore predefinito: 16
Restituzioni
()
Campioni di codice
Emetti Particelle su Distanza
local RunService = game:GetService("RunService")
local emitter = script.Parent
local part = emitter.Parent
local PARTICLES_PER_STUD = 3
local lastPosition = part.Position
local distance = 0
local function onStep()
local displacement = part.Position - lastPosition
distance = distance + displacement.magnitude
local n = math.floor(distance * PARTICLES_PER_STUD)
emitter:Emit(n)
distance = distance - n / PARTICLES_PER_STUD
lastPosition = part.Position
end
RunService.Stepped:Connect(onStep)
emitter.Enabled = false
Emissione di particelle
local emitter = script.Parent
while true do
emitter:Clear()
emitter:Emit(10)
task.wait(2)
end

© 2026 Roblox Corporation. Roblox, il logo Roblox e Powering Imagination sono tra i nostri marchi registrati e non registrati negli Stati Uniti. e altri paesi.