diff options
| author | Jasper St. Pierre <jstpierre@mecheye.net> | 2024-07-14 14:22:05 -0700 |
|---|---|---|
| committer | Jasper St. Pierre <jstpierre@mecheye.net> | 2024-07-14 14:22:05 -0700 |
| commit | cf07fee0656a0ff23e3138046b1d1abb4fdfc937 (patch) | |
| tree | 1230a739348058cb04e74b51adfc7b3ef943284e /src/JSystem/JParticle/JPAParticle.cpp | |
| parent | 506f199a2d750edecc6807d4189de3fb86cef81d (diff) | |
JPAParticle work
Diffstat (limited to 'src/JSystem/JParticle/JPAParticle.cpp')
| -rw-r--r-- | src/JSystem/JParticle/JPAParticle.cpp | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/src/JSystem/JParticle/JPAParticle.cpp b/src/JSystem/JParticle/JPAParticle.cpp index af3cfa08..35252072 100644 --- a/src/JSystem/JParticle/JPAParticle.cpp +++ b/src/JSystem/JParticle/JPAParticle.cpp @@ -38,19 +38,24 @@ void JPABaseParticle::initParticle() { else velAxis.zero(); - velDir.zero(); if (emtr->mInitialVelDir != 0.0f) { Mtx mtx; - JPAGetYZRotateMtx(emtr->mSpread * emtr->getRandomSS(), emtr->getRandomSS(), mtx); + JPAGetYZRotateMtx(emtr->mSpread * emtr->getRandomRF() * 32768.0f, emtr->getRandomSS(), mtx); MTXConcat(emtrInfo.mEmitterDirMtx, mtx, mtx); velDir.set(mtx[0][2], mtx[1][2], mtx[2][2]); velDir.scale(emtr->mInitialVelDir); + } else { + velDir.zero(); } - velRndm.zero(); if (emtr->mInitialVelRndm != 0.0f) { - velRndm.set(emtr->getRandomSF(), emtr->getRandomSF(), emtr->getRandomSF()); - velRndm.scale(emtr->mInitialVelRndm); + velRndm.set( + emtr->mInitialVelRndm * emtr->getRandomSF(), + emtr->mInitialVelRndm * emtr->getRandomSF(), + emtr->mInitialVelRndm * emtr->getRandomSF() + ); + } else { + velRndm.zero(); } f32 velRatio = 1.0f + emtr->getRandomRF() * emtr->mInitialVelRatio; |
