Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

setFrameLimit() w Allegro 4

Ostatnio zmodyfikowano 2015-04-12 10:40
Autor Wiadomość
Brunon3
Temat założony przez niniejszego użytkownika
» 2015-04-12 10:40:55
@up: Czyli który sposób jest dobry? Denerwują mnie takie odpowiedzi, jak w jakiejś Wyroczni.

EDIT:

Więc kod game() wygląda teraz tak:

C/C++
// Przez przypadek kod został stracony podczas edycji postu

I dalej nie działa. :( ???

EDIT2:

Posiedziałem jeszcze trochę nad tym, i zrobiłem wyświetlanie FPS'ów. 100. A Fraps pokazuje ~150! Czyli to nie wina programu, tylko Fraps'a. >:(

KOD:

C/C++
void game() {
    install_timer();
    install_int( increment_speed, 10 );
    install_int_ex( increment_speed, BPS_TO_TIMER( 60 ) );
    install_sound( DIGI_AUTODETECT, MIDI_AUTODETECT, "" );
    set_volume( 255, 255 );
    set_display_switch_mode( SWITCH_BACKGROUND );
    install_int_ex( game_time_ticker, BPS_TO_TIMER( 10 ) );
   
    Start();
   
    play_sample( music, 255, 127, 750, 1 );
   
    int frames_done = 0;
    int old_time = 0;
   
    while( run ) {
        while( speed == 0 && run )
        {
            rest( 1 );
           
            if( key[ KEY_ESC ] )
                 run = false;
           
        }
        while( speed > 0 && run )
        {
            int old_speed = speed;
           
            Update();
           
            speed--;
           
            if( old_speed <= speed )
                 break;
           
        }
        // FPS->
        if( game_time - old_time >= 10 && run )
        {
            fps = frames_done;
           
            frames_done = 0;
            old_time = game_time;
           
            if( key[ KEY_ESC ] )
                 run = false;
           
        }
        frames_done++;
        // <-FPS
    }
   
    stop_sample( music );
    destroy_sample( music );
    allegro_exit();
}

Problem rozwiązany. Poczekam, może ktoś ma jeszcze jakieś uwagi, jeśli nie, zamknę temat.

Pozdrawiam. :)

-BD.
P-130635
1 « 2 »
Poprzednia strona Strona 2 z 2