cocos2d-x  3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
PUForceField Class Reference

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 Vec3getForceFieldPositionBase (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

PUForceFieldCalculationFactorygetForceFieldCalculationFactory () const
 Get/Set/Create ForceFieldCalculationFactory. More...
 
void setForceFieldCalculationFactory (PUForceFieldCalculationFactory *forceFieldCalculationFactory)
PUForceFieldCalculationFactorycreateForceFieldCalculationFactory (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

Detailed Description

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).

Member Enumeration Documentation

Enumerator
FF_REALTIME_CALC 
FF_MATRIX_CALC 
Enumerator
FF_REALTIME_CALC 
FF_MATRIX_CALC 
Enumerator
FF_REALTIME_CALC 
FF_MATRIX_CALC 

Constructor & Destructor Documentation

var PUForceField ( )
local PUForceField ( )
virtual ~PUForceField ( )
virtual
var ~PUForceField ( )
virtual
local ~PUForceField ( )
virtual

Member Function Documentation

PUForceFieldCalculationFactory*
createForceFieldCalculationFactory
( ForceFieldType  type)
protected
var
createForceFieldCalculationFactory
( var  type)
protected
local
createForceFieldCalculationFactory
( local  type)
protected
void determineForce ( const Vec3 position,
Vec3 force,
float  delta 
)

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 double getAmplitude ( void  ) const
virtual
var getAmplitude (   )
virtual
local getAmplitude (   )
virtual
PUForceFieldCalculationFactory*
getForceFieldCalculationFactory
( ) const
protected

Get/Set/Create ForceFieldCalculationFactory.

var getForceFieldCalculationFactory ( )
protected

Get/Set/Create ForceFieldCalculationFactory.

local
getForceFieldCalculationFactory
( )
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 unsigned int
getForceFieldSize
( void  ) const
virtual
var getForceFieldSize (   )
virtual
local getForceFieldSize (   )
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 double getFrequency ( void  ) const
virtual
var getFrequency (   )
virtual
local getFrequency (   )
virtual
virtual unsigned short getOctaves ( void  ) const
virtual

Getters/Setters.

var getOctaves (   )
virtual

Getters/Setters.

local getOctaves (   )
virtual

Getters/Setters.

virtual double getPersistence ( void  ) const
virtual
var getPersistence (   )
virtual
local getPersistence (   )
virtual
virtual Vec3 getWorldSize ( void  ) const
virtual
var getWorldSize (   )
virtual
local getWorldSize (   )
virtual
virtual void initialise ( ForceFieldType  type,
const Vec3 position,
unsigned int  forceFieldSize,
unsigned short  octaves,
double  frequency,
double  amplitude,
double  persistence,
const Vec3 worldSize 
)
virtual

Initialises a ForceField.

var initialise ( var  type,
var  position,
var  forceFieldSize,
var  octaves,
var  frequency,
var  amplitude,
var  persistence,
var  worldSize 
)
virtual

Initialises a ForceField.

local initialise ( local  type,
local  position,
local  forceFieldSize,
local  octaves,
local  frequency,
local  amplitude,
local  persistence,
local  worldSize 
)
virtual

Initialises a ForceField.

virtual void initialise ( ForceFieldType  type,
unsigned int  forceFieldSize,
unsigned short  octaves,
double  frequency,
double  amplitude,
double  persistence,
const Vec3 worldSize 
)
virtual

Initialises a ForceField.

var initialise ( var  type,
var  forceFieldSize,
var  octaves,
var  frequency,
var  amplitude,
var  persistence,
var  worldSize 
)
virtual

Initialises a ForceField.

local initialise ( local  type,
local  forceFieldSize,
local  octaves,
local  frequency,
local  amplitude,
local  persistence,
local  worldSize 
)
virtual

Initialises a ForceField.

virtual void setAmplitude ( double  amplitude)
virtual
var setAmplitude ( var  amplitude)
virtual
local setAmplitude ( local  amplitude)
virtual
void
setForceFieldCalculationFactory
( PUForceFieldCalculationFactory forceFieldCalculationFactory)
protected
var setForceFieldCalculationFactory ( var  forceFieldCalculationFactory)
protected
local
setForceFieldCalculationFactory
( local  forceFieldCalculationFactory)
protected
void setForceFieldPositionBase ( const Vec3 position)
var setForceFieldPositionBase ( var  position)
local setForceFieldPositionBase ( local  position)
virtual void setForceFieldSize ( unsigned int  forceFieldSize)
virtual
var setForceFieldSize ( var  forceFieldSize)
virtual
local setForceFieldSize ( local  forceFieldSize)
virtual
void setForceFieldType ( const ForceFieldType  forceFieldType)
var setForceFieldType ( var  forceFieldType)
local setForceFieldType ( local  forceFieldType)
virtual void setFrequency ( double  frequency)
virtual
var setFrequency ( var  frequency)
virtual
local setFrequency ( local  frequency)
virtual
virtual void setOctaves ( unsigned short  octaves)
virtual
var setOctaves ( var  octaves)
virtual
local setOctaves ( local  octaves)
virtual
virtual void setPersistence ( double  persistence)
virtual
var setPersistence ( var  persistence)
virtual
local setPersistence ( local  persistence)
virtual
virtual void setWorldSize ( const Vec3 worldSize)
virtual
var setWorldSize ( var  worldSize)
virtual
local setWorldSize ( local  worldSize)
virtual

Member Data Documentation

double _amplitude
protected
var _amplitude
protected
local _amplitude
protected
PUForceFieldCalculationFactory*
_forceFieldCalculationFactory
protected
var _forceFieldCalculationFactory
protected
local _forceFieldCalculationFactory
protected
Vec3 _forceFieldPositionBase
protected
var _forceFieldPositionBase
protected
local _forceFieldPositionBase
protected
unsigned int _forceFieldSize
protected
var _forceFieldSize
protected
local _forceFieldSize
protected
ForceFieldType _forceFieldType
protected
var _forceFieldType
protected
local _forceFieldType
protected
double _frequency
protected
var _frequency
protected
local _frequency
protected
unsigned short _octaves
protected
double _persistence
protected
var _persistence
protected
local _persistence
protected
Vec3 _worldSize
protected
var _worldSize
protected
local _worldSize
protected

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