public static int interpolateColor2(int light, Color color1, Color color2, Vector4i vector4i, float progress) {
// Ограничиваем значение прогресса между 0 и 1
progress = Math.max(0, Math.min(1, progress));
// Вычисляем новые значения для красного, зеленого и синего компонентов
int red = (int) (color1.getRed() + (color2.getRed() - color1.getRed()) * progress);
int green = (int) (color1.getGreen() + (color2.getGreen() - color1.getGreen()) * progress);
int blue = (int) (color1.getBlue() + (color2.getBlue() - color1.getBlue()) * progress);
int alpha = (int) (color1.getAlpha() + (color2.getAlpha() - color1.getAlpha()) * progress);
// Возвращаем цвет в формате int
return new Color(red, green, blue, alpha).getRGB();
}