aboutsummaryrefslogtreecommitdiff
#ifndef RENDERER_H
#define RENDERER_H

#include "../graphics/shaders.h"
#include "entity.h"
#include "skybox.h"
#include "../terrain.h"
#include "../light.h"

extern void Render_Init();
/* Load lights into the shader program */
extern void Render_LoadLights(Shader_Layout *layout, const light_t *lights, int n);
extern void Render_DrawEntity(Shader_Layout *layout, mat4_t *projectedViewMatrix, entity_t *entity);
extern void Render_DrawTerrain(Shader_Layout *layout, mat4_t *projectedViewMatrix, terrain_t *terrain);
extern void Render_DrawSky(Shader_Layout *layout, mat4_t *viewMatrix, mat4_t *projectionMatrix, skybox_t *sky);
extern void Render_Quit();

#endif // RENDERER_H