Class ParticleSystemSettings

Generic settings used for controlling a ParticleSystem.

Hierarchy

  • FrameworkObject
    • ParticleSystemSettings

Constructors

Accessors

  • get customBounds(): Immutable<AABox>
  • Custom bounds to use when IsAutomaticBoundsEnabled is disabled. The bounds are in the simulation space of the particle system.

    Returns Immutable<AABox>

  • set customBounds(value): void
  • Parameters

    Returns void

  • get duration(): number
  • Determines the time period during which the system runs, in seconds. This effects evaluation of distributions with curves using particle system time for evaluation.

    Returns number

  • set duration(value): void
  • Parameters

    • value: number

    Returns void

  • get isAutomaticBoundsEnabled(): boolean
  • Determines should the particle system bounds be automatically calculated, or should the fixed value provided be used. Bounds are used primarily for culling purposes. Note that automatic bounds are not supported when GPU simulation is enabled.

    Returns boolean

  • set isAutomaticBoundsEnabled(value): void
  • Parameters

    • value: boolean

    Returns void

  • get isAutomaticSeedEnabled(): boolean
  • Determines should an automatic seed be used for the internal random number generator. This ensures the particle system yields different results each time it is ran.

    Returns boolean

  • set isAutomaticSeedEnabled(value): void
  • Parameters

    • value: boolean

    Returns void

  • get isGPUSimulationEnabled(): boolean
  • If true the particle system will be simulated on the GPU. This allows much higher particle counts at lower performance cost. GPU simulation ignores any provided evolvers and instead uses ParticleGPUSimulationSettings to customize the GPU simulation.

    Returns boolean

  • set isGPUSimulationEnabled(value): void
  • Parameters

    • value: boolean

    Returns void

  • get isLooping(): boolean
  • Determines should the particle system time wrap around once it reaches its duration.

    Returns boolean

  • set isLooping(value): void
  • Parameters

    • value: boolean

    Returns void

  • get isOrientationLockYEnabled(): boolean
  • Determines should the particles only be allowed to orient themselves around the Y axis, or freely. Ignored if using the Plane orientation mode.

    Returns boolean

  • set isOrientationLockYEnabled(value): void
  • Parameters

    • value: boolean

    Returns void

  • get manualSeed(): number
  • Determines the seed to use for the internal random number generator. Allows you to guarantee identical behaviour between different runs. Only relevant if automatic seed is disabled.

    Returns number

  • set manualSeed(value): void
  • Parameters

    • value: number

    Returns void

  • get material(): Material
  • Material that controls how objects are rendered. It is represented by a shader and parameters used to set up that shader. It provides a simple interface for manipulating the parameters.

    Returns Material

  • set material(value): void
  • Material that controls how objects are rendered. It is represented by a shader and parameters used to set up that shader. It provides a simple interface for manipulating the parameters.

    Parameters

    Returns void

  • get maximumParticles(): number
  • Determines the maximum number of particles that can ever be active in this system. This number is ignored if GPU simulation is enabled, and instead particle count is instead only limited by the size of the internal buffers (shared between all particle systems).

    Returns number

  • set maximumParticles(value): void
  • Parameters

    • value: number

    Returns void

  • get mesh(): Mesh
  • Primary class for holding geometry. Stores data in the form of vertex buffers and optionally an index buffer, which may be bound to the pipeline for drawing. May contain multiple sub-meshes.

    Returns Mesh

  • set mesh(value): void
  • Primary class for holding geometry. Stores data in the form of vertex buffers and optionally an index buffer, which may be bound to the pipeline for drawing. May contain multiple sub-meshes.

    Parameters

    Returns void

  • get meshHandle(): ResourceHandle<Mesh>
  • Primary class for holding geometry. Stores data in the form of vertex buffers and optionally an index buffer, which may be bound to the pipeline for drawing. May contain multiple sub-meshes.

    Returns ResourceHandle<Mesh>

  • set meshHandle(value): void
  • Parameters

    Returns void

  • get orientationPlaneNormal(): Immutable<Vector3>
  • Determines a normal of the plane to orient particles towards. Only used if particle orientation mode is set to ParticleOrientation::Plane.

    Returns Immutable<Vector3>

  • set orientationPlaneNormal(value): void
  • Parameters

    Returns void

  • get prerollTime(): number
  • Specifies a start time for the particle system once it becomes active. This will cause the particle system to be fully simulated at 30hz interval until the PrerollTime has been exhausted.

    Returns number

  • set prerollTime(value): void
  • Parameters

    • value: number

    Returns void

Methods

  • Marks the object as dirty.

    Parameters

    Returns void

  • Allows modifying this object multiple times in a row in a scope, without marking the object dirty immediately. Dirty flags are accumulated and the object is marked dirty at the end.

    Parameters

    • action: (() => void)

      The scope where the object is modified.

        • (): void
        • Returns void

    Returns void

Events

onDirty: Event<[dirtyFlags: EnumValue<ManagedSettingsDirtyFlag, number>], void>

Event that is triggered when a member changes.