Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


ParticleSystem.LightsModule

Script interface for LightsModule.
Read time 1 minuteLast updated 6 days ago

Definition

  • Type: Struct
  • Namespace: UnityEngine
  • Assembly: UnityEngine.ParticleSystemModule
public struct ParticleSystem.LightsModule

Remarks

This module allows you to attach real-time Lights to a percentage of your particles.
This module allows particles to cast light onto their environment easily. Lights can inherit properties from the particles they are attached to, such as color and size. This module supports Point and Spot Lights, including shadow casting and Light cookies.
Additional Resources: ParticleSystem, _lights

Examples

using UnityEngine;using System.Collections;[RequireComponent(typeof(ParticleSystem))]public class ExampleClass : MonoBehaviour{ public Light myLight; void Start() { ParticleSystem ps = GetComponent<ParticleSystem>(); var lights = ps.lights; lights.enabled = true; lights.ratio = 0.5f; lights.light = myLight; }}

Properties

Property

Description

alphaAffectsIntensityToggle whether the system multiplies the particle alpha by the light intensity when it computes the final light intensity.
enabledSpecifies whether the LightsModule is enabled or disabled.
intensityDefine a curve to apply custom intensity scaling to particle Lights.
intensityMultiplierIntensity multiplier.
lightSelect what Light Prefab you want to base your particle lights on.
maxLightsSet a limit on how many Lights this Module can create.
rangeDefine a curve to apply custom range scaling to particle Lights.
rangeMultiplierRange multiplier.
ratioChoose what proportion of particles receive a dynamic light.
sizeAffectsRangeToggle whether the system multiplies the particle size by the light range to determine the final light range.
useParticleColorToggle whether the particle lights multiply their color by the particle color.
useRandomDistributionRandomly assign Lights to new particles based on _ratio.