aboutsummaryrefslogtreecommitdiff
path: root/src/renderer/renderer_impl.h
blob: 73959153df4da296cbd579e7fe4c746c6798a1f8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#pragma once

#include <gfx/renderer.h>

#include <stdbool.h>

typedef struct LLR           LLR;
typedef struct ShaderProgram ShaderProgram;

typedef struct Renderer {
  GfxCore* gfxcore;
  LLR*     llr;
  struct {
    ShaderProgram* debug;
    ShaderProgram* normals;
    ShaderProgram* normal_mapped_normals;
    ShaderProgram* tangents;
  } shaders;
} Renderer;

/// Create a new renderer.
bool gfx_renderer_make(Renderer*, LLR*, GfxCore*);

/// Destroy the renderer.
void gfx_renderer_destroy(Renderer*);