Particle system parameters. More...
#include 
| Public Member Functions | |
| DEFINE_ENUM (EInheritance, System, Standard, Parent) EInheritance eInheritance | |
| Source of ParticleParams used as base for this effect (for serialization, display, etc). | |
| DEFINE_ENUM (ESpawn, Direct, ParentStart, ParentCollide, ParentDeath) ESpawn eSpawnIndirection | |
| Direct: spawn from emitter location; else spawn from each particle in parent emitter. | |
| DEFINE_ENUM (EFacing, Camera, CameraX, Free, Horizontal, Velocity, Water, Terrain, Decal) EFacing eFacing | |
| Orientation of particle face. | |
| DEFINE_ENUM_VALS (EBlend, uint8, AlphaBased=OS_ALPHA_BLEND, Additive=OS_ADD_BLEND, Multiplicative=OS_MULTIPLY_BLEND, Opaque=0, _ColorBased=OS_ADD_BLEND, _None=0) EBlend eBlendType | |
| Blend rendering type. | |
| DEFINE_ENUM (EGeometryPieces, Whole, RandomPiece, AllPieces) EGeometryPieces eGeometryPieces | |
| Which geometry pieces to emit. | |
| DEFINE_ENUM (ESoundControlTime, EmitterLifeTime, EmitterExtendedLifeTime, EmitterPulsePeriod) ESoundControlTime eSoundControlTime | |
| The sound control time type. | |
| DEFINE_ENUM (EPhysics, None, SimpleCollision, SimplePhysics, RigidBody) EPhysics ePhysicsType | |
| What kind of physics simulation to run on particle. | |
| DEFINE_ENUM (ECollisionResponse, Die, Ignore, Stop) ECollisionResponse eFinalCollision | |
| What to do on final collision (when MaxCollisions > 0). | |
| DEFINE_ENUM (EForce, None, Wind, Gravity, _Target) EForce eForceGeneration | |
| Generate physical forces if set. | |
| DEFINE_ENUM (EConfigSpecBrief, Low, Medium, High, VeryHigh) EConfigSpecBrief eConfigMin | |
| Minimum config spec this effect runs in. | |
| bool | HasEquilibrium () const | 
| float | GetMaxSpawnDelay () const | 
| float | GetMaxEmitterLife () const | 
| float | GetMaxParticleLife () const | 
| uint8 | GetTailSteps () const | 
| bool | HasVariableVertexCount () const | 
| float | GetMaxRotationAngle () const | 
| AABB | GetEmitOffsetBounds () const | 
| float | GetFullTextureArea () const | 
| float | GetAlphaFromMod (float fMod) const | 
| bool | NeedsExtendedBounds () const | 
| Public Attributes | |
| string | sComment | 
| TSmallBool | bEnabled = true | 
| Set false to disable this effect. | |
| TVarEParam< UFloat > | fCount | 
| Number of particles alive at once. | |
| ParticleParams::SMaintainDensity | fMaintainDensity | 
| TSmallBool | bContinuous | 
| Emit particles gradually until Count reached (rate = Count / ParticleLifeTime). | |
| TVarParam< SFloat > | fSpawnDelay | 
| Delay the emitter start time by this value. | |
| TVarParam< UFloat > | fEmitterLifeTime | 
| Lifetime of the emitter, 0 if infinite. Always emits at least Count particles. | |
| TVarParam< UFloat > | fPulsePeriod | 
| Time between auto-restarts of emitter; 0 if never. | |
| TVarEParam< UFloat > | fParticleLifeTime | 
| Lifetime of particles, 0 if indefinite (die with emitter). | |
| TSmallBool | bRemainWhileVisible | 
| Particles will only die when not rendered (by any viewport). | |
| Vec3S | vPositionOffset | 
| Spawn offset from the emitter position. | |
| Vec3U | vRandomOffset | 
| Random offset of emission relative position to the spawn position. | |
| UnitFloat | fOffsetRoundness | 
| Fraction of emit volume corners to round: 0 = box, 1 = ellipsoid. | |
| UnitFloat | fOffsetInnerFraction | 
| Fraction of inner emit volume to avoid. | |
| EGeomType | eAttachType | 
| Which geometry to use for attached entity. | |
| EGeomForm | eAttachForm | 
| Which aspect of attached geometry to emit from. | |
| TVarEParam< UHalfAngle > | fFocusAngle | 
| Angle to vary focus from default (Y axis), for variation. | |
| TVarEParam< SFloat > | fFocusAzimuth | 
| TVarEParam< UnitFloat > | fFocusCameraDir | 
| Rotate emitter focus partially or fully to face camera. | |
| TSmallBool | bFocusGravityDir | 
| Uses negative gravity dir, rather than emitter Y, as focus dir. | |
| TSmallBool | bFocusRotatesEmitter | 
| Focus rotation affects offset and particle orientation; else affects just emission direction. | |
| TSmallBool | bEmitOffsetDir | 
| Default emission direction parallel to emission offset from origin. | |
| TVarEParam< UHalfAngle > | fEmitAngle | 
| Angle from focus dir (emitter Y), in degrees. RandomVar determines min angle. | |
| TSmallBool | bOrientToVelocity | 
| Particle X axis aligned to velocity direction. | |
| UnitFloat | fCurvature = 1 | 
| For Facing=Camera, fraction that normals are curved to a spherical shape. | |
| CCryName | sTexture | 
| Texture asset for sprite. | |
| CCryName | sMaterial | 
| Material (overrides texture). | |
| STextureTiling | TextureTiling | 
| Tiling of texture for animation and variation. | |
| TSmallBool | bTessellation | 
| If hardware supports, tessellate particles for better shadowing and curved connected particles. | |
| TSmallBool | bOctagonalShape | 
| Use octagonal shape for textures instead of quad. | |
| ParticleParams::SSoftParticle | bSoftParticle | 
| Soft intersection with background. | |
| CCryName | sGeometry | 
| Geometry for 3D particles. | |
| TSmallBool | bNoOffset | 
| Disable centering of geometry. | |
| TVarEPParam< UFloat > | fAlpha = 1 | 
| struct ParticleParams::SAlphaClip | AlphaClip | 
| Alpha clipping settings, for particle alpha 0 to 1. | |
| TVarEPParam< Color3F > | cColor = Color3F(1) | 
| Color modulation. | |
| UFloat | fDiffuseLighting = 1 | 
| UnitFloat | fDiffuseBacklighting | 
| Fraction of diffuse lighting applied in all directions. | |
| UFloat | fEmissiveLighting | 
| TSmallBool | bReceiveShadows | 
| Shadows will cast on these particles. | |
| TSmallBool | bCastShadows | 
| Particles will cast shadows (currently only geom particles). | |
| TSmallBool | bNotAffectedByFog | 
| Ignore fog. | |
| struct ParticleParams::SLightSource | LightSource | 
| Per-particle light generation. | |
| CCryName | sStartTrigger | 
| Audio start trigger to execute. | |
| CCryName | sStopTrigger | 
| Audio stop trigger to execute. | |
| TVarEParam< UFloat > | fSoundFXParam = 1 | 
| Custom real-time sound modulation parameter. | |
| TVarEPParam< UFloat > | fSize = 1 | 
| TVarEPParam< UFloat > | fAspect = 1 | 
| TVarEPParam< SFloat > | fPivotX | 
| TVarEPParam< SFloat > | fPivotY | 
| ParticleParams::SStretch | fStretch | 
| ParticleParams::STailLength | fTailLength | 
| UFloat | fMinPixels | 
| ParticleParams::SConnection | Connection | 
| TVarEParam< SFloat > | fSpeed | 
| Initial speed of a particle. | |
| SFloat | fInheritVelocity | 
| ParticleParams::SAirResistance | fAirResistance | 
| TVarEPParam< SFloat > | fGravityScale | 
| Vec3S | vAcceleration | 
| Explicit world-space acceleration vector. | |
| TVarEPParam< UFloat > | fTurbulence3DSpeed | 
| TVarEPParam< UFloat > | fTurbulenceSize | 
| TVarEPParam< SFloat > | fTurbulenceSpeed | 
| ParticleParams::SMoveRelativeEmitter | bMoveRelativeEmitter | 
| Particle motion is in emitter space. | |
| TSmallBool | bBindEmitterToCamera | 
| Emitter attached to main render camera. | |
| TSmallBool | bSpaceLoop | 
| Loops particles within emission volume, or within Camera Max Distance. | |
| struct ParticleParams::STargetAttraction | TargetAttraction | 
| Specify target attractor behavior. | |
| Vec3_tpl< SAngle > | vInitAngles | 
| Initial rotation in symmetric angles (degrees). | |
| Vec3_tpl< UFullAngle > | vRandomAngles | 
| Bidirectional random angle variation. | |
| Vec3S | vRotationRate | 
| Vec3U | vRandomRotationRate | 
| TSmallBool | bCollideTerrain | 
| Collides with terrain (if Physics <> none). | |
| TSmallBool | bCollideStaticObjects | 
| Collides with static physics objects (if Physics <> none). | |
| TSmallBool | bCollideDynamicObjects | 
| Collides with dynamic physics objects (if Physics <> none). | |
| UnitFloat8 | fCollisionFraction = 1 | 
| Fraction of emitted particles that actually perform collisions. | |
| UFloat | fCollisionCutoffDistance | 
| Maximum distance up until collisions are respected (0 = infinite). | |
| uint8 | nMaxCollisionEvents = 0 | 
| Max # collision events per particle (0 = no limit). | |
| CSurfaceTypeIndex | sSurfaceType | 
| Surface type for physicalized particles. | |
| SFloat | fElasticity | 
| UFloat | fDynamicFriction | 
| UFloat | fThickness = 1 | 
| UFloat | fDensity = 1000 | 
| UFloat | fViewDistanceAdjust = 1 | 
| UFloat | fCameraMaxDistance | 
| UFloat | fCameraMinDistance | 
| SFloat | fCameraDistanceOffset | 
| SFloat | fSortOffset | 
| SFloat | fSortBoundsScale | 
| TSmallBool | bDrawNear | 
| Render particle in near space (weapon). | |
| TSmallBool | bDrawOnTop | 
| Render particle on top of everything (no depth test). | |
| ETrinary | tVisibleIndoors | 
| Whether visible indoors / outdoors / both. | |
| ETrinary | tVisibleUnderwater | 
| Whether visible under / above water / both. | |
| UnitFloat | fFadeAtViewCosAngle | 
| Angle to camera at which particles start to fade out. | |
| UFloat | fFillRateCost = 1 | 
| Adjustment to max screen fill allowed per emitter. | |
| TFixed< uint8, MAX_HEATSCALE > | fHeatScale | 
| Multiplier to thermal vision. | |
| UnitFloat | fSphericalApproximation = 1 | 
| Align the particle to the tangent of the sphere. | |
| UFloat | fPlaneAlignBlendDistance | 
| Distance when blend to camera plane aligned particles starts. | |
| TRangedType< uint8, 0, 2 > | nSortQuality | 
| Sort new particles as accurately as possible into list, by main camera distance. | |
| TSmallBool | bForceDynamicBounds | 
| Always update particles and compute actual bounds for visibility. | |
| TSmallBool | bHalfRes | 
| Use half resolution rendering. | |
| TSmallBoolTrue | bStreamable | 
| Texture/geometry allowed to be streamed. | |
| TSmallBool | bVolumeFog | 
| Use as a participating media of volumetric fog. | |
| Unit4Float | fVolumeThickness = 1 | 
| Thickness factor for particle size. | |
| EConfigSpecBrief | eConfigMax = EConfigSpecBrief::VeryHigh | 
| Maximum config spec this effect runs in. | |
| struct ParticleParams::SPlatforms | Platforms | 
| Platforms this effect runs on. | |
| AUTO_STRUCT_INFO | |
Particle system parameters.
Special surface type enum.