diff options
Diffstat (limited to 'src/renderer/render.h')
-rw-r--r-- | src/renderer/render.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/renderer/render.h b/src/renderer/render.h index e095e1c..65ace4e 100644 --- a/src/renderer/render.h +++ b/src/renderer/render.h @@ -1,5 +1,6 @@ #pragma once +#include "camera.h" #include "loaders.h" #include "render_types.h" @@ -14,6 +15,22 @@ void renderer_shutdown(renderer* ren); void render_frame_begin(renderer* ren); void render_frame_end(renderer* ren); +// --- models meshes +void model_upload_meshes(renderer* ren, model* model); +void draw_model(renderer* ren, camera* camera, model* model, transform tf); +void draw_mesh(renderer* ren, mesh* mesh, transform tf, material* mat, mat4* view, mat4* proj); + // --- texture texture_data_load(const char* path, bool invert_y); // #frontend void texture_data_upload(texture* tex); // #backend + +// --- Uniforms + +/** @brief upload a vec3 of f32 to a uniform */ +void uniform_vec3f(u32 program_id, const char *uniform_name, vec3 *value); +/** @brief upload a single f32 to a uniform */ +void uniform_f32(u32 program_id, const char *uniform_name, f32 value); +/** @brief upload a integer to a uniform */ +void uniform_i32(u32 program_id, const char *uniform_name, i32 value); +/** @brief upload a mat4 of f32 to a uniform */ +void uniform_mat4f(u32 program_id, const char *uniform_name, mat4 *value);
\ No newline at end of file |