From ea27fe123db029f139ddd80be37b1049e8e9cc8f Mon Sep 17 00:00:00 2001 From: AdaLovegirls <37942530+AdaLovegirls@users.noreply.github.com> Date: Thu, 25 Jun 2020 06:31:06 -0500 Subject: [PATCH] Added sdl2-ttf example to sdl2-demo (#80) --- graphics/sdl2/sdl2-demo/Makefile | 2 +- .../romfs/data/LeroyLetteringLightBeta01.ttf | Bin 0 -> 46780 bytes graphics/sdl2/sdl2-demo/source/main.c | 31 ++++++++++++++++-- 3 files changed, 30 insertions(+), 3 deletions(-) create mode 100644 graphics/sdl2/sdl2-demo/romfs/data/LeroyLetteringLightBeta01.ttf diff --git a/graphics/sdl2/sdl2-demo/Makefile b/graphics/sdl2/sdl2-demo/Makefile index 7e15699..e4fdd84 100644 --- a/graphics/sdl2/sdl2-demo/Makefile +++ b/graphics/sdl2/sdl2-demo/Makefile @@ -62,7 +62,7 @@ CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions ASFLAGS := -g $(ARCH) LDFLAGS = -specs=$(DEVKITPRO)/libnx/switch.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map) -LIBS := `$(PREFIX)pkg-config --libs sdl2 SDL2_mixer SDL2_image` \ +LIBS := `$(PREFIX)pkg-config --libs sdl2 SDL2_mixer SDL2_image SDL2_ttf` \ -lnx #--------------------------------------------------------------------------------- diff --git a/graphics/sdl2/sdl2-demo/romfs/data/LeroyLetteringLightBeta01.ttf b/graphics/sdl2/sdl2-demo/romfs/data/LeroyLetteringLightBeta01.ttf new file mode 100644 index 0000000000000000000000000000000000000000..03029862b87e73647acbea105361e159250faa38 GIT binary patch literal 46780 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 C#J%qT literal 0 HcmV?d00001 diff --git a/graphics/sdl2/sdl2-demo/source/main.c b/graphics/sdl2/sdl2-demo/source/main.c index caa1b88..d5b4d95 100644 --- a/graphics/sdl2/sdl2-demo/source/main.c +++ b/graphics/sdl2/sdl2-demo/source/main.c @@ -1,5 +1,5 @@ /* Mini SDL Demo - * featuring SDL2 + SDL2_mixer + SDL2_image + * featuring SDL2 + SDL2_mixer + SDL2_image + SDL2_ttf * on Nintendo Switch using libnx * * Copyright 2018 carsten1ns @@ -25,6 +25,7 @@ #include #include #include +#include #include // some switch buttons @@ -42,6 +43,23 @@ #define SCREEN_W 1280 #define SCREEN_H 720 +void render_text(SDL_Renderer *renderer, int x, int y, const char* text, TTF_Font *font, SDL_Rect *rect, SDL_Color *color) +{ + SDL_Surface *surface; + SDL_Texture *texture; + + surface = TTF_RenderText_Solid(font, text, *color); + texture = SDL_CreateTextureFromSurface(renderer, surface); + rect->x = x; + rect->y = y; + rect->w = surface->w; + rect->h = surface->h; + + SDL_FreeSurface(surface); + SDL_RenderCopy(renderer, texture, NULL, rect); + SDL_DestroyTexture(texture); +} + int rand_range(int min, int max){ return min + rand() / (RAND_MAX / (max - min + 1) + 1); } @@ -61,6 +79,7 @@ int main(int argc, char** argv) { Mix_Music *music = NULL; Mix_Chunk *sound[4] = { NULL }; SDL_Event event; + SDL_Rect rect; SDL_Color colors[] = { { 128, 128, 128, 0 }, // gray @@ -81,8 +100,9 @@ int main(int argc, char** argv) { SDL_Init(SDL_INIT_VIDEO|SDL_INIT_TIMER); Mix_Init(MIX_INIT_OGG); IMG_Init(IMG_INIT_PNG); + TTF_Init(); - SDL_Window* window = SDL_CreateWindow("sdl2+mixer+image demo", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, SCREEN_W, SCREEN_H, SDL_WINDOW_SHOWN); + SDL_Window* window = SDL_CreateWindow("sdl2+mixer+image+ttf demo", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, SCREEN_W, SCREEN_H, SDL_WINDOW_SHOWN); SDL_Renderer* renderer = SDL_CreateRenderer(window, -1, SDL_RENDERER_SOFTWARE); // load logos from file @@ -109,6 +129,9 @@ int main(int argc, char** argv) { SDL_InitSubSystem(SDL_INIT_JOYSTICK); SDL_JoystickEventState(SDL_ENABLE); SDL_JoystickOpen(0); + + // load font from romfs + TTF_Font* font = TTF_OpenFont("data/LeroyLetteringLightBeta01.ttf", 36); SDL_InitSubSystem(SDL_INIT_AUDIO); Mix_AllocateChannels(5); @@ -196,6 +219,9 @@ int main(int argc, char** argv) { SDL_SetTextureColorMod(switchlogo_tex, colors[col].r, colors[col].g, colors[col].b); SDL_RenderCopy(renderer, switchlogo_tex, NULL, &pos); } + + // put text on screen + render_text(renderer, 0, SCREEN_H - 36, "Hello, world!", font, &rect, &colors[1]); SDL_RenderPresent(renderer); @@ -211,6 +237,7 @@ int main(int argc, char** argv) { IMG_Quit(); Mix_CloseAudio(); + TTF_Quit(); Mix_Quit(); SDL_Quit(); romfsExit();