#pragma once

#include "math.h"

namespace Color {
    constexpr Vector3 WHITE       {1.0f, 1.0f, 1.0f};
    constexpr Vector3 BLACK       {0.0f, 0.0f, 0.0f};
    constexpr Vector3 GRAY        {0.5f, 0.5f, 0.5f};
    constexpr Vector3 LIGHT_GRAY  {0.75f, 0.75f, 0.75f};
    constexpr Vector3 DARK_GRAY   {0.25f, 0.25f, 0.25f};

    constexpr Vector3 RED         {1.0f, 0.0f, 0.0f};
    constexpr Vector3 GREEN       {0.0f, 1.0f, 0.0f};
    constexpr Vector3 BLUE        {0.0f, 0.0f, 1.0f};

    constexpr Vector3 CYAN        {0.0f, 1.0f, 1.0f};
    constexpr Vector3 MAGENTA     {1.0f, 0.0f, 1.0f};
    constexpr Vector3 YELLOW      {1.0f, 1.0f, 0.0f};

    constexpr Vector3 ORANGE      {1.0f, 0.5f, 0.0f};
    constexpr Vector3 PURPLE      {0.5f, 0.0f, 0.5f};
    constexpr Vector3 PINK        {1.0f, 0.0f, 0.5f};
    constexpr Vector3 BROWN       {0.6f, 0.3f, 0.0f};

    constexpr Vector3 LIME        {0.5f, 1.0f, 0.0f};
    constexpr Vector3 TEAL        {0.0f, 0.5f, 0.5f};
    constexpr Vector3 NAVY        {0.0f, 0.0f, 0.5f};
    constexpr Vector3 OLIVE       {0.5f, 0.5f, 0.0f};
    constexpr Vector3 MAROON      {0.5f, 0.0f, 0.0f};

    constexpr Vector3 GOLD        {1.0f, 0.84f, 0.0f};
    constexpr Vector3 SILVER      {0.75f, 0.75f, 0.75f};
    constexpr Vector3 SKY_BLUE    {0.53f, 0.81f, 0.92f};
    constexpr Vector3 TURQUOISE   {0.25f, 0.88f, 0.82f};
    constexpr Vector3 INDIGO      {0.29f, 0.0f, 0.51f};
}
