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

[SFML] Licznik FPS

Ostatnio zmodyfikowano 2013-09-28 13:19
Autor Wiadomość
fers334
Temat założony przez niniejszego użytkownika
[SFML] Licznik FPS
» 2013-09-20 12:27:09
Siemanko.

Mam problem z zrobieniem licznika fps w sfml wcześniej miałem do czynienia z SDL i tam taki licznik robiłem za pomocą timerów . Na razie zrobiłem w sfml oto takie coś :
C/C++
_frame++; // Liczy klatki programu

if( _clock.getElapsedTime().asSeconds() > 1 ) // Gdy upłynie 1 sekunda
{
    std::stringstream strum;
    strum << " FPS -> [" << _frame << "]";
    _text.setString( strum.str() );
   
    _clock.restart(); // resetuje czas
    _frame = 0; // resetuje liczbę klatek
}
Teraz moje pytanie, czy taki licznik jest poprawny , ponieważ czasami skacze mi np. przez 10 sek mam 500fps a nagle pokazuje mi 100 i nagle ponownie 500 + czasami zdarza się nie wiem dlaczego gdy wyświetla tekst to znika cyfra np:
FPS -> [2_2]
// znika środkowa cyfra np. nie wiem dlaczego.

Był bym wdzięczny jakby ktoś podał własny licznik fps w SFML.

Z góry dzięki za pomoc.
P-92348
MrPoxipol
» 2013-09-20 15:08:48
P-92356
fers334
Temat założony przez niniejszego użytkownika
» 2013-09-20 15:13:56
okey dzięki.

Całkiem podobny do mojego,błędy z tekstem i inne się już nie pojawiają nie mam pojęcia czego to była wina bo nic nie zmieniałem,ważne że działa.

I tak wielkie dzięki.
P-92358
fers334
Temat założony przez niniejszego użytkownika
» 2013-09-28 11:47:41
Siemka mam problem przy nowym programie ponownie mam ten sam problem z tekstem oto kod :

C/C++
void Fps_Counter::Update()
{
    if( _running == true )
    {
        ++_fps;
        if( _clock.getElapsedTime().asSeconds() >= 1.f )
        {
            _text.setString( Get_String_Fps( _fps ) );
            _fps = 0;
            _clock.restart();
        }
    }
}

A w głównej pętli wygląda to tak :
C/C++
In_Start();

while( _window.isOpen() )
{
    Control();
    Update();
    Render();
   
    _fps_counter.Update();
}

In_Last();

W funkcji Render wyświetlam tekst z wartością fps.Problem w tym że dopóty nie ruszę oknem aplikacji tekst wyświetla się z błędami np.

 // zamiast cyfry ( tutaj zaznaczonej znakiem '_' ) wyświetla sie puste miejsce

2_2  ,  __2 , ___ ( Całość pusta ) , itd.

Czego to może być wina ?
P-92780
fers334
Temat założony przez niniejszego użytkownika
» 2013-09-28 13:19:52
Rozwiązałem problem.Wystarczyło zmienić czcionkę.
Czcionkę którą używałem przy pojawiającym się błędzie była : MARANALL

Nie wiem czy to była wina czcionki ale już wszystko działa.
P-92782
« 1 »
  Strona 1 z 1