Aerodynamic Objects Core 2.0.0
Loading...
Searching...
No Matches
AerodynamicObjects.FlowParticles Class Reference

Provides the base class for objects which manage a particle system that is affected by the flow. More...

Inheritance diagram for AerodynamicObjects.FlowParticles:
AerodynamicObjects.FlowAffected AerodynamicObjects.Demos.SurfaceParticles AerodynamicObjects.FlowFieldParticles AerodynamicObjects.FlowPointParticles AerodynamicObjects.ParticleGrid AerodynamicObjects.SurfaceTrails

Public Member Functions

virtual void OnValidate ()
 
virtual void Start ()
 
virtual void GetParticleComponents ()
 
virtual void OnEnable ()
 
virtual void OnDisable ()
 
virtual void UpdateParticleSystemSettings ()
 
virtual void CheckParticleArrayLength ()
 
- Public Member Functions inherited from AerodynamicObjects.FlowAffected
void GetInteractionID ()
 Obtains a unique interaction ID for the object. More...
 
void IgnoreInteraction (FlowPrimitive primitive)
 Tells the flow interaction manager that this object and the provided flow primitive should not interact. More...
 
void IgnoreInteraction (FluidVolume fluidVolume)
 Tells the flow interaction manager that this object and the provided fluid volume should not interact. More...
 
virtual void OnDestroy ()
 
virtual void Awake ()
 
virtual void FixedUpdate ()
 
void SubscribeToFluidVolume (FluidVolume fluidVolume)
 Add this fluid volume to the object's list of fluid volumes. More...
 
void UnsubscribeFromFluidVolume (FluidVolume fluidVolume)
 Remove this fluid volume from the object's list of fluid volumes. More...
 
void UpdateFluidVolumes ()
 Looks at the fluid volumes which are currently affecting this object and removes any that have become null or are now ignored. More...
 
void RemoveNullVolumes ()
 Removes any fluid volumes which have become null from the list of interacting fluid volumes for this object. More...
 
Vector3 GetFluidVelocity (Vector3 position)
 Gets the fluid velocity at the provided position and checks whether to include the global fluid velocity or not. More...
 
Vector3 GetFluidVelocityNoInteractionCheck (Vector3 position)
 Gets the fluid velocity at the provided position and checks whether to include the global fluid velocity or not. More...
 
Vector3 GetFluidVelocityWithGlobal (Vector3 position)
 Gets the fluid velocity at the provided position under the assumption that the object IS affected by the global fluid. More...
 
Vector3 GetFluidVelocityWithGlobalNoInteractionCheck (Vector3 position)
 
Vector3 GetFluidVelocityWithoutGlobal (Vector3 position)
 

Public Attributes

bool enableParticleTrails = true
 How will the particles know which fluid zones to collect velocities from. More...
 
float particleSpawnRate = 100
 
float particleSize = 0.1f
 
float particleLife = 3f
 
int nParticles
 
- Public Attributes inherited from AerodynamicObjects.FlowAffected
bool affectedByGlobalFluid = true
 Will the global fluid velocity affect this object? More...
 
int interactionID = 0
 The unique ID number for this object, used for identifying pairs of ignored interactions by the FlowInteractionManager. More...
 
List< FluidVolumelocalFluidVolumes = new List<FluidVolume>()
 The local fluid volumes that are currently affecting this object. More...
 
Fluid fluid = new Fluid()
 The state and properties of the fluid around the object. More...
 

Protected Attributes

ParticleSystem m_ParticleSystem
 
ParticleSystem.TrailModule trailModule
 
ParticleSystem.MainModule mainModule
 
ParticleSystem.EmissionModule emissionModule
 
ParticleSystemRenderer particleSystemRenderer
 
ParticleSystem.Particle[] particles = new ParticleSystem.Particle[1]
 

Detailed Description

Provides the base class for objects which manage a particle system that is affected by the flow.

Member Function Documentation

◆ CheckParticleArrayLength()

virtual void AerodynamicObjects.FlowParticles.CheckParticleArrayLength ( )
virtual

◆ GetParticleComponents()

virtual void AerodynamicObjects.FlowParticles.GetParticleComponents ( )
virtual

◆ OnDisable()

virtual void AerodynamicObjects.FlowParticles.OnDisable ( )
virtual

◆ OnEnable()

virtual void AerodynamicObjects.FlowParticles.OnEnable ( )
virtual

◆ OnValidate()

◆ Start()

virtual void AerodynamicObjects.FlowParticles.Start ( )
virtual

◆ UpdateParticleSystemSettings()

virtual void AerodynamicObjects.FlowParticles.UpdateParticleSystemSettings ( )
virtual

Member Data Documentation

◆ emissionModule

ParticleSystem.EmissionModule AerodynamicObjects.FlowParticles.emissionModule
protected

◆ enableParticleTrails

bool AerodynamicObjects.FlowParticles.enableParticleTrails = true

How will the particles know which fluid zones to collect velocities from.

Collider will use the attached collider to sense fluid zones whereas list will refer to the collection assigned to the particles.

◆ m_ParticleSystem

ParticleSystem AerodynamicObjects.FlowParticles.m_ParticleSystem
protected

◆ mainModule

ParticleSystem.MainModule AerodynamicObjects.FlowParticles.mainModule
protected

◆ nParticles

int AerodynamicObjects.FlowParticles.nParticles

◆ particleLife

float AerodynamicObjects.FlowParticles.particleLife = 3f

◆ particles

ParticleSystem.Particle [] AerodynamicObjects.FlowParticles.particles = new ParticleSystem.Particle[1]
protected

◆ particleSize

float AerodynamicObjects.FlowParticles.particleSize = 0.1f

◆ particleSpawnRate

float AerodynamicObjects.FlowParticles.particleSpawnRate = 100

◆ particleSystemRenderer

ParticleSystemRenderer AerodynamicObjects.FlowParticles.particleSystemRenderer
protected

◆ trailModule

ParticleSystem.TrailModule AerodynamicObjects.FlowParticles.trailModule
protected

The documentation for this class was generated from the following file: