Динамический текст без .fill() Pygame?
Есть текст который обновляется в главном цикле (f'Buffer size: {len(pbuffer.buffer)}.'), и когда размер массива pbuffer.buffer обновляется, то в тексте такая каша:
Я знаю что можно исправить через screen.fill((0, 0, 0)), но тогда у меня ломаются другие механики. Как можно применить screen.fill только для текста?
Пример кода:
from pygame import (init as pg_init, quit as pg_quit,QUIT as ev_quit, K_c as key_c)
from pygame.display import (set_mode, set_caption as win_title, flip as display_flip)
from pygame.rect import Rect
from pygame.draw import rect
from pygame.font import init as font_init, SysFont
from pygame.event import get as pg_ev_get
from pygame.key import get_pressed
from sys import exit as sys_exit
pg_init()
font_init()
window = set_mode((800, 800))
win_title('titl')
running = True
font = SysFont('Arial', 16)
x = 30
while running:
r_rect = Rect(x, 0, 50, 50)
_rect = rect(window, (255, 255, 255), r_rect)
window.blit(font.render(str(x), True, (255, 255, 255)), (0, 0))
for event in pg_ev_get():
# Handle close event.
if event.type == ev_quit:
pg_quit()
sys_exit(0)
keys = get_pressed()
if keys[key_c]:
x += 1
display_flip()
Источник: Stack Overflow на русском