Core
A Janela e o Tempo (FPS)
Módulo: PPlay.window | Dificuldade: Iniciante
A Window é a espinha dorsal do seu jogo. Ela implementa o padrão Singleton, o que significa que existe apenas uma janela gerenciando os gráficos, os eventos e a velocidade do jogo.
1. Resolução Virtual (Anti-Blur)
Na Power PPlay 2.0, você programa o jogo para uma resolução pequena (ex: 400×300), mas a engine o projeta em Full HD. O parâmetro pixel_art define como essa imagem será esticada.
| Parâmetro | Efeito Visual |
|---|---|
pixel_art=True |
Mantém os pixels “crocantes” e quadrados. Ideal para jogos retrô. |
pixel_art=False |
Aplica filtro Bilinear (suavização). Ideal para HD e desenhos vetoriais. |
2. O Sagrado “Delta Time”
Nunca mova personagens usando x += 5. Se um PC roda a 30 FPS e o outro a 144 FPS, o jogo ficará desequilibrado. Sempre multiplique pela função janela.delta_time(), que converte a velocidade para pixels por segundo.
from PPlay.window import Window
janela = Window(800, 600, "Meu Jogo 2.0", pixel_art=True)
pos_x = 0
while True:
janela.set_background_color((15, 20, 30))
# Move a exatos 200 pixels por segundo, independente do PC!
pos_x += 200 * janela.delta_time()
janela.draw_text(f"FPS: {int(janela.get_fps())}", 10, 10, cor="green")
# O update finaliza o desenho e calcula o próximo Delta Time
janela.update()