Open AntTheAlchemist opened 2 days ago
@icculus probably knows what's going on here.
A little test to reproduce. SDL_RenderDebugText
is SO useful!
#include <SDL3/SDL_main.h>
#include <SDL3/SDL.h>
int main(int argc, char** argv) {
SDL_Init(SDL_INIT_VIDEO);
SDL_Window* win = SDL_CreateWindow(nullptr, 500, 500, SDL_WINDOW_RESIZABLE | SDL_WINDOW_HIGH_PIXEL_DENSITY);
SDL_Renderer* ren = SDL_CreateRenderer(win, nullptr);
SDL_SetRenderVSync(ren, 1);
SDL_SetRenderScale(ren, 0.5f, 0.5f);
bool running = true;
while(running) {
SDL_PumpEvents();
SDL_Event event;
while (SDL_PeepEvents(&event, 1, SDL_GETEVENT, SDL_EVENT_FIRST, SDL_EVENT_LAST) == 1) {
switch (event.type) {
case SDL_EVENT_QUIT:
running = false;
break;
}
}
SDL_SetRenderDrawColor(ren, 0, 0, 0, SDL_ALPHA_OPAQUE);
SDL_RenderClear(ren);
SDL_SetRenderDrawColor(ren, 0, 255, 0, SDL_ALPHA_OPAQUE);
for(int r = 0; r < 500; r++)
SDL_RenderDebugText(ren, SDL_randf() * 1000, SDL_randf() * 1000, "*");
SDL_RenderPresent(ren);
SDL_Delay(100);
}
SDL_DestroyRenderer(ren);
SDL_DestroyWindow(win);
SDL_Quit();
return 0;
}
Ah, yes. ef758d0 broke things for me.
A recent change has caused textures to be cut-off from being drawn (clipped) when a scale is being set. Seems to affecting all renderers and platforms.
SDL_SetRenderScale(renderer, 0.5f, 0.5f)
will see textures only being draw on the top-left quarter of the window.The cause of this will probably be clear to whomever made a recent commit relating to texture clipping logic / viewport.