Confetti  0.1.0
A C++ particle system using Vulkan
Public Member Functions | List of all members
Confetti::EmitterVolume Class Referenceabstract

This class generates random points in 3D whose locations are uniformly distributed in a specific volume. More...

#include <Confetti/EmitterVolume.h>

Inheritance diagram for Confetti::EmitterVolume:
Inheritance graph
[legend]

Public Member Functions

virtual ~EmitterVolume ()=default
 Destructor.
 
virtual glm::vec3 operator() (std::minstd_rand &rng) const =0
 Returns a value used to specify a particle's point of emission. More...
 

Detailed Description

This class generates random points in 3D whose locations are uniformly distributed in a specific volume.

Note
This is an abstract base class, so it must be derived from to be used.

Member Function Documentation

◆ operator()()

virtual glm::vec3 Confetti::EmitterVolume::operator() ( std::minstd_rand &  rng) const
pure virtual

Returns a value used to specify a particle's point of emission.

Parameters
rngRandom number generator.
Note
This method must be overridden.

Implemented in Confetti::EmitterCone, Confetti::EmitterCylinder, Confetti::EmitterBox, Confetti::EmitterSphere, Confetti::EmitterCircle, Confetti::EmitterRectangle, Confetti::EmitterLine, and Confetti::EmitterPoint.