TTF_RenderText_Blended
и другие функции рендеринга шрифта SDL_ttf создают поверхность на основе размера шрифта, указанного при открытии шрифта (вместе с самим стилем шрифта и символами в текстовой строке). Вы масштабируете полученный результат до прямоугольника 500x500, что вызывает искажение пропорций и более яркое изображение, поскольку исходное изображение имеет разные размеры.
Во избежание необходимости сначала изменять масштабирование - используйте surfaceMessage->w
и surfaceMessage->h
(или SDL_QueryTexture
для Message
), чтобы получить исходные размеры, затем RenderCopy в прямоугольник того же размера.
Конечно, если текст статический и не локализован, предварительная визуализация этого статического изображения в каком-либо графическом редакторе также является хорошим вариантом.
Как примечание, это может быть упрощенное копирование-вставка, но кажется, что вы открываете шрифт и воссоздаете целевую текстуру в каждом кадре. Это очень медленно и не дает практически никаких преимуществ.