#pragma once #include #include typedef struct IBL IBL; typedef struct ShaderProgram ShaderProgram; typedef struct Texture Texture; typedef struct Renderer { GfxCore* gfxcore; IBL* ibl; Texture* brdf_integration_map; struct { ShaderProgram* debug; ShaderProgram* normals; ShaderProgram* normal_mapped_normals; ShaderProgram* tangents; } shaders; } Renderer; /// Create a new renderer. bool renderer_make(Renderer*, GfxCore*); /// Destroy the renderer. void renderer_destroy(Renderer*);