less stupid code

This commit is contained in:
2023-09-08 01:51:09 +02:00
parent fe99a4c9ff
commit 978f60d762
3 changed files with 15 additions and 22 deletions
+4 -18
View File
@@ -35,17 +35,10 @@ unsigned int prepare_bg_rect() {
return vao; return vao;
} }
void draw_bg_rect(Shader shader, unsigned int vao, float x_scale, float y_scale) { void draw_bg_rect(Shader shader, unsigned int vao, float* transform) {
use_shader(shader); use_shader(shader);
float mat[4][4] = { set_mat4(shader, "transform", transform);
{x_scale, 0, 0, 0},
{0, y_scale, 0, 0},
{0, 0, 1, 0},
{0, 0, 0, 1},
};
set_mat4(shader, "transform", (float *)mat);
glBindVertexArray(vao); glBindVertexArray(vao);
glDrawElements(GL_TRIANGLES, 6, GL_UNSIGNED_INT, 0); glDrawElements(GL_TRIANGLES, 6, GL_UNSIGNED_INT, 0);
@@ -54,17 +47,10 @@ void draw_bg_rect(Shader shader, unsigned int vao, float x_scale, float y_scale)
/* glBindVertexArray(0); */ /* glBindVertexArray(0); */
} }
void draw_bg_lines(Shader shader, float x_scale, float y_scale, float resolution) { void draw_bg_lines(Shader shader, float* transform, float resolution) {
use_shader(shader); use_shader(shader);
float mat[4][4] = { set_mat4(shader, "transform", transform);
{x_scale, 0, 0, 0},
{0, y_scale, 0, 0},
{0, 0, 1, 0},
{0, 0, 0, 1},
};
set_mat4(shader, "transform", (float *)mat);
set_float(shader, "resolution", resolution); set_float(shader, "resolution", resolution);
glDrawArrays(GL_TRIANGLES, 0, 6); glDrawArrays(GL_TRIANGLES, 0, 6);
+2 -2
View File
@@ -3,5 +3,5 @@
#include "shader.h" #include "shader.h"
unsigned int prepare_bg_rect(Shader shader); unsigned int prepare_bg_rect(Shader shader);
void draw_bg_rect(Shader shader, unsigned int vao, float x_scale, float y_scale); void draw_bg_rect(Shader shader, unsigned int vao, float* transform);
void draw_bg_lines(Shader shader, float x_scale, float y_scale, float resolution); void draw_bg_lines(Shader shader, float* transform, float resolution);
+9 -2
View File
@@ -68,8 +68,15 @@ int main() {
glClearColor(0.0, 0.0, 0.0, 1.0); glClearColor(0.0, 0.0, 0.0, 1.0);
glClear(GL_COLOR_BUFFER_BIT); glClear(GL_COLOR_BUFFER_BIT);
draw_bg_rect(board_shader, board_vao, x_scale, y_scale); float transform[4][4] = {
draw_bg_lines(grid_shader, x_scale, y_scale, width < height ? width : height); {x_scale, 0, 0, 0},
{0, y_scale, 0, 0},
{0, 0, 1, 0},
{0, 0, 0, 1},
};
draw_bg_rect(board_shader, board_vao, (float *)transform);
draw_bg_lines(grid_shader, (float *)transform, width < height ? width : height);
glXSwapBuffers(display, window); glXSwapBuffers(display, window);
} }