Sead/Color4f
Jump to navigation
Jump to search
sead::Color4f
is a helper class containing red, green, blue, and alpha float values.
Contents
Implementation
This class has four floats.
float red; float green; float blue; float alpha;
The following operators are supported:
+=
-=
*=
/=
If provided a second sead::Color4f
instance, the requested operation will be performed using the RGBA values in each operand. If provided a float, the single float will be applied to all RGBA values of the target sead::Color4f
using the requested operation.
setLerp(sead::Color4f, sead::Color4f, float)
Linearly interpolates between 2 Color4f values, with the float being the interpolation value.
An implementation looks something like this:
void __fastcall sead::Color4f::setLerp(sead::Color4f *this, const sead::Color4f *start, const sead::Color4f *end, float interpolation) { if ( interpolation >= 0.0 ) { if ( interpolation > 1.0 ) interpolation = 1.0; } else { interpolation = 0.0; } this->alpha = start->alpha + (interpolation * (end->alpha - start->alpha)); this->red = start->red + (interpolation * (end->red - start->red)); this->green = start->green + (interpolation * (end->green - start->green)); this->blue = start->blue + (interpolation * (end->blue - start->blue)); }
setGammaCollection(sead::Color4f, float)
TODO...
lerp(sead::Color4f, sead::Color4f, float)
TODO...
adjustOverflow()
Clamps the RGBA values to 1.0f.