commit ec262c7
uint
·
2026-07-31 20:05:21 +0000 UTC
parent f9537fc
add wireframes
6 files changed,
+25,
-4
M
TODO
+1,
-0
1@@ -4,4 +4,5 @@ uint:
2 [X] Chunk meshing
3 [-] Greedily
4 [ ] Fonts
5+[ ] Maus wayland
6
+3,
-0
1@@ -20,6 +20,9 @@ typedef struct {
2 /* game */
3 i32 game_render_distance;
4
5+ /* debug */
6+ i8 debug_wireframe;
7+
8 /* temp */
9 float temp_movement_speed;
10 } MGConfig;
+3,
-0
1@@ -66,4 +66,7 @@ MGTexture renderer_texture_create(const MGTextureDesc* desc);
2 /* destroy texture */
3 void renderer_texture_destroy(MGTexture id);
4
5+/* toggle wireframe view */
6+void renderer_debug_wireframe(i8 enabled);
7+
8 #endif /* RENDERER_H */
+3,
-0
1@@ -20,6 +20,9 @@ void config_default(void)
2 /* game */
3 mg_config.game_render_distance = 32;
4
5+ /* debug */
6+ mg_config.debug_wireframe = 0;
7+
8 /* temp */
9 mg_config.temp_movement_speed = 4.0f;
10 }
+7,
-4
1@@ -1,12 +1,9 @@
2-#include <SDL2/SDL.h>
3 #include <stdio.h>
4 #include <stdlib.h>
5
6-#include "SDL_keyboard.h"
7-#include "SDL_timer.h"
8 #include "config.h"
9-#include "mcproto/mcproto.h"
10 #include "util.h"
11+#include "mcproto/mcproto.h"
12 #include "platform/platform.h"
13 #include "renderer/renderer.h"
14 #include "renderer/test_scene.h"
15@@ -48,6 +45,12 @@ static void input(void)
16 if (keys[SDL_SCANCODE_LCTRL])
17 move.y -= 1.0f;
18
19+ /* debug keys */
20+ if (keys[SDL_SCANCODE_L]) {
21+ mg_config.debug_wireframe = !mg_config.debug_wireframe;
22+ renderer_debug_wireframe(mg_config.debug_wireframe);
23+ }
24+
25 move = MG_MulV3F(move, mg_config.temp_movement_speed * dt);
26 camera_move(&cam, move);
27 SDL_GetRelativeMouseState(&mx, &my);
+8,
-0
1@@ -1,3 +1,4 @@
2+#include <SDL2/SDL_opengl.h>
3 #include <sokol_gfx.h>
4 #include <stb_image_c89.h>
5
6@@ -442,3 +443,10 @@ void renderer_backend_texture_destroy(MGTexture id)
7
8 *texture = (RendererTexture){ 0 };
9 }
10+
11+void renderer_debug_wireframe(i8 enabled)
12+{
13+ glPolygonMode(GL_FRONT_AND_BACK, enabled ? GL_LINE : GL_FILL);
14+ sg_reset_state_cache();
15+}
16+