FPS Anzeigen

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Guten Tag, ich möchte in einem Textdraw die Aktuellen FPS anzeigen lassen, doch wie genau stelle ich das an? Folgendes habe ich bereits:


    Textdraw +


    forward DisplayFPS();


    public DisplayFPS()
    {
    for(new i; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i))
    {
    new str[16];
    format(str,sizeof(str),"FPS: %d", FPS);
    TextDrawSetString(FPS[i],str);
    }
    }



    Mit welcher Funktion bekomme ich nun die FPS heraus? Würde mich über hilfe freuen :)

  • es geht irgendwie mit SetPlayerDrunkLevel aber würde ich nicht machen(da manche auch mit betrunken machen ist dass laggi)
    ich weiß jetzt nicht ob OnPlayerUpdate die Frames oder Updates zum Server sind
    aber ich versuche gleich erstmal etwas(und schicke es euch)


    /e mein ergebnis


    dass habe ich schnell mal geschrieben

    #include <a_samp>


    #define GetPlayerFPS(%0) Framerate[%0][1]//verkürtze abfrage


    new Framerate[MAX_PLAYERS][2];//Framerate mit 2-Array


    public OnGameModeInit()
    {
    SetTimer("UpdateTicks", 1000, 1);//1Sek Timer
    return 1;
    }


    forward UpdateTicks();
    public UpdateTicks()
    {
    for(new i = 0; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i))
    {
    Framerate[i][1] = Framerate[i][0];//Totale Frames per Second von Ticks
    Framerate[i][0] = 0;//Ticks zurücksetzen
    }
    return 1;
    }


    public OnPlayerUpdate(playerid)
    {
    Framerate[playerid][0]++;// Ticks Update
    return 1;
    }


    müsste eig gehen musste gucken


    MFG Piet

  • Also ich habe meins getestet und es stimmt mit meiner FPS überein

    Wie bekomme ich nun die FPS-Anzahl in meinen Textdraw rein? :/



    Edit; Jemand anders vielleicht eine Idee wie ich es in mein Textdraw bekomme?
    Edit2;


    Niemand eine Idee, muss die FPS-Anzahl nur in meinen Textdraw bekommen, danke im voraus. :/

    2 Mal editiert, zuletzt von varrez ()

  • Hab das jetzt so (mit dem gleichem was Piet gepostet hat):


    public updateanzeige()
    {
    for(new playerid = 0; playerid < GetMaxPlayers(); playerid++)
    {
    if(IsPlayerConnected(playerid))
    {
    new str[16];
    format(str,sizeof(str),"Kills: %d",Spieler[playerid][Kills]);
    TextDrawSetString(kills[playerid],str);
    format(str,sizeof(str),"Tode: %d",Spieler[playerid][Tode]);
    TextDrawSetString(deaths[playerid],str);

    format(str,sizeof(str), "FPS: %s", GetPlayerFPS(playerid));
    TextDrawSetString(FPS[playerid], str);
    }
    }
    return 1;
    }


    Ingame steht dann immer noch "FPS:" aber keine Anzahl