PcoWSkbVqDnWTu_dm2ix
We use cookies on this site to enhance your user experience
Collapse Sidebar

ParticleEmitter

Show deprecated

ParticleEmitter

Show deprecated

A ParticleEmitter allows for the creation of particle systems. is a special effect object that emits customizable 2D billboard particles into the world. On Roblox, a particle is a 2D image rendered in the world so that it always always face the camera, much like a BillboardGui with a single ImageLabel in it.

A ParticleEmitter with default settings in a Part with default settings

ParticleEmitter must be parented to a BasePart (such as a Part) or an Attachment within such a part. Particles spawn randomly in the bounding box of its parent part (for attachments, this is a single point). Particles from a single emitter will render so long as this condition is met; setting a ParticleEmitter’s Instance/Parent to nil will remove all particles instantly, like how ParticleEmitter/Clear works. If an emitter is ParticleEmitter/Enabled and has a nonzero ParticleEmitter/Rate, it will emit particles on its own. Finer control on the number of particles can be accomplished using ParticleEmitter/Emit.

Roblox provides several pre-made particle effect objects - Fire, Smoke and Sparkles. They behave similarly to a ParticleEmitter, but they are not as customizable. They also lack certain particle-controlling methods: ParticleEmitter/Emit and ParticleEmitter/Clear. An Explosion also uses particles, but provides little-to-no control with regards to how the effect looks.

How to Insert a ParticleEmitter

In Studio, a ParticleEmitter can be inserted in several ways:

  • Using the “Effects” drop-down (Model tab)
  • From the Advanced Objects window (In the model tab, or CTRL+I)
  • The add menu within the Explorer window
  • Using the Command bar, run Instance.new("ParticleEmitter", workspace)
  • If you find you are inserting ParticleEmitters often, you can add a ParticleEmitter button to the Quick Access toolbar

Drop-down Efffects menu for inserting a ParticleEmitterAdvancedObjects window insertionExplorer window insertion

Properties

Vector3

Acceleration

Determines the global-axis acceleration of all alive particles, measured in studs per second squared

ColorSequence

Color

Determines the color of all particles emit over their individual lifetimes

float

Drag

Determines the rate at which particles will lose half their speed through exponential decay

NormalId

EmissionDirection

Determines the face towards which particles will be emit

bool

Enabled

Determines whether particles ought to be emit

NumberRange

Lifetime

Defines a random range of ages for newly emit particles

float

LightEmission

Determines how much particles’ colors are blended with the colors behind them

float

LightInfluence

Determines how much particles are influenced by the the environment light

bool

LockedToPart

Determines whether the particles rigidly move with the part they’re being emitted from.

float

Rate

Determines the number of particles emit per second

NumberRange

RotSpeed

Determines the range of angular speeds emitted particles, measured in degrees per second

NumberRange

Rotation

Determines the range of rotations in degrees for a newly emit particles

NumberSequence

Size

Determines the world size over individual particles’ lifetimes

NumberRange

Speed

Determines the random range of speeds a new particle will have when emit, measured in studs per second

Vector2

SpreadAngle

Determines the angles at which particles may be randomly emit, measured in degrees

Content

Texture

Determines the image rendered on particle billboards

NumberSequence

Transparency

Determines the transparency of particles over their individual lifetimes

float

VelocityInheritance

Determines how much of the parent’s velocity is inherited by particles when emitted

float

ZOffset

Determines the forward-backward render position of particles; used to control what particles render on top/bottom

Inherited from Instance: Show Hide

int

DataCost

[ReadOnly] [NotReplicated]

The cost of saving the instance using data persistence.

Instance

Parent

Determines the hierarchical parent of the Instance.

bool

RobloxLocked

If true, the Instance and its descendants cannot be indexed or edited by a Script or LocalScript and will throw an error if it is attempted.

string

ClassName

[ReadOnly] [NotReplicated]

A read-only string representing the class this Instance belongs to.

string

Name

A non-unique identifier of the Instance.

bool

Archivable

Determines if an Instance can be cloned using /Instance/Clone or saved to file.

Functions

void

Clear ( )

Clears all particles that have been emit

void

Emit ( int particleCount )

Emits a given number of particles

Inherited from Instance: Show Hide

Instance

FindFirstChild ( string name , bool recursive )

Returns the first child of the Instance found with the given name.

Array

GetDescendants ( )

[CustomLuaState]

Returns an array containing all of the descendants of the instance

Objects

GetChildren ( )

Returns an array containing all of the Instance's children.

void

Destroy ( )

Sets the Instance/Parent property to nil, locks the Instance/Parent property, disconnects all connections and calls Destroy on all children.

RBXScriptSignal

GetPropertyChangedSignal ( string property )

Get an event that fires when a given property of an object changes.

string

GetFullName ( )

Returns a string describing the Instance's ancestry.

Instance

FindFirstChildWhichIsA ( string className , bool recursive )

Returns the first child of the Instance for whom Instance/IsA returns true for the given className.

bool

IsAncestorOf ( Instance descendant )

Returns true if an Instance is an ancestor of the given descendant.

bool

IsDescendantOf ( Instance ancestor )

Returns true if an Instance is a descendant of the given ancestor.

Instance

FindFirstChildOfClass ( string className )

Returns the first child of the Instance whose Instance/ClassName|ClassName is equal to the given className.

Instance

FindFirstAncestorWhichIsA ( string className )

Returns the first ancestor of the Instance for whom Instance/IsA returns true for the given className.

Instance

FindFirstAncestorOfClass ( string className )

Returns the first ancestor of the Instance whose Instance/ClassName is equal to the given className.

Instance

FindFirstAncestor ( string name )

Returns the first ancestor of the Instance whose Instance/Name is equal to the given name.

bool

IsA ( string className )

Returns true if an Instance's class matches or inherits from a given class

Instance

WaitForChild ( string childName , double timeOut )

[CustomLuaState] [CanYield]

Returns the child of the Instance with the given name. If the child does not exist, it will yield the current thread until it does.

string

GetDebugId ( int scopeLength )

[NotBrowsable]

Returns a coded string of the Instances DebugId used internally by Roblox.

Instance

Clone ( )

Create a deep copy of a Roblox instance and descendants where Archivable = true.

void

ClearAllChildren ( )

This function destroys all of an Instance's children.

Events

Inherited from Instance: Show Hide

RBXScriptSignal

DescendantRemoving ( Instance descendant )

Fires immediately before a descendant of the Instance is removed.

RBXScriptSignal

AncestryChanged ( Instance child , Instance parent )

Fires when the Instance/Parent property of the object or one of its ancestors is changed.

RBXScriptSignal

ChildAdded ( Instance child )

Fires when an object is parented to this Instance.

RBXScriptSignal

ChildRemoved ( Instance child )

Fires when a child is removed from this Instance.

RBXScriptSignal

DescendantAdded ( Instance descendant )

Fires when a descendant is added to the Instance.

RBXScriptSignal

Changed ( string property )

Fired immediately after a property of an object changes.