14#include "../AnimatedMaterial.h"
15#include "../Static/GradientMaterial.h"
16#include "../Static/SimplexNoise.h"
27 RGBColor noiseSpectrum[6] = {
RGBColor(255, 0, 0),
RGBColor(255, 255, 0),
RGBColor(0, 255, 0),
RGBColor(0, 255, 255),
RGBColor(0, 0, 255),
RGBColor(255, 0, 255)};
Base class for dynamically updating materials.
Creates a customizable gradient material for rendering.
A dynamic horizontal rainbow gradient material.
HorizontalRainbow()
Default constructor for HorizontalRainbow.
GradientMaterial< 6 > gNoiseMat
Gradient material for the rainbow spectrum.
Material * GetMaterial()
Retrieves the associated material.
RGBColor GetRGB(const Vector3D &position, const Vector3D &normal, const Vector3D &uvw) override
Computes the color at a given position in the gradient.
RGBColor noiseSpectrum[6]
Predefined rainbow colors.
void Update(float ratio)
Updates the gradient animation based on the provided time ratio.
float positionOffset
Position offset for animating the gradient.
Abstract base class for rendering materials.
Represents an RGB color and provides methods for manipulation.
Represents a 3D vector (X, Y, Z) and provides methods for vector arithmetic.