14#include "../AnimatedMaterial.h"
15#include "../../../Utils/Signals/FunctionGenerator.h"
16#include "../Static/GradientMaterial.h"
17#include "../Static/SimplexNoise.h"
29 RGBColor noiseSpectrum[4] = {
RGBColor(0, 255, 0),
RGBColor(255, 0, 0),
RGBColor(0, 255, 0),
RGBColor(0, 0, 255)};
Base class for dynamically updating materials.
A class to generate various waveform functions with customizable parameters.
Creates a customizable gradient material for rendering.
Abstract base class for rendering materials.
Represents an RGB color and provides methods for manipulation.
A dynamic material that creates a rainbow effect using simplex noise.
GradientMaterial< 4 > gNoiseMat
Gradient material for simplex noise.
Material * GetMaterial()
Retrieves the associated material.
float simplexNoiseDepth
Depth parameter for simplex noise.
RGBColor noiseSpectrum[4]
Spectrum for the gradient.
RGBColor GetRGB(const Vector3D &position, const Vector3D &normal, const Vector3D &uvw) override
Computes the color at a given position in the material.
RainbowNoise()
Default constructor for RainbowNoise.
void Update(float ratio)
Updates the material animation based on the time ratio.
FunctionGenerator fGenMatGradient
Function to animate gradient properties.
SimplexNoise< 4 > sNoise
Simplex noise generator.
A material class for rendering Simplex Noise.
Represents a 3D vector (X, Y, Z) and provides methods for vector arithmetic.