mirror of
https://github.com/IllusionMan1212/cudoku.git
synced 2026-10-24 02:12:25 +00:00
less stupid code
This commit is contained in:
@@ -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);
|
||||||
|
|||||||
@@ -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);
|
||||||
|
|||||||
@@ -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);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user