package eu.jonahbauer.raytracing.render.material;

import eu.jonahbauer.raytracing.math.Ray;
import eu.jonahbauer.raytracing.render.Color;
import eu.jonahbauer.raytracing.scene.HitResult;
import org.jetbrains.annotations.NotNull;

import java.util.Optional;

public record DiffuseLight(@NotNull Color emit) implements Material {
    @Override
    public @NotNull Optional<ScatterResult> scatter(@NotNull Ray ray, @NotNull HitResult hit) {
        return Optional.empty();
    }

    @Override
    public @NotNull Color emitted(@NotNull HitResult hit) {
        return emit;
    }
}
