#include #include "voxel.h" #include "window.h" #include "shader.h" #include "mesh.h" int main(void) { Shader *shader; Chunk *chunk; Mesh mesh; Camera camera; mat4 proj_view; if (window_init()) return 1; shader = shader_init("assets/vertex.glsl", "assets/fragment.glsl"); if (!shader) return 1; chunk = chunk_init(0, 0, 0); chunk_generate(chunk); mesh = chunk_mesh(chunk); camera = camera_init(); while (!window_closed()) { window_update(); if (key_down(GLFW_KEY_ESCAPE)) break; camera_update(&camera); camera_proj_view(&camera, proj_view); shader_bind(shader); shader_load_mat4(0, proj_view); mesh_bind(&mesh); mesh_draw(&mesh); mesh_unbind(&mesh); shader_unbind(); // main game loop window_swap(); } window_close(); return 0; }