MCPcopy Create free account
hub / github.com/doldecomp/mkdd / init

Method init

libs/JSystem/JParticle/JPAEmitter.cpp:10–55  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

8JPAEmitterCallBack::~JPAEmitterCallBack() { }
9
10void JPABaseEmitter::init(JPAEmitterManager *manager, JPAResource *resource)
11{
12 mManager = manager;
13 mResource = resource;
14 mResource->getDyn()->getEmitterScl(&mLocalScl);
15 mResource->getDyn()->getEmitterTrs(&mLocalTrs);
16 mResource->getDyn()->getEmitterDir(&mLocalDir);
17 mLocalDir.normalize();
18 mResource->getDyn()->getEmitterRot(&mLocalRot);
19 mMaxFrame = mResource->getDyn()->getMaxFrame();
20 mLifeTime = mResource->getDyn()->getLifetime();
21 mVolumeSize = mResource->getDyn()->getVolumeSize();
22 mRate = mResource->getDyn()->getRate();
23 mRateStep = mResource->getDyn()->getRateStep();
24 mVolumeSweep = mResource->getDyn()->getVolumeSweep();
25 mVolumeMinRad = mResource->getDyn()->getVolumeMinRad();
26 mAwayFromCenterSpeed = mResource->getDyn()->getInitVelOmni();
27 mAwayFromAxisSpeed = mResource->getDyn()->getInitVelAxis();
28 mDirSpeed = mResource->getDyn()->getInitVelDir();
29 mSpread = mResource->getDyn()->getInitVelDirSp();
30 mRndmDirSpeed = mResource->getDyn()->getInitVelRndm();
31 mAirResist = mResource->getDyn()->getAirRes();
32 mRandom.setSeed(mManager->pWd->mRndm.getRandU32());
33 PSMTXIdentity(mGlobalRot);
34 mGlobalScl.set(1.0f, 1.0f, 1.0f);
35 mGlobalTrs.zero();
36 mGlobalPScl.set(1.0f, 1.0f);
37 mGlobalEnvClr.a = 0xff;
38 mGlobalEnvClr.b = 0xff;
39 mGlobalEnvClr.g = 0xff;
40 mGlobalEnvClr.r = 0xff;
41 mGlobalPrmClr.a = 0xff;
42 mGlobalPrmClr.b = 0xff;
43 mGlobalPrmClr.g = 0xff;
44 mGlobalPrmClr.r = 0xff;
45 resource->getBsp()->getPrmClr(&mPrmClr);
46 resource->getBsp()->getEnvClr(&mEnvClr);
47 mpUserWork = nullptr;
48 mScaleOut = 1.0f;
49 mEmitCount = 0.0f;
50 initFlag(JPAEMIT_FirstEmit | JPAEMIT_RateStepEmit);
51 mDrawTimes = 1;
52 mCurrentFrame = 0;
53 mWaitTime = 0;
54 mRateStepTimer = 0;
55}
56
57JPABaseParticle *JPABaseEmitter::createParticle()
58{

Callers 2

createSimpleEmitterIDMethod · 0.45
load_jpcMethod · 0.45

Calls 15

getEmitterSclMethod · 0.80
getDynMethod · 0.80
getEmitterTrsMethod · 0.80
getEmitterDirMethod · 0.80
getEmitterRotMethod · 0.80
getMaxFrameMethod · 0.80
getLifetimeMethod · 0.80
getVolumeSizeMethod · 0.80
getRateStepMethod · 0.80
getVolumeSweepMethod · 0.80
getVolumeMinRadMethod · 0.80
getInitVelOmniMethod · 0.80

Tested by

no test coverage detected