pandemonium_engine/modules/material_maker/nodes/bases/gradient_base.h

42 lines
783 B
C++

#ifndef GRADIENT_BASE_H
#define GRADIENT_BASE_H
#include "core/math/color.h"
#include "core/variant/variant.h"
#include "../mm_node.h"
class GradientBase : public MMNode {
GDCLASS(GradientBase, MMNode);
public:
int get_interpolation_type() const;
void set_interpolation_type(const int val);
PoolRealArray get_points();
void set_points(const PoolRealArray &val);
Color get_gradient_color(const float x);
virtual Color _get_gradient_color(const float x);
float get_point_value(const int index);
Color get_point_color(const int index);
void add_point(const float val, const Color &color);
int get_point_count();
void clear();
GradientBase();
~GradientBase();
protected:
static void _bind_methods();
int interpolation_type;
PoolRealArray points;
};
#endif