diff --git a/Makefile b/Makefile index 05f9979..e2941b7 100755 --- a/Makefile +++ b/Makefile @@ -9,8 +9,10 @@ endif UNAME_P != uname -m +CCACHE = ccache + #CC specifies which compiler we're using -CC = clang +CC = $(CCACHE) clang MUSL = /usr/local/musl/include @@ -94,7 +96,7 @@ ifeq ($(UNAME), Windows_NT) EXT = .exe else LINKER_FLAGS = -fuse-ld=lld #/usr/local/lib/tcc/bcheck.o /usr/local/lib/tcc/bt-exe.o /usr/local/lib/tcc/bt-log.o - ELIBS = m c engine editor glfw3 tcc1 + ELIBS = m c engine editor glfw3 CLIBS = EXT = endif diff --git a/source/engine/font.c b/source/engine/font.c index c5bb1ff..30b1406 100755 --- a/source/engine/font.c +++ b/source/engine/font.c @@ -42,7 +42,7 @@ struct sFont *MakeFont(const char *fontfile, int height) int tw,th; - unsigned char *testbitmap = stbtt_GetCodepointBitmap(&fontinfo, 0, stbtt_ScaleForPixelHeight(&fontinfo, 40), 'a', &tw, &th, 0,0); + unsigned char *testbitmap = stbtt_GetCodepointBitmap(&fontinfo, 0, stbtt_ScaleForPixelHeight(&fontinfo, 100), 'G', &tw, &th, 0,0); for (int i = 0; i < th; ++i) { for (int j = 0; j= 5) { - YughError("Already max number of windows.", 5); - } - - struct mSDLWindow *w = &windows[numWindows++]; + struct mSDLWindow *w = calloc(1, sizeof(struct mSDLWindow)); w->width = width; w->height = height; - - if (numWindows > 0) - w->window = glfwCreateWindow(width, height, name, NULL, windows[0].window); - else - w->window = glfwCreateWindow(width, height, name, NULL, NULL); + w->window = glfwCreateWindow(width, height, name, NULL, NULL); if (!w->window) { printf("Couldn't make GLFW window\n"); @@ -37,11 +29,15 @@ struct mSDLWindow *MakeSDLWindow(const char *name, int width, int height, glfwSwapInterval(1); - w->id = numWindows-1; + w->id = numWindows; + + + if (numWindows < 5) + windows[numWindows++] = w; } - mainwin = &windows[0]; + mainwin = windows[0]; return w; } @@ -136,7 +132,7 @@ void window_handle_event(struct mSDLWindow *w) void window_all_handle_events() { for (int i = 0; i < numWindows; i++) { - window_handle_event(&windows[i]); + window_handle_event(windows[i]); } }