diff options
| author | Jcw87 <Jcw87@users.noreply.github.com> | 2026-02-07 04:43:51 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-02-07 04:43:51 -0800 |
| commit | 57cea18076aaf37de164b2ddeafdda4c42bdda80 (patch) | |
| tree | df4573e1c7058cde2d255adf909899c9d337b332 /src/JSystem/JParticle/JPAExtraShape.cpp | |
| parent | 434550355b33a95a6d715e820dfc380404105af3 (diff) | |
JParticle debug (#3090)
Diffstat (limited to 'src/JSystem/JParticle/JPAExtraShape.cpp')
| -rw-r--r-- | src/JSystem/JParticle/JPAExtraShape.cpp | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/src/JSystem/JParticle/JPAExtraShape.cpp b/src/JSystem/JParticle/JPAExtraShape.cpp index 09c6b45bb0..43244dbce6 100644 --- a/src/JSystem/JParticle/JPAExtraShape.cpp +++ b/src/JSystem/JParticle/JPAExtraShape.cpp @@ -35,7 +35,6 @@ void JPACalcScaleY(JPAEmitterWorkData* work, JPABaseParticle* ptcl) { } void JPACalcScaleCopy(JPAEmitterWorkData* work, JPABaseParticle* ptcl) { - JPAExtraShape* esp = work->mpRes->getEsp(); ptcl->mParticleScaleY = ptcl->mParticleScaleX; } @@ -55,21 +54,21 @@ void JPACalcScaleAnmRepeatY(JPAEmitterWorkData* work, JPABaseParticle* ptcl) { void JPACalcScaleAnmReverseX(JPAEmitterWorkData* work, JPABaseParticle* ptcl) { JPAExtraShape* esp = work->mpRes->getEsp(); - s32 cycle = ptcl->mAge / esp->getScaleAnmCycleX(); + f32 cycle = ptcl->mAge / esp->getScaleAnmCycleX() & 1; f32 base = (ptcl->mAge % esp->getScaleAnmCycleX()) / (f32)esp->getScaleAnmCycleX(); - work->mScaleAnm = base + ((cycle & 1) * (1.0f - base * 2.0f)); + work->mScaleAnm = base + cycle * (1.0f - base * 2.0f); } void JPACalcScaleAnmReverseY(JPAEmitterWorkData* work, JPABaseParticle* ptcl) { JPAExtraShape* esp = work->mpRes->getEsp(); - s32 cycle = ptcl->mAge / esp->getScaleAnmCycleY(); + f32 cycle = ptcl->mAge / esp->getScaleAnmCycleY() & 1; f32 base = (ptcl->mAge % esp->getScaleAnmCycleY()) / (f32)esp->getScaleAnmCycleY(); - work->mScaleAnm = base + ((cycle & 1) * (1.0f - base * 2.0f)); + work->mScaleAnm = base + cycle * (1.0f - base * 2.0f); } void JPACalcAlphaAnm(JPAEmitterWorkData* work, JPABaseParticle* ptcl) { JPAExtraShape* esp = work->mpRes->getEsp(); - f32 alpha; + f32 alpha = 0.0f; if (ptcl->mTime < esp->getAlphaInTiming()) { alpha = 255.0f * (esp->getAlphaInValue() + esp->getAlphaIncRate() * ptcl->mTime); } else if (ptcl->mTime > esp->getAlphaOutTiming()) { @@ -83,7 +82,7 @@ void JPACalcAlphaAnm(JPAEmitterWorkData* work, JPABaseParticle* ptcl) { void JPACalcAlphaFlickAnm(JPAEmitterWorkData* work, JPABaseParticle* ptcl) { JPAExtraShape* esp = work->mpRes->getEsp(); - f32 alpha; + f32 alpha = 0.0f; if (ptcl->mTime < esp->getAlphaInTiming()) { alpha = (esp->getAlphaInValue() + esp->getAlphaIncRate() * ptcl->mTime); } else if (ptcl->mTime > esp->getAlphaOutTiming()) { @@ -92,8 +91,7 @@ void JPACalcAlphaFlickAnm(JPAEmitterWorkData* work, JPABaseParticle* ptcl) { } else { alpha = esp->getAlphaBaseValue(); } - s32 theta = ptcl->mAlphaWaveRandom * ptcl->mAge * 16384.0f * (1.0f - esp->getAlphaFreq()); - f32 wave = JMASSin(theta); + f32 wave = JMASSin(ptcl->mAlphaWaveRandom * ptcl->mAge * 16384.0f * (1.0f - esp->getAlphaFreq())); alpha *= (1.0f + esp->getAlphaAmp() * (wave - 1.0f) * 0.5f) * 255.0f; OSf32tou8(&alpha, &ptcl->mPrmColorAlphaAnm); } |
