Edit

Share via


SCNParticleSystem Class

Definition

Emits small sprites whose behaviors are developer-specified.

[Foundation.Register("SCNParticleSystem", true)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.WatchOS, 3, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.MacOSX, 10, 10, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 8, 0, ObjCRuntime.PlatformArchitecture.All, null)]
public class SCNParticleSystem : Foundation.NSObject, Foundation.INSCopying, Foundation.INSSecureCoding, IDisposable, SceneKit.ISCNAnimatable
type SCNParticleSystem = class
    inherit NSObject
    interface INSCoding
    interface INativeObject
    interface IDisposable
    interface INSCopying
    interface INSSecureCoding
    interface ISCNAnimatable
Inheritance
SCNParticleSystem
Attributes
Implements

Constructors

SCNParticleSystem(IntPtr)

A constructor used when creating managed representations of unmanaged objects; Called by the runtime.

SCNParticleSystem(NSCoder)

A constructor that initializes the object from the data stored in the unarchiver object.

SCNParticleSystem(NSObjectFlag)

Constructor to call on derived classes to skip initialization and merely allocate the object.

Properties

Acceleration

Gets or sets an acceleration, analagous to gravity, that is applied to all particles in the scene.

AffectedByGravity

Gets or sets a value that controls whether particles in the system are affected by gravity.

AffectedByPhysicsFields

Gets or sets a value that controls whether particles in the system are affected by physics fields.

BirthDirection

Gets or sets a value that controls the initial direction in which newly-spawned particles move.

BirthLocation

Gets or sets a value that controls .

BirthRate

Gets or sets the average rate at which particles are created.

BirthRateVariation

Gets or sets the variation in the rate that particles are created.

BlackPassEnabled

Gets or sets a value that controls whether to increase contrast by rendering particles first in black, and then in their specified color.

BlendMode

Gets or sets a value that controls how particles are blended into the scene.

Class (Inherited from NSObject)
ClassHandle

The handle for this class.

ColliderNodes

Gets or sets the list of nodes with which particles can collide.

DampingFactor

Gets or sets a value that controls how viscous drag is simulated. 0.0 indicate no viscous drag.

DebugDescription

A developer-meaningful description of this object.

(Inherited from NSObject)
Description

Description of the object, the Objective-C version of ToString.

(Inherited from NSObject)
EmissionDuration

Gets or sets the time over which new particles are created at the current birth rate.

EmissionDurationVariation

Gets or sets the variation in emission duration.

EmitterShape

Gets or sets the region in which new particles are created. (Particles are created at a point if this property is null.)

EmittingDirection

Gets or sets the direction in which newly emitted particles travel.

FresnelExponent

Gets or sets the exponent that controls how reflectivity increases toward the visual perimeter of spherical particles.

Handle

Handle (pointer) to the unmanaged object representation.

(Inherited from NSObject)
IdleDuration

Gets or sets the average duration for which the system emits no particles.

IdleDurationVariation

Gets or sets the variation in the duration for which the system emits no particles.

ImageSequenceAnimationMode

Gets or sets a value that controls whether the animation plays once, repeats, or plays the animation forwards and then backwards.

ImageSequenceColumnCount

Gets or sets the number of columns to use when treating the particle image as a grid of animation images.

ImageSequenceFrameRate

Gets or sets the average animation speed, in frames per second.

ImageSequenceFrameRateVariation

Gets or sets the variation in animation speed, in frames per second.

ImageSequenceInitialFrame

Gets or sets the average index of the first image frame to display in the animation.

ImageSequenceInitialFrameVariation

Gets or sets the variation in the index of the first image frame to display in the animation.

ImageSequenceRowCount

Gets or sets the number of rows to use when treating the particle image as a grid of animation images.

IsDirectBinding (Inherited from NSObject)
IsProxy (Inherited from NSObject)
LightingEnabled

Gets or sets a value that controls whether or not lighting is applied to the scene when rendering.

Local

Gets or sets a value that controls whether the particle system uses the parent node's coordinate system frame of reference.

Loops

Gets or sets a value that controls whether the active and idle periods are repeated.

OrientationDirection
OrientationMode

Gets or sets a value that controls particles' rotation about their own axes.

ParticleAngle

Gets or sets the average angle of newly created particles.

ParticleAngleVariation

Gets or sets the variation in the angle of newly created particles.

ParticleAngularVelocity

Gets or sets the average angular velocity of newly created particles.

ParticleAngularVelocityVariation

Gets or sets the variation in the angular velocity of newly created particles.

ParticleBounce

Gets or sets the average amount that particles bounce after a collision.

ParticleBounceVariation

Gets or sets the variation in the amount that particles bounce after a collision.

ParticleCharge

Gets or sets the average charge of particles.

ParticleChargeVariation

Gets or sets the variation in the charge of particles.

ParticleColor

Gets or sets the average color of newly created particles.

ParticleColorVariation

Gets or sets the variation in the color of newly created particles.

ParticleDiesOnCollision

Gets or sets a value that controls whether particles cease to exist after a collision.

ParticleFriction

Gets or sets the average coefficient of friction between particles and the system.

ParticleFrictionVariation

Gets or sets the variation in the coefficient of friction between particles and the system.

ParticleImage

Gets or sets the image that is used to display particles. This image can be a grid of animation frames, or six images that specify a sphere to render.

ParticleIntensity
ParticleIntensityVariation
ParticleLifeSpan

Gets or sets the average lifespan, in seconds, of particles.

ParticleLifeSpanVariation

Gets or sets the varation in lifespan, in seconds, of particles.

ParticleMass

Gets or sets the average mass of newly created particles.

ParticleMassVariation

Gets or sets the variation in the mass of newly created particles.

ParticleSize

Gets or sets the average size, in coordinate space units, of newly created particles.

ParticleSizeVariation

Gets or sets the variation in size, in coordinate space units, of newly created particles.

ParticleVelocity

Gets or sets the average speed, in coordinate space units per second, of newly created particles.

ParticleVelocityVariation

Gets or sets the variation in speed, in coordinate space units per second, of newly created particles.

PropertyControllers

Gets or sets a dictionary of controllers that animate different properties of particles in the system.

RetainCount

Returns the current Objective-C retain count for the object.

(Inherited from NSObject)
Self (Inherited from NSObject)
SortingMode

Gets or sets a value that controls whether and how particles are sorted before rendering and animation.

SpeedFactor

Gets or sets a multiplier for the animation speed.

SpreadingAngle

Gets or sets the angle about, the emitted angle, over which particles are emitted.

StretchFactor

Gets or sets a value that controls by how much to stretch particles in their direction of motion.

Superclass (Inherited from NSObject)
SuperHandle

Handle used to represent the methods in the base class for this NSObject.

(Inherited from NSObject)
SystemSpawnedOnCollision

Gets or sets a particle system to add when a particle collides with objects in the scene.

SystemSpawnedOnDying

Gets or sets a particle system to add when a particle dies.

SystemSpawnedOnLiving

Gets or sets a particle system to add to each particle for each frame of the animation.

WarmupDuration

Gets or sets the time, in seconds, for which the system simulates particle emission before the system is first rendered.

WeakPropertyControllers

Gets or sets a weak reference to a dictionary of property controllers.

Zone (Inherited from NSObject)

Methods

AddAnimation(CAAnimation, NSString)

Adds the specified animation, indexed by the specified key.

AddAnimation(SCNAnimationPlayer, NSString)
AddModifier(NSString[], SCNParticleModifierStage, SCNParticleModifierHandler)

Adds handler to the list of modifiers that will change the specified properties at the specified frame rendering stage.

AddObserver(NSObject, NSString, NSKeyValueObservingOptions, IntPtr)

Registers an object for being observed externally (using NSString keyPath).   Observed changes are dispatched to the observer’s object ObserveValue(NSString, NSObject, NSDictionary, IntPtr) method.

(Inherited from NSObject)
AddObserver(NSObject, String, NSKeyValueObservingOptions, IntPtr)

Registers an object for being observed externally (using string keyPath).   Observed changes are dispatched to the observer’s object ObserveValue(NSString, NSObject, NSDictionary, IntPtr) method.

(Inherited from NSObject)
AddObserver(NSString, NSKeyValueObservingOptions, Action<NSObservedChange>)

Registers an object for being observed externally using an arbitrary method.

(Inherited from NSObject)
AddObserver(String, NSKeyValueObservingOptions, Action<NSObservedChange>)

Registers an object for being observed externally using an arbitrary method.

(Inherited from NSObject)
AwakeFromNib()

Called after the object has been loaded from the nib file. Overriders must call base.AwakeFromNib().

(Inherited from NSObject)
BeginInvokeOnMainThread(Action) (Inherited from NSObject)
BeginInvokeOnMainThread(Selector, NSObject)

Invokes asynchrously the specified code on the main UI thread.

(Inherited from NSObject)
Bind(NSString, NSObject, String, NSDictionary) (Inherited from NSObject)
Bind(String, NSObject, String, NSDictionary)
Obsolete.
(Inherited from NSObject)
BindingInfo(String)
Obsolete.
(Inherited from NSObject)
BindingOptionDescriptions(String)
Obsolete.
(Inherited from NSObject)
BindingValueClass(String)
Obsolete.
(Inherited from NSObject)
CommitEditing() (Inherited from NSObject)
CommitEditing(NSObject, Selector, IntPtr) (Inherited from NSObject)
ConformsToProtocol(IntPtr)

Invoked to determine if this object implements the specified protocol.

(Inherited from NSObject)
Copy()

Performs a copy of the underlying Objective-C object.

(Inherited from NSObject)
Copy(NSZone)

Performs a copy of the underlying Objective-C object.

Create()

Creates a new particle system.

Create(String, String)

Creates a new particle system from a named particle system file in the specified directory.

DangerousAutorelease() (Inherited from NSObject)
DangerousRelease() (Inherited from NSObject)
DangerousRetain() (Inherited from NSObject)
DidChange(NSKeyValueChange, NSIndexSet, NSString)

Indicates a change occurred to the indexes for a to-many relationship.

(Inherited from NSObject)
DidChange(NSString, NSKeyValueSetMutationKind, NSSet) (Inherited from NSObject)
DidChangeValue(String)

Indicates that a change occurred on the specified key.

(Inherited from NSObject)
Dispose()

Releases the resources used by the NSObject object.

(Inherited from NSObject)
Dispose(Boolean)

Releases the resources used by the NSObject object.

(Inherited from NSObject)
DoesNotRecognizeSelector(Selector)

Indicates that this object does not recognize the specified selector.

(Inherited from NSObject)
EncodeTo(NSCoder)

Encodes the state of the object on the provided encoder

Equals(NSObject) (Inherited from NSObject)
Equals(Object) (Inherited from NSObject)
ExposedBindings() (Inherited from NSObject)
GetAnimation(NSString)

Developers should not use this deprecated method. Developers should use 'GetAnimationPlayer' instead.

GetAnimationKeys()

Gets a list of animation for the specified keys.

GetAnimationPlayer(NSString)
GetBindingInfo(NSString) (Inherited from NSObject)
GetBindingOptionDescriptions(NSString) (Inherited from NSObject)
GetBindingValueClass(NSString) (Inherited from NSObject)
GetDictionaryOfValuesFromKeys(NSString[])

Retrieves the values of the specified keys.

(Inherited from NSObject)
GetHashCode()

Generates a hash code for the current instance.

(Inherited from NSObject)
GetMethodForSelector(Selector) (Inherited from NSObject)
GetNativeField(String)
Obsolete.
(Inherited from NSObject)
GetNativeHash() (Inherited from NSObject)
HandleEvent(SCNParticleEvent, NSString[], SCNParticleEventHandler)

Method to modify particle data in response to an event.

Init() (Inherited from NSObject)
InitializeHandle(IntPtr, String) (Inherited from NSObject)
InitializeHandle(IntPtr) (Inherited from NSObject)
Invoke(Action, Double) (Inherited from NSObject)
Invoke(Action, TimeSpan) (Inherited from NSObject)
InvokeOnMainThread(Action) (Inherited from NSObject)
InvokeOnMainThread(Selector, NSObject)

Invokes synchrously the specified code on the main UI thread.

(Inherited from NSObject)
IsAnimationPaused(NSString)

Returns true if the animation that is specified by key is paused. Otherwise, false.

IsEqual(NSObject) (Inherited from NSObject)
IsKindOfClass(Class) (Inherited from NSObject)
IsMemberOfClass(Class) (Inherited from NSObject)
MarkDirty()

Promotes a regular peer object (IsDirectBinding is true) into a toggleref object.

(Inherited from NSObject)
MutableCopy()

Creates a mutable copy of the specified NSObject.

(Inherited from NSObject)
ObjectDidEndEditing(NSObject) (Inherited from NSObject)
ObserveValue(NSString, NSObject, NSDictionary, IntPtr)

Indicates that the value at the specified keyPath relative to this object has changed.

(Inherited from NSObject)
PauseAnimation(NSString)

Pauses the animation for key.

PerformSelector(Selector, NSObject, Double, NSString[]) (Inherited from NSObject)
PerformSelector(Selector, NSObject, Double)

Invokes the selector on the current instance and if the obj is not null, it passes this as its single parameter.

(Inherited from NSObject)
PerformSelector(Selector, NSObject, NSObject) (Inherited from NSObject)
PerformSelector(Selector, NSObject) (Inherited from NSObject)
PerformSelector(Selector, NSThread, NSObject, Boolean, NSString[]) (Inherited from NSObject)
PerformSelector(Selector, NSThread, NSObject, Boolean) (Inherited from NSObject)
PerformSelector(Selector) (Inherited from NSObject)
PrepareForInterfaceBuilder() (Inherited from NSObject)
RemoveAllAnimations()

Removes all animations from the particle system.

RemoveAllModifiers()

Removes all modifiers from the particle system.

RemoveAnimation(NSString, nfloat)

Removes the animation for key, and fades the animation out over duration.

RemoveAnimation(NSString)

Removes the animation for key.

RemoveAnimationUsingBlendOutDuration(NSString, nfloat)
RemoveModifiers(SCNParticleModifierStage)

Removes the modifiers for the specified stage.

RemoveObserver(NSObject, NSString, IntPtr)

Stops the specified observer from receiving further notifications of changed values for the specified keyPath and context.

(Inherited from NSObject)
RemoveObserver(NSObject, NSString)

Stops the specified observer from receiving further notifications of changed values for the specified keyPath.

(Inherited from NSObject)
RemoveObserver(NSObject, String, IntPtr)

Stops the specified observer from receiving further notifications of changed values for the specified keyPath and context.

(Inherited from NSObject)
RemoveObserver(NSObject, String)

Stops the specified observer from receiving further notifications of changed values for the specified keyPath.

(Inherited from NSObject)
Reset()

Resets the particle system.

RespondsToSelector(Selector)

Whether this object recognizes the specified selector.

(Inherited from NSObject)
ResumeAnimation(NSString)

Resumes the particle system animation.

SetNativeField(String, NSObject)
Obsolete.
(Inherited from NSObject)
SetNilValueForKey(NSString)

Sets the value of the specified key to null.

(Inherited from NSObject)
SetSpeed(nfloat, NSString)
SetValueForKey(NSObject, NSString)

Sets the value of the property specified by the key to the specified value.

(Inherited from NSObject)
SetValueForKeyPath(IntPtr, NSString)

A constructor used when creating managed representations of unmanaged objects; Called by the runtime.

(Inherited from NSObject)
SetValueForKeyPath(NSObject, NSString)

Sets the value of a property that can be reached using a keypath.

(Inherited from NSObject)
SetValueForUndefinedKey(NSObject, NSString)

Indicates an attempt to write a value to an undefined key. If not overridden, raises an NSUndefinedKeyException.

(Inherited from NSObject)
SetValuesForKeysWithDictionary(NSDictionary)

Sets the values of this NSObject to those in the specified dictionary.

(Inherited from NSObject)
ToString()

Returns a string representation of the value of the current instance.

(Inherited from NSObject)
Unbind(NSString) (Inherited from NSObject)
Unbind(String)
Obsolete.
(Inherited from NSObject)
ValueForKey(NSString)

Returns the value of the property associated with the specified key.

(Inherited from NSObject)
ValueForKeyPath(NSString)

Returns the value of a property that can be reached using a keypath.

(Inherited from NSObject)
ValueForUndefinedKey(NSString)

Indicates an attempt to read a value of an undefined key. If not overridden, raises an NSUndefinedKeyException.

(Inherited from NSObject)
WillChange(NSKeyValueChange, NSIndexSet, NSString)

Indicates that the values of the specified indices in the specified key are about to change.

(Inherited from NSObject)
WillChange(NSString, NSKeyValueSetMutationKind, NSSet) (Inherited from NSObject)
WillChangeValue(String)

Indicates that the value of the specified key is about to change.

(Inherited from NSObject)

Extension Methods

ObjectDidBeginEditing(NSObject, INSEditor)
ObjectDidEndEditing(NSObject, INSEditor)
GetValidModes(NSObject, NSFontPanel)
ValidateToolbarItem(NSObject, NSToolbarItem)
GetDebugDescription(INSObjectProtocol)
AcceptsPreviewPanelControl(NSObject, QLPreviewPanel)
BeginPreviewPanelControl(NSObject, QLPreviewPanel)
EndPreviewPanelControl(NSObject, QLPreviewPanel)
AddAnimation(ISCNAnimatable, SCNAnimationPlayer, NSString)
GetAnimationPlayer(ISCNAnimatable, NSString)
RemoveAnimationUsingBlendOutDuration(ISCNAnimatable, NSString, nfloat)
SetSpeed(ISCNAnimatable, nfloat, NSString)

Developers should not use this deprecated method. Developers should use 'SCNAnimationPlayer.Speed' instead.

AddAnimation(ISCNAnimatable, SCNAnimation, String)

Adds the specified animation and associates it with the specified key.

GetAccessibilityCustomRotors(NSObject)

Gets the array of UIAccessibilityCustomRotor objects appropriate for this object.

SetAccessibilityCustomRotors(NSObject, UIAccessibilityCustomRotor[])

Sets the array of UIAccessibilityCustomRotor objects appropriate for this object.

Applies to

See also