ObstacleGame/Helper.cpp

36 lines
963 B
C++

#include "Helper.h"
void drawTexture(SDL_Renderer *renderer, SDL_Texture *texture, int x, int y, int w, int h) {
SDL_Rect src;
src.x = 0;
src.y = 0;
SDL_QueryTexture(texture, nullptr, nullptr, &src.w, &src.h);
SDL_Rect dist;
dist.x = x;
dist.y = y;
dist.w = w;
dist.h = h;
SDL_RenderCopy(renderer, texture, &src, &dist);
}
void drawText(SDL_Renderer *renderer, TTF_Font *font, const std::string text, int x, int y) {
SDL_Surface *surface = TTF_RenderText_Solid(font, text.c_str(), {255, 255, 255});
SDL_Texture *texture = SDL_CreateTextureFromSurface(renderer, surface);
SDL_Rect src;
src.x = 0;
src.y = 0;
SDL_QueryTexture(texture, nullptr, nullptr, &src.w, &src.h);
SDL_Rect dist;
dist.x = x;
dist.y = y;
TTF_SizeText(font, text.c_str(), &dist.w, &dist.h);
SDL_RenderCopy(renderer, texture, &src, &dist);
SDL_FreeSurface(surface);
SDL_DestroyTexture(texture);
}