36 lines
930 B
C++
36 lines
930 B
C++
#include <cmath>
|
|
#include <algorithm>
|
|
|
|
#include "Math.hpp"
|
|
#include "values/mrand.hpp"
|
|
|
|
#include <raymath.h>
|
|
|
|
Color ColorLerp(Color c1, Color c2, float amount)
|
|
{
|
|
Color ret{0};
|
|
ret.r = Clamp(Lerp(c1.r, c2.r, amount), 0, 255);
|
|
ret.g = Clamp(Lerp(c1.g, c2.g, amount), 0, 255);
|
|
ret.b = Clamp(Lerp(c1.b, c2.b, amount), 0, 255);
|
|
ret.a = Clamp(Lerp(c1.a, c2.a, amount), 0, 255);
|
|
return ret;
|
|
}
|
|
|
|
Color ColorAddValue(Color c, int add)
|
|
{
|
|
int r = std::clamp(c.r + add, 0, 255);
|
|
int g = std::clamp(c.g + add, 0, 255);
|
|
int b = std::clamp(c.b + add, 0, 255);
|
|
|
|
return {(unsigned char)r, (unsigned char)g, (unsigned char)b, c.a};
|
|
}
|
|
|
|
Color ColorAdd(Color c1, Color c2)
|
|
{
|
|
int r = std::clamp(c1.r + c2.r, 0, 255);
|
|
int g = std::clamp(c1.g + c2.g, 0, 255);
|
|
int b = std::clamp(c1.b + c2.b, 0, 255);
|
|
int a = std::clamp(c1.a + c2.a, 0, 255);
|
|
|
|
return {(unsigned char)r, (unsigned char)g, (unsigned char)b, (unsigned char)a};
|
|
} |