FPS ?Malheureusement pour les plus
CallOfDutiesque d'entre vous, nous ne parlons pas de faire un
First
Person
Shooter avec AGS, mais juste d'afficher le nombre d'images par seconde (
Frames
Per
Second) dans votre projet.
Pourquoi faire ?Et bien, tout simplement pour estimer l'impact sur les performances d'une étape un peu calculatoire (grosse fonction, rotation de gros sprites,
etc.), afin de l'optimiser au mieux.
Comment faire ?Au début, j'étais partie pour faire un module dans lequel une variable était incrémentée à chaque cycle de jeu, et sa valeur affichée et réinitialisée toute les secondes. Mais avant de me lancer je me suis dit que j'allais quand même vérifier si l'option n'était pas déjà implémentée nativement. Et j'ai bien fait, car cette option est déjà implémenté nativement dans AGS.
Il suffit d'utiliser la fonction
Debug, par exemple dans le
game_start du
GlobalScript.asc :
- Code:
-
// called when the game starts, before the first room is loaded
function game_start()
{
Debug(4, 1); //4 pour FPS, 1 pour l'afficher.
}
Petite particularité, les fonctions
debug ne sont exécutées que si le projet est compilé en mode Debug (option du
General Settings)
Et voilà le résultats, en bas à gauche de l'écran :
Dernière partie(Quel nom de section original !)
La police employée est la font 1 de votre projet. La couleur est jaune canarie sans que ce soit réglable.
- lecteur puissant a écrit:
- Hé, didons là, c'est n'importe quoi ! J'ai un processeur 32 coeurs cadencées à 5Ghz, et trois cartes graphiques derniers cris en Sli. J'ai plus de 850 FPS sur le dernier Counter Strike, et sur mon minable projet AGS je stagne à 40 !!! C'est quoi ce scandale ?
C'est tout à fait normale, le nombre d'image par seconde maximum d'un jeu AGS correspond au nombre de cycle par seconde du projet (
voir SetGameSpeed).
- lecteur malin a écrit:
- Hé, didons là, c'est n'importe quoi ce que tu viens de dire, mon GameSpeed est à 40, et j'ai vu un 41 affiché !!!
Pour des question de dénombrement et d'arrondi, si le projet est fluide, le nombre de FPS affiché est centré autour du GameSpeed +/- 2, donc on peut apercevoir des 41, pas de contradictions.
Si vous voulez afficher le FPS ailleurs dans l’écran, dans une autre couleur, ou avec le mode Debug désactivé, je pense malheureusement qu'il faudra passer par un module...