#pragma once

#include "graphics/opengl/texture.hpp"
#include "graphics/opengl/texture_array.hpp"

#include <glm/vec4.hpp>

namespace kuiper::resource
{

struct material {
    glm::vec4 base_colour_factor {0.0f, 0.0f, 0.0f, 1.0f};
    float     metallic_factor {1.0f};
    float     roughness_factor {1.0f};

    // 0: Albedo, 1: Normal, 2: Metallic-Roughness
    gl::texture_array::s_ptr textures {nullptr};
};

} // namespace kuiper::resource
