Comment contrôler le temps dans vos jeux en utilisant PyGame

Avez-vous déjà eu l’intention de créer un jeu étonnant en utilisant la bibliothèque PyGame de Python, mais vous vous êtes vraiment senti déconcerté par le principe de la gestion du temps ? Si c’est le cas, vous n’êtes pas le seul.

Le temps est l’une des parties les plus critiques de la croissance du jeu vidéo, et comprendre exactement comment le temps fonctionne dans PyGame est essentiel pour produire des jeux vidéo intéressants ainsi que réussis. PyGame fournit un certain nombre de fonctions et de modules utiles qui vous permettent de gérer le temps dans vos jeux.

Création d’un jeu simple

Commencez par développer un jeu simple où une forme rectangulaire se déplace vers la droite. Pour commencer, installez pip sur votre gadget ainsi que la commande ci-dessous pour installer le module PyGame :

Vous pouvez localiser toutes les instances de code dans ce repo GitHub.

Une fois installé, importez le module PyGame. Après cela, créez un affichage avec une dimension de 800×600 ainsi qu’une ombre d’histoire blanche, et incluez également un élément rect. Le code doit ressembler à quelque chose comme ceci :

Après cela, faites usage d’une échappatoire while pour maintenir le jeu en cours d’exécution ainsi que pour maintenir l’élément rect en mouvement jusqu’à ce qu’il atteigne l’achèvement de l’écran.

Vous pouvez également inclure les entrées de l’utilisateur ainsi que les crashs dans le jeu vidéo. Voici le résultat :

Aperçu du module moment de PyGame

Pour contrôler le temps dans ce jeu vidéo, vous pouvez faire usage du module de moment. pygame. moment composant. Ce composant donne différentes fonctions bénéfiques, constituées d’une Horloge avec des techniques comme get _ ticks() , wait() , et aussi delay(). En utilisant ces fonctions, vous pouvez commodément contrôler le temps dans votre jeu.

Voir aussi :  Introduction à la pagination dans React avec react-paginate

Création d’un objet horloge pour suivre le temps

Dans PyGame, vous pouvez utiliser un défi Clock pour suivre le temps. Pour créer une Horloge, faites simplement usage de la ligne de code suivante :

Avec ces choses Clock, vous pouvez maintenant suivre le temps dans votre jeu vidéo. Il existe en outre plusieurs autres fonctionnalités utiles liées à l’élément Clock, telles que :

  • get _ time() : A l’aide de cette fonction, vous pouvez obtenir le moment considéré chaque structure du jeu. Pour utiliser cette fonction, il suffit d’ajouter la ligne de code conforme après l’échappatoire while : Ajouter un défi message afficher le moment pris :
  • tick() : Utilisez cette fonction pour définir le taux de structure du jeu. Par défaut, le taux de structure est défini à 60 FPS. Pour le définir à 30 FPS, il suffit d’inclure la ligne de code suivante :
  • get _ fps() : Vous pouvez obtenir le prix actuel des images du jeu en utilisant get_fps. Pour utiliser cette fonctionnalité, il suffit d’inclure la ligne de code suivante : Vous pouvez inclure un défi texte afficher le prix de la trame :
  • tick _ busy_loop() : Cette fonctionnalité vous permet de calculer combien de millisecondes se sont effectivement écoulées depuis le dernier appel à la fonction tick() fonction. Pour l’utiliser, il suffit d’ajouter la ligne de code suivante :

Obtenir l’instant Utiliser get_ticks

Le site get _ ticks() renvoie le temps en millisecondes considérant que PyGame a démarré. Pour utiliser cette fonctionnalité, ajoutez la ligne de code suivante :

Ajouter un défi texte montrer le temps pris :

Vous pouvez utiliser le temps écoulé pour appliquer des aspects du jeu basés sur le temps, tels que des power-ups qui durent pendant une durée détaillée. Par exemple, vous pouvez exécuter un power-up qui augmente le taux de l’élément rect pendant 5 secondes :

Voir aussi :  Comment implémenter les fonctions de sauvegarde et de chargement dans Godot

Voici le résultat :

Mettre le jeu en pause en utilisant les fonctions wait ainsi que delay.

PyGame donne de même deux fonctions que vous pouvez utiliser pour arrêter le prêt une quantité de temps spécifique : la fonction wait et aussi la fonction délai fonction.

Pour utiliser la fonction de attendre il suffit d’inclure la ligne de code suivante dans la boucle while :

Cela arrêtera certainement le prêt 1000 millisecondes (1 seconde). Pour utiliser la fonction delay il suffit d’ajouter la ligne de code suivante dans l’échappatoire du while :

Cela reportera certainement la structure suivante du jeu pendant 1000 millisecondes (1 seconde).

Différences entre l’attente ainsi que le hold-up

Il existe quelques distinctions entre l’attente attente ainsi que retarder fonctions. Le site attente permet à la procédure de partager le processeur avec divers autres programmes. Le site délai va certainement utiliser le cpu pour rendre le délai beaucoup plus précis. Cela implique que la fonction delay a besoin de plus de puissance de processeur que la fonction wait et convient aux jeux qui nécessitent un timing précis.

Création d’un événement à l’aide de set_timer

Vous pouvez utiliser la fonction set _ timer() pour développer un événement qui s’active après une quantité de temps spécifiée.

Les événements dans PyGame sont des choses qui contiennent des détails concernant l’entrée de l’utilisateur ou des messages générés par le programme. Pour utiliser cette fonction, produisez un événement personnalisé et incluez également la ligne de code suivante :

Cela produira certainement un événement qui se déclenche après 1 000 nanosecondes – 1 seconde. Il existe différents types d’événements que vous pouvez déclencher, tels que les mouvements de la souris de l’ordinateur, les entrées au clavier et les événements de la fenêtre d’accueil. Votre code peut alors réagir à ces occasions de la manière la plus appropriée.

Voir aussi :  Comment télécharger des images dans Node.js en utilisant Multer

Par exemple, si vous souhaitez modifier l’axe y des choses rect après 12e, ou lorsque l’événement personnalisé se déclenche, vous pouvez ajouter la ligne de code suivante :

Grâce à cette méthode, vous pouvez rapidement créer des événements temporels dans votre jeu, que vous pouvez utiliser pour créer un gameplay intriguant et difficile.

Améliorer les contrôles du jeu avec le temps

Avec l’aide du contrôle du temps, vous pouvez améliorer les contrôles du jeu. Vous pouvez utiliser le moment pour effectuer des problèmes de vélocité, de ralentissement, et aussi de game-over. Beaucoup de jeux introduisent le concept de bullet time où l’action se réduit pendant une brève période.

En utilisant les fonctionnalités de contrôle du moment dans PyGame, vous pouvez facilement réaliser de telles fonctionnalités – et aussi plus – dans vos propres jeux.

S’abonner à notre newsletter

Que fait pygame time Clock() ?

Crée un nouvel objet Clock qui peut être utilisé pour suivre une quantité de temps. L’horloge fournit également plusieurs fonctions pour aider à contrôler le framerate d’un jeu. Cette méthode doit être appelée une fois par image. Elle calculera combien de millisecondes se sont écoulées depuis l’appel précédent.

Comment ajouter un chronomètre à pygame ?

Si vous voulez avoir votre chronomètre « à démarrer plus tard », vous pourriez stocker la sortie de pygame. time. get_ticks() à ce moment et simplement la soustraire du résultat des appels ultérieurs (quelque chose comme starttime=pygame. time.

Comment retarder une fonction dans pygame ?

Pour Pygame, cependant, l’utilisation de pygame. time. delay() fera une pause pendant un nombre donné de millisecondes basé sur l’horloge du CPU pour plus de précision (par opposition à pygame. time.

Cliquez pour évaluer cet article !
[Total: Moyenne : ]

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *