#pragma once

#include <Core/Math/Vector.h>
#include <Graphics/Camera.h>
#include <Graphics/Colors.h>
#include <Graphics/Graphics.h>
#include <Juliet.h>

namespace Juliet
{
    extern JULIET_API void DebugDisplay_Initialize(GraphicsDevice* device);
    extern JULIET_API void DebugDisplay_Shutdown(GraphicsDevice* device);
    extern JULIET_API void DebugDisplay_DrawLine(const Vector3& start, const Vector3& end, const FColor& color, bool overlay);
    extern JULIET_API void DebugDisplay_DrawSphere(const Vector3& center, float radius, const FColor& color, bool overlay);
    extern JULIET_API void DebugDisplay_Prepare(CommandList* cmdList);
    extern JULIET_API void DebugDisplay_Flush(CommandList* cmdList, RenderPass* renderPass, const Camera& camera);
} // namespace Juliet
