Force Field Affector Class: This class defines a force field to affect the particle direction. More...
#include <CCPUForceField.h>
Public Types | |
enum | ForceFieldType { FF_REALTIME_CALC, FF_MATRIX_CALC } |
Public Member Functions | |
PUForceField () | |
virtual | ~PUForceField () |
virtual void | initialise (ForceFieldType type, const Vec3 &position, unsigned int forceFieldSize, unsigned short octaves, double frequency, double amplitude, double persistence, const Vec3 &worldSize) |
Initialises a ForceField. More... | |
local | initialise ( local type, local position, local forceFieldSize, local octaves, local frequency, local amplitude, local persistence, local worldSize) |
Initialises a ForceField. More... | |
virtual void | initialise (ForceFieldType type, unsigned int forceFieldSize, unsigned short octaves, double frequency, double amplitude, double persistence, const Vec3 &worldSize) |
Initialises a ForceField. More... | |
local | initialise ( local type, local forceFieldSize, local octaves, local frequency, local amplitude, local persistence, local worldSize) |
Initialises a ForceField. More... | |
const Vec3 & | getForceFieldPositionBase (void) const |
Get/Set the base position of the force field. More... | |
local | getForceFieldPositionBase () |
Get/Set the base position of the force field. More... | |
void | setForceFieldPositionBase (const Vec3 &position) |
void | determineForce (const Vec3 &position, Vec3 &force, float delta) |
Calculate the force, based on a certain position. More... | |
virtual unsigned short | getOctaves (void) const |
Getters/Setters. More... | |
local | getOctaves () |
Getters/Setters. More... | |
virtual void | setOctaves (unsigned short octaves) |
var | setOctaves ( var octaves) |
local | setOctaves ( local octaves) |
virtual double | getFrequency (void) const |
var | getFrequency () |
local | getFrequency () |
virtual void | setFrequency (double frequency) |
local | setFrequency ( local frequency) |
virtual double | getAmplitude (void) const |
virtual void | setAmplitude (double amplitude) |
local | setAmplitude ( local amplitude) |
virtual double | getPersistence (void) const |
virtual void | setPersistence (double persistence) |
local | setPersistence ( local persistence) |
virtual unsigned int | getForceFieldSize (void) const |
virtual void | setForceFieldSize (unsigned int forceFieldSize) |
var | setForceFieldSize ( var forceFieldSize) |
local | setForceFieldSize ( local forceFieldSize) |
virtual Vec3 | getWorldSize (void) const |
virtual void | setWorldSize (const Vec3 &worldSize) |
local | setWorldSize ( local worldSize) |
const ForceFieldType | getForceFieldType (void) const |
Get/Set the Forcefield type. More... | |
void | setForceFieldType (const ForceFieldType forceFieldType) |
Protected Member Functions | |
PUForceFieldCalculationFactory * | getForceFieldCalculationFactory () const |
Get/Set/Create ForceFieldCalculationFactory. More... | |
void | setForceFieldCalculationFactory (PUForceFieldCalculationFactory *forceFieldCalculationFactory) |
PUForceFieldCalculationFactory * | createForceFieldCalculationFactory (ForceFieldType type) |
local | createForceFieldCalculationFactory ( local type) |
Protected Attributes | |
unsigned short | _octaves |
double | _frequency |
double | _amplitude |
double | _persistence |
Vec3 | _worldSize |
unsigned int | _forceFieldSize |
PUForceFieldCalculationFactory * | _forceFieldCalculationFactory |
Vec3 | _forceFieldPositionBase |
ForceFieldType | _forceFieldType |
Force Field Affector Class: This class defines a force field to affect the particle direction.
The force field is based on 3D noise. The force can be calculated in realtime or based on a precreated 3D force field matrix, which essentially involves one lookup. To speed things up, the 3d matrix can be precreated in a separate thread (optionally).
enum ForceFieldType |
var ForceFieldType |
local ForceFieldType |
PUForceField | ( | ) |
var PUForceField | ( | ) |
local PUForceField | ( | ) |
|
virtual |
|
virtual |
|
virtual |
|
protected |
|
protected |
|
protected |
Calculate the force, based on a certain position.
var determineForce | ( | var | position, |
var | force, | ||
var | delta | ||
) |
Calculate the force, based on a certain position.
local determineForce | ( | local | position, |
local | force, | ||
local | delta | ||
) |
Calculate the force, based on a certain position.
|
virtual |
|
virtual |
|
virtual |
|
protected |
Get/Set/Create ForceFieldCalculationFactory.
|
protected |
Get/Set/Create ForceFieldCalculationFactory.
|
protected |
Get/Set/Create ForceFieldCalculationFactory.
const Vec3& getForceFieldPositionBase |
( | void | ) | const |
Get/Set the base position of the force field.
var getForceFieldPositionBase | ( | ) |
Get/Set the base position of the force field.
local getForceFieldPositionBase | ( | ) |
Get/Set the base position of the force field.
|
virtual |
|
virtual |
|
virtual |
const ForceFieldType getForceFieldType |
( | void | ) | const |
Get/Set the Forcefield type.
var getForceFieldType | ( | ) |
Get/Set the Forcefield type.
local getForceFieldType | ( | ) |
Get/Set the Forcefield type.
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Getters/Setters.
|
virtual |
Getters/Setters.
|
virtual |
Getters/Setters.
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Initialises a ForceField.
|
virtual |
Initialises a ForceField.
|
virtual |
Initialises a ForceField.
|
virtual |
Initialises a ForceField.
|
virtual |
Initialises a ForceField.
|
virtual |
Initialises a ForceField.
|
virtual |
|
virtual |
|
virtual |
|
protected |
|
protected |
|
protected |
void setForceFieldPositionBase | ( | const Vec3 & | position | ) |
var setForceFieldPositionBase | ( | var | position | ) |
local setForceFieldPositionBase | ( | local | position | ) |
|
virtual |
|
virtual |
|
virtual |
void setForceFieldType | ( | const ForceFieldType | forceFieldType | ) |
var setForceFieldType | ( | var | forceFieldType | ) |
local setForceFieldType | ( | local | forceFieldType | ) |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |