Browse Source

Renderer API with shorter names

Typing (and also reading) prefix "renderer_" all the time is too much
for me, sorry.
rexim 3 years ago
parent
commit
d75efe442b
1 changed files with 21 additions and 36 deletions
  1. 21 36
      main.c

+ 21 - 36
main.c

@@ -184,7 +184,7 @@ static double time = 0.0;
 static bool pause = false;
 static Renderer global_renderer = {0};
 
-void renderer_push_vertex(Renderer *r, V2f pos, V2f uv, V4f color)
+void r_vertex(Renderer *r, V2f pos, V2f uv, V4f color)
 {
     assert(r->vertex_buf_sz < VERTEX_BUF_CAP);
     r->vertex_buf[r->vertex_buf_sz].pos = pos;
@@ -193,38 +193,23 @@ void renderer_push_vertex(Renderer *r, V2f pos, V2f uv, V4f color)
     r->vertex_buf_sz += 1;
 }
 
-void renderer_push_quad(Renderer *r, V2f p1, V2f p2, V4f color)
+void r_quad_pp(Renderer *r, V2f p1, V2f p2, V4f color)
 {
     V2f a = p1;
     V2f b = v2f(p2.x, p1.y);
     V2f c = v2f(p1.x, p2.y);
     V2f d = p2;
 
-    renderer_push_vertex(r, a, v2f(0.0f, 0.0f), color);
-    renderer_push_vertex(r, b, v2f(1.0f, 0.0f), color);
-    renderer_push_vertex(r, c, v2f(0.0f, 1.0f), color);
+    r_vertex(r, a, v2f(0.0f, 0.0f), color);
+    r_vertex(r, b, v2f(1.0f, 0.0f), color);
+    r_vertex(r, c, v2f(0.0f, 1.0f), color);
 
-    renderer_push_vertex(r, b, v2f(1.0f, 0.0f), color);
-    renderer_push_vertex(r, c, v2f(0.0f, 1.0f), color);
-    renderer_push_vertex(r, d, v2f(1.0f, 1.0f), color);
+    r_vertex(r, b, v2f(1.0f, 0.0f), color);
+    r_vertex(r, c, v2f(0.0f, 1.0f), color);
+    r_vertex(r, d, v2f(1.0f, 1.0f), color);
 }
 
-void renderer_push_checker_board(Renderer *r, int grid_size)
-{
-    float cell_width = 2.0f/grid_size;
-    float cell_height = 2.0f/grid_size;
-    for (int y = 0; y < grid_size; ++y) {
-        for (int x = 0; x < grid_size; ++x) {
-            renderer_push_quad(
-                r,
-                v2f(-1.0f + x*cell_width, -1.0f + y*cell_height),
-                v2f(-1.0f + (x + 1)*cell_width, -1.0f + (y + 1)*cell_height),
-                (x + y)%2 == 0 ? v4f(1.0f, 0.0f, 0.0f, 1.0f) : v4f(0.0f, 0.0f, 0.0f, 1.0f));
-        }
-    }
-}
-
-void renderer_sync(Renderer *r)
+void r_sync(Renderer *r)
 {
     glBufferSubData(GL_ARRAY_BUFFER,
                     0,
@@ -318,7 +303,7 @@ void reload_render_conf(const char *render_conf_path)
     }
 }
 
-void renderer_reload_textures(Renderer *r)
+void r_reload_textures(Renderer *r)
 {
     int texture_width, texture_height;
     unsigned char *texture_pixels = stbi_load(texture_path, &texture_width, &texture_height, NULL, 4);
@@ -350,7 +335,7 @@ void renderer_reload_textures(Renderer *r)
     stbi_image_free(texture_pixels);
 }
 
-void renderer_reload_shaders(Renderer *r)
+void r_reload_shaders(Renderer *r)
 {
     glDeleteProgram(r->program);
 
@@ -384,8 +369,8 @@ void key_callback(GLFWwindow* window, int key, int scancode, int action, int mod
     if (action == GLFW_PRESS) {
         if (key == GLFW_KEY_F5) {
             reload_render_conf("render.conf");
-            renderer_reload_textures(&global_renderer);
-            renderer_reload_shaders(&global_renderer);
+            r_reload_textures(&global_renderer);
+            r_reload_shaders(&global_renderer);
         } else if (key == GLFW_KEY_F6) {
 #define SCREENSHOT_PNG_PATH "screenshot.png"
             printf("Saving the screenshot at %s\n", SCREENSHOT_PNG_PATH);
@@ -441,7 +426,7 @@ void MessageCallback(GLenum source,
             type, severity, message);
 }
 
-void renderer_init(Renderer *r)
+void r_init(Renderer *r)
 {
 
     glGenVertexArrays(1, &r->vao);
@@ -476,7 +461,7 @@ void renderer_init(Renderer *r)
                           (void*) offsetof(Vertex, color));
 }
 
-void renderer_clear(Renderer *r)
+void r_clear(Renderer *r)
 {
     r->vertex_buf_sz = 0;
 }
@@ -530,10 +515,10 @@ int main(void)
     glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
 
 
-    renderer_init(&global_renderer);
+    r_init(&global_renderer);
 
-    renderer_reload_textures(&global_renderer);
-    renderer_reload_shaders(&global_renderer);
+    r_reload_textures(&global_renderer);
+    r_reload_shaders(&global_renderer);
 
     glfwSetKeyCallback(window, key_callback);
     glfwSetFramebufferSizeCallback(window, window_size_callback);
@@ -554,13 +539,13 @@ int main(void)
             glUniform1f(global_renderer.uniforms[TIME_UNIFORM], (GLfloat) time);
             glUniform2f(global_renderer.uniforms[MOUSE_UNIFORM], (GLfloat) xpos, (GLfloat) (height - ypos));
 
-            renderer_clear(&global_renderer);
-            renderer_push_quad(
+            r_clear(&global_renderer);
+            r_quad_pp(
                 &global_renderer,
                 v2f(width * -0.5f, height * -0.5f),
                 v2f(width * 0.5f, height * 0.5f),
                 COLOR_BLACK_V4F);
-            renderer_sync(&global_renderer);
+            r_sync(&global_renderer);
 
             glDrawArraysInstanced(GL_TRIANGLES, 0, (GLsizei) global_renderer.vertex_buf_sz, 1);
         }