Skip to content

Commit

Permalink
Use scaleLinear to implement Fade::update()
Browse files Browse the repository at this point in the history
  • Loading branch information
DanRStevens committed Mar 6, 2025
1 parent aa5366a commit 8c30c08
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions NAS2D/Renderer/Fade.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
#include "Fade.h"
#include "Renderer.h"
#include "../Math/Rectangle.h"
#include "../Math/MathUtils.h"

#include <algorithm>
#include <stdexcept>
Expand Down Expand Up @@ -79,8 +80,9 @@ void Fade::update()
}

const auto currentMilliseconds = std::min(mFadeTimer.elapsedTicks(), mDuration.milliseconds);
const auto step = static_cast<uint8_t>(currentMilliseconds * 255u / mDuration.milliseconds);
mFadeColor.alpha = (mDirection == FadeDirection::In) ? 255 - step : step;
mFadeColor.alpha = (mDirection == FadeDirection::In) ?
scaleLinear(currentMilliseconds, uint32_t{0}, mDuration.milliseconds, alphaOpaque, alphaTransparent) :
scaleLinear(currentMilliseconds, uint32_t{0}, mDuration.milliseconds, alphaTransparent, alphaOpaque);

if (currentMilliseconds >= mDuration.milliseconds)
{
Expand Down

0 comments on commit 8c30c08

Please sign in to comment.