NW4F Eft
Loading...
Searching...
No Matches
nw::eft::EmitterSimpleCalc Class Reference

#include <eft_EmitterSimple.h>

Inherits nw::eft::EmitterCalc.

Inherited by nw::eft::EmitterComplexCalc.

Public Member Functions

 EmitterSimpleCalc (System *sys)
virtual void CalcEmitter (EmitterInstance *e)
virtual u32 CalcParticle (EmitterInstance *e, CpuCore core, bool skipBehavior, bool skipMakeAttribute)
virtual PtclType GetPtclType () const
Public Member Functions inherited from nw::eft::EmitterCalc
 EmitterCalc (System *sys)
virtual ~EmitterCalc ()
virtual u32 CalcChildParticle (EmitterInstance *e, CpuCore core, bool skipBehavior, bool skipMakeAttribute)

Protected Member Functions

void ApplyAnim (EmitterInstance *e)
void ApplyTransformAnim (EmitterInstance *e)
void EmitSameDistance (const SimpleEmitterData *__restrict res, EmitterInstance *e)

Additional Inherited Members

Static Public Member Functions inherited from nw::eft::EmitterCalc
static void Initialize (Heap *heap)
static void Finalize (Heap *heap)
static void EmitParticle (EmitterInstance *__restrict e)
static void RemoveParticle (EmitterInstance *e, PtclInstance *ptcl, CpuCore core)
static u32 CalcSimpleParticleBehavior (EmitterInstance *__restrict e, PtclInstance *__restrict ptcl, CpuCore core)
static u32 CalcComplexParticleBehavior (EmitterInstance *__restrict e, PtclInstance *__restrict ptcl, CpuCore core)
static u32 CalcChildParticleBehavior (EmitterInstance *__restrict e, PtclInstance *__restrict ptcl, CpuCore core)
static void MakeParticleAttributeBuffer (PtclAttributeBuffer *__restrict attrBuffer, PtclInstance *__restrict ptcl, u32 shaderAttrFlag, f32 cameraOffset)
Protected Types inherited from nw::eft::EmitterCalc
typedef PtclInstance *(* EmitFunction) (EmitterInstance *__restrict e)
Static Protected Member Functions inherited from nw::eft::EmitterCalc
static PtclInstance_emitPoint (EmitterInstance *__restrict e)
static PtclInstance_emitCircle (EmitterInstance *__restrict e)
static PtclInstance_emitCircleSameDivide (EmitterInstance *__restrict e)
static PtclInstance_emitFillCircle (EmitterInstance *__restrict e)
static PtclInstance_emitSphere (EmitterInstance *__restrict e)
static PtclInstance_emitSphereSameDivide (EmitterInstance *__restrict e)
static PtclInstance_emitSphereSameDivide64 (EmitterInstance *__restrict e)
static PtclInstance_emitFillSphere (EmitterInstance *__restrict e)
static PtclInstance_emitCylinder (EmitterInstance *__restrict e)
static PtclInstance_emitFillCylinder (EmitterInstance *__restrict e)
static PtclInstance_emitBox (EmitterInstance *__restrict e)
static PtclInstance_emitFillBox (EmitterInstance *__restrict e)
static PtclInstance_emitLine (EmitterInstance *__restrict e)
static PtclInstance_emitLineSameDivide (EmitterInstance *__restrict e)
static PtclInstance_emitRectangle (EmitterInstance *__restrict e)
static const void * _ptclField_Random (EmitterInstance *__restrict e, PtclInstance *__restrict ptcl, const void *fieldData)
static const void * _ptclField_Magnet (EmitterInstance *__restrict e, PtclInstance *__restrict ptcl, const void *fieldData)
static const void * _ptclField_Spin (EmitterInstance *__restrict e, PtclInstance *__restrict ptcl, const void *fieldData)
static const void * _ptclField_Collision (EmitterInstance *__restrict e, PtclInstance *__restrict ptcl, const void *fieldData)
static const void * _ptclField_Convergence (EmitterInstance *__restrict e, PtclInstance *__restrict ptcl, const void *fieldData)
static const void * _ptclField_PosAdd (EmitterInstance *__restrict e, PtclInstance *__restrict ptcl, const void *fieldData)
static void _calcField (const ComplexEmitterData *__restrict res, EmitterInstance *__restrict e, PtclInstance *__restrict ptcl)
static void InitializeFluctuation_ (Heap *heap)
static void FinalzieFluctuation_ (Heap *heap)
static void CalcFluctuation (EmitterInstance *__restrict e, PtclInstance *__restrict ptcl)
static void EmitCommon (EmitterInstance *__restrict e, PtclInstance *__restrict ptcl)
static void AddParticle (EmitterInstance *emitter, PtclInstance *ptcl)
Static Protected Attributes inherited from nw::eft::EmitterCalc
static SystemmSys = NULL
static EmitFunction mEmitFunctions []
static f32 * sFluctuationTbl = NULL

Constructor & Destructor Documentation

◆ EmitterSimpleCalc()

nw::eft::EmitterSimpleCalc::EmitterSimpleCalc ( System * sys)
inlineexplicit

Member Function Documentation

◆ CalcEmitter()

void nw::eft::EmitterSimpleCalc::CalcEmitter ( EmitterInstance * e)
virtual

Implements nw::eft::EmitterCalc.

Reimplemented in nw::eft::EmitterComplexCalc.

◆ CalcParticle()

u32 nw::eft::EmitterSimpleCalc::CalcParticle ( EmitterInstance * e,
CpuCore core,
bool skipBehavior,
bool skipMakeAttribute )
virtual

Reimplemented from nw::eft::EmitterCalc.

Reimplemented in nw::eft::EmitterComplexCalc.

◆ GetPtclType()

virtual PtclType nw::eft::EmitterSimpleCalc::GetPtclType ( ) const
inlinevirtual

Implements nw::eft::EmitterCalc.

Reimplemented in nw::eft::EmitterComplexCalc.

◆ ApplyAnim()

void nw::eft::EmitterSimpleCalc::ApplyAnim ( EmitterInstance * e)
protected

◆ ApplyTransformAnim()

void nw::eft::EmitterSimpleCalc::ApplyTransformAnim ( EmitterInstance * e)
protected

◆ EmitSameDistance()

void nw::eft::EmitterSimpleCalc::EmitSameDistance ( const SimpleEmitterData *__restrict res,
EmitterInstance * e )
protected