Zmiana sposobu odświeżania obrazu #9

Closed
opened 2021-03-14 19:45:26 +01:00 by s452645 · 2 comments
Collaborator

Obecnie pętla while w main.py jest wywoływana tak często, jak to tylko możliwe. Sprawia to, że obraz jest odświeżany z różną częstotliwością na różnym sprzęcie, przy czym są to wartości rzędu przynajmniej kilkuset razy na sekundę - zdecydowanie za dużo.

Do tego, wywoływana funkcja draw() od nowa rysuje wszystkie kafelki, miny i sapera.

TODO:

  • Dodać stałą wartość FPS, która zdefiniuje częstotliowość odświeżania obrazu (wyjaśnione tutaj: https://youtu.be/jO6qQDNa2UY?t=944 - timestamp ustawiony na odpowiedni moment)

  • Nowa metoda w minefield.py, która będzie wywoływana za każdym razem w głównej pętli. Będzie odświeżać jedynie sapera, jako że kafelki i miny przez większość czasu pozostają takie same. Odświeżanie wyświetlania min i kafelek w przyszłości powinno być implementowane w osobnych metodach, zmieniających ich stan (np. rozbrajanie)

Obecnie pętla while w *main.py* jest wywoływana tak często, jak to tylko możliwe. Sprawia to, że obraz jest odświeżany z różną częstotliwością na różnym sprzęcie, przy czym są to wartości rzędu przynajmniej kilkuset razy na sekundę - zdecydowanie za dużo. Do tego, wywoływana funkcja *draw()* od nowa rysuje wszystkie kafelki, miny i sapera. **TODO:** * Dodać stałą wartość FPS, która zdefiniuje częstotliowość odświeżania obrazu (wyjaśnione tutaj: https://youtu.be/jO6qQDNa2UY?t=944 - timestamp ustawiony na odpowiedni moment) * ~~Nowa metoda w *minefield.py*, która będzie wywoływana za każdym razem w głównej pętli. Będzie odświeżać jedynie sapera, jako że kafelki i miny przez większość czasu pozostają takie same. Odświeżanie wyświetlania min i kafelek w przyszłości powinno być implementowane w osobnych metodach, zmieniających ich stan (np. rozbrajanie)~~
s452645 self-assigned this 2021-03-14 19:45:26 +01:00
s452645 added the due date 2021-03-17 2021-03-14 19:46:19 +01:00
Author
Collaborator

Zajmę się tym jakby co, bo to w sumie był mój błąd ;) (sorki)

Zajmę się tym jakby co, bo to w sumie był mój błąd ;) (sorki)
Author
Collaborator

Okazuje się, że pygame z założenia tak po prostu działa - z każdą klatką rysuje od nowa całą mapę i nie da się przesuwać tylko jednego obiektu. Wobec tego dodałem jedynie ograniczenie FPS'ów i zamykam.

Okazuje się, że pygame z założenia tak po prostu działa - z każdą klatką rysuje od nowa całą mapę i nie da się przesuwać tylko jednego obiektu. Wobec tego dodałem jedynie ograniczenie FPS'ów i zamykam.
Sign in to join this conversation.
No Label
No Milestone
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

2021-03-17

Dependencies

No dependencies set.

Reference: s452711/Projekt_Sztuczna_Inteligencja#9
No description provided.