Lokalizacja: Poznań
Ignorowany przez 34 użytkowników
@sordan,
post #44
"Czy to slabosc Amosa?"
Absolutnie tak. Wynika to z faktu, ze tryb Double Buffer (podwojne buforowanie) w trybie automatycznym jest duzo duzo wolniejszy od zwyklego (bufor pojedynczy) ekranu.
Aby temu zaradzic stosuje sie metode kilku ekranow. Mozna otworzyc az 8 niezaleznych ekranow o roznych parametrach (inna rozdzielczosc, paleta ) ale moga byc one ustawiane tylko w pionie czyli jeden nad lub pod drugim, nie mozna ich ustawic jeden obok drugiego.
W tym przypadku Double Buffer powinien byc uzyty w ekranie akcji (tam gdzie sie poruszaja boby itd. ) tak jak masz a cala gorna czesc z punktami, zyciami , kluczami itd.. powinna byc osobnym ekranem.
czyli otwierasz swoj glowny ekran gry
screen open 0,320,200,32,lowres
flash off : curs off : cls 0
double buffer
autoback 2
....
a tu otwierasz mniejszy ekran pomocniczy dla punktow
screen open 1,320,48,32,lowres
flash off : curs off : cls 0
print at(x,y);"Poziom :";poz
print at(x,y);"Punkty :";pkt
print at(x,y);"Zycia :";zyc
...
teraz aktywujesz swoj ekran glowny 0 (tzn. ze operacje graficzne beda dotyczyc ekranu 0)
Screen 0
...
tutaj znajduje sie glowna petla gry
Petla_glowna:
a instrukcja dotyczaca
If Bob Col(3,0 to 1) Then Bell : Bob Off 3: PUNKTY=PUNKTY+10 : Locate 2,3 : Gosub Wyswietl_Punkty
...
..
Goto Petla_glowna
Wyswietl_Punkty:
screen 1 : rem aktywacja ekranu pomocniczego 1
print at(x,y);"Punkty :";pkt
wait vbl
screen 0 : rem aktywacja ekranu glownego gry 0
return : rem powrot do glownego programu