class
ParticleEmitterCircleShape
Inherits:
ParticleEmitterShape
Particle emitter shape that emits particles from a circle.
Using the thickness parameter you can control whether to emit only from circle edge, the entire surface or just a part of the surface. Using the arc parameter you can emit from a specific angular portion of the circle.
Public
Constructors
ParticleEmitterCircleShape
ParticleEmitterCircleShape() = default
ParticleEmitterCircleShape
ParticleEmitterCircleShape(const ParticleCircleShapeSettings &settings)
Methods
~ParticleEmitterCircleShape
virtual ~ParticleEmitterCircleShape() noexcept = default
SetSettings
Options describing the shape.
GetSettings
staticCreate
Creates a new particle emitter circle shape.
staticCreate
static SPtr<ParticleEmitterCircleShape> Create()
Creates a new particle emitter circle shape.
staticGetRttiStatic
static RTTIType *GetRttiStatic()
Internal
Methods
SpawnInternal
u32 SpawnInternal(const Random &random, ParticleSet &particles, u32 count, const ParticleSystemState &state) const override
Spawns a new set of particles using the current shape's distribution.
- random
- Random number generator.
- particles
- Particle set in which to insert new particles.
- count
- Number of particles to spawn.
- state
- Optional state that can contain various per-frame information required for spawning the particles.
Returns: Index at which the first of the particles was inserted, with other particles following sequentially.
SpawnInternal
Spawns a single particle randomly, generating its position and normal.
SpawnInternal
void SpawnInternal(float t, Vector3 &position, Vector3 &normal) const
Spawns a single particle on the specified point on the circle, generating its position and normal.
Protected
Methods
Fields
mSettings
ParticleCircleShapeSettings mSettings