Pygame - eni - 9782409039072 -
Pygame 

Pygame
Initiez-vous au développement de jeux vidéo en Python

Ce livre s'adresse à tous les makers et passionnés de programmation qui souhaitent apprendre à développer des jeux vidéo avec Pygame. Il intéressera également les débutants en langage Python ainsi que les informaticiens qui veulent parfaire leur connaissance de cette bibliothèque utilisée non seulement dans le domaine du jeu vidéo, [...]
[lire le résumé du livre]

Auteur : 

Editeur : Eni

Collection : La Fabrique

Date parution :  2e édition

Reliure :
Broché
Nbr de pages :
250
Dimension :
17.3 x 21 x 1.3 cm
Poids :
400 gr
ISBN 10 :
2409039073
ISBN 13 :
9782409039072
29,00 €
Disponible expédié
sous 4 à 8 jours

Paiements sécurisés
CB Google/Apple Pay, Chèque, Virement
0.01€ à partir de 35€ en France métropolitaine
Satisfait ou remboursé sous 14 jours ouvrés

Quel est le sujet du livre "Pygame"

Ce livre s'adresse à tous les makers et passionnés de programmation qui souhaitent apprendre à développer des jeux vidéo avec Pygame. Il intéressera également les débutants en langage Python ainsi que les informaticiens qui veulent parfaire leur connaissance de cette bibliothèque utilisée non seulement dans le domaine du jeu vidéo, mais également dans celui de la simulation.

La maîtrise du langage Python n'étant pas nécessaire pour lire ce livre, l'auteur commence par en présenter les bases avant d'indiquer comment faire ses premiers pas avec Pygame et de détailler la structure d'un jeu Pygame. Puis, au fil des chapitres, les principaux aspects du développement de jeux vidéo en deux dimensions sont étudiés. Ainsi, le lecteur étudie comment gérer une boucle de jeu, comment maîtriser les aspects graphiques avec le module pygame.draw, comment ajouter du son avec le module pygame.mixer ou encore comment gérer le temps et surtout les collisions entre objets graphiques grâce à la notion de sprite. L'auteur propose également une introduction à la 3D et à la notion de moteur de jeu.

Pour finir, les deux derniers chapitres fournissent au lecteur une documentation précise des principaux modules Pygame utilisés dans le livre ainsi que ceux fréquemment utilisés dans le développement Pygame.

Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.

Téléchargements

Auteurs :

Diplômé de l'ISIMA de Clermont-Ferrand, Benoît PRIEUR a exercé pendant plusieurs années en tant qu'ingénieur freelance. Spécialisé dans le développement avec les langages Python, C++, Rust et C#, il est aujourd'hui Ingénieur innovation pour le compte du cabinet international de conseil en innovation Palo IT. Egalement formateur et conférencier sur diverses technologies (relatives notamment à l'informatique quantique), il écrit régulièrement des articles sur la programmation de logiciels.

En suivant ce lien, retrouvez tous les livres dans la spécialité Langages.

Sommaire et contenu du livre "Pygame - Initiez-vous au développement de jeux vidéo en Python"

Fondamentaux du langage Python
  1. 1. Introduction
  2. 2. Caractéristiques du langage Python
    1. 2.1 Langage interprété
    2. 2.2 Typage dynamique fort
    3. 2.3 Multi-paradigme
    4. 2.4 Licence libre
    5. 2.5 Multi-plateforme
  3. 3. Installation de Python
    1. 3.1 Installation de Python sur Windows
    2. 3.2 Installation de Python sur macOS
    3. 3.3 Installation de Python sur Linux
  4. 4. Première utilisation de Python en ligne de commande
    1. 4.1 Plusieurs versions de Python
    2. 4.2 Vérification de la version
    3. 4.3 Première utilisation
  5. 5. Premiers pas en Python
    1. 5.1 Premières instructions
    2. 5.2 Utilisation d'un fichier Python
    3. 5.3 Indentation en Python
    4. 5.4 Variables et fonctions en Python
      1. 5.4.1 Déclarer et utiliser une variable
      2. 5.4.2 Déclarer et utiliser une fonction
    5. 5.5 Un mot sur les modules en Python
      1. 5.5.1 Le mot-clé import
      2. 5.5.2 Un mot sur __main__
    6. 5.6 Boucles et conditions en Python
      1. 5.6.1 La boucle while
      2. 5.6.2 La boucle for
      3. 5.6.3 Les conditions avec if...else...elif
    7. 5.7 Les structures de données en Python
    8. 5.8 Exemple de listes
    9. 5.9 Exemple de tuples
    10. 5.10 Exemple d'ensembles
    11. 5.11 Exemple de dictionnaire
  6. 6. Conclusion
Notions avancées en langage Python
  1. 1. Introduction
  2. 2. La programmation orientée objet
    1. 2.1 Introduction
    2. 2.2 Les classes en Python
    3. 2.3 Un mot sur l'héritage et le polymorphisme
      1. 2.3.1 L'héritage
      2. 2.3.2 Le polymorphisme
    4. 2.4 Conclusion
  3. 3. L'environnement virtuel
    1. 3.1 Contexte
    2. 3.2 Petit exemple théorique
  4. 4. La PEP8
    1. 4.1 Contexte
    2. 4.2 L'esprit de la PEP8
    3. 4.3 Principes généraux et outils
      1. 4.3.1 Principes de la PEP8
      2. 4.3.2 Quelques outils
Concepts du jeu vidéo et premiers pas à propos de Pygame
  1. 1. Introduction
  2. 2. La boucle de jeu
  3. 3. Présentation de Pygame
  4. 4. Installation de Pygame
  5. 5. Les modules composant Pygame
  6. 6. Réalisation d'un premier jeu graphique : fusée et planètes
    1. 6.1 Les images utilisées
    2. 6.2 La fenêtre du jeu
    3. 6.3 La boucle du jeu
    4. 6.4 Le système de coordonnées Pygame
    5. 6.5 Les variables du jeu
      1. 6.5.1 Les variables liées à la fusée
      2. 6.5.2 Les variables liées aux deux planètes qui « tombent »
      3. 6.5.3 Les variables relatives au comptage des points
      4. 6.5.4 Les variables relatives aux images
    6. 6.6 Les déplacements de la fusée
    7. 6.7 Les déplacements des planètes
    8. 6.8 Les collisions
    9. 6.9 Le code complet
La structure d'un jeu Pygame
  1. 1. Introduction
  2. 2. Initialisation
  3. 3. Aide en ligne de commande
  4. 4. Affichage de la fenêtre
    1. 4.1 Le tuple size de set_mode
    2. 4.2 Le paramètre flags de set_mode
  5. 5. Rappels concernant la boucle de jeu
  6. 6. Les surfaces Pygame
    1. 6.1 Définition d’une surface
    2. 6.2 La fenêtre de jeu, une surface particulière
    3. 6.3 Exemple de manipulation d’une surface
    4. 6.4 Manipulation de la surface
    5. 6.5 Surface ou copie de surface ?
    6. 6.6 Coloration de la surface
  7. 7. Gestion des couleurs
  8. 8. Système de coordonnées
  9. 9. Gestion du temps et des événements
    1. 9.1 Gestion du temps dans Pygame
    2. 9.2 Gestion des événements dans Pygame
      1. 9.2.1 La fonction pygame.event.get
      2. 9.2.2 La fonction pygame.event.wait
      3. 9.2.3 La fonction pygame.event.poll
    3. 9.3 Un exemple : le carré qui rebondit
  10. 10. Les codes globaux des deux exemples
    1. 10.1 Premier exemple
    2. 10.2 Deuxième exemple
Le dessin et le graphisme dans tous leurs états avec Pygame
  1. 1. Introduction
  2. 2. Dessiner des formes avec Pygame
    1. 2.1 Le module pygame.draw
    2. 2.2 Dessiner une ligne
    3. 2.3 Dessiner une ligne brisée
    4. 2.4 Dessiner un rectangle
    5. 2.5 Dessiner un polygone
    6. 2.6 Dessiner un cercle
    7. 2.7 Dessiner une ellipse
    8. 2.8 Dessiner un arc de cercle
    9. 2.9 L'anti-aliasing
  3. 3. Afficher et sauvegarder des images avec Pygame
    1. 3.1 Le module pygame.image
    2. 3.2 Charger des images avec Pygame
      1. 3.2.1 La fonction pygame.draw.load
      2. 3.2.2 La bonne pratique de l'appel de convert()
      3. 3.2.3 Exemple de chargement et d'affichage d'une image
    3. 3.3 Enregistrer des images avec Pygame
  4. 4. Utiliser et manipuler du texte dans Pygame
    1. 4.1 Le module pygame.font
    2. 4.2 Utiliser des polices de caractères système avec Pygame
    3. 4.3 Utiliser ses propres polices de caractères avec Pygame
  5. 5. Concevoir un logiciel de dessin avec Pygame
    1. 5.1 Gérer les événements de la souris ou du clavier en Pygame
    2. 5.2 Première version du logiciel : afficher le tracé réalisé avec la souris
    3. 5.3 Seconde version du logiciel : améliorations diverses
      1. 5.3.1 Amélioration de l'expérience du tracé
      2. 5.3.2 Ajout de fonctionnalités (couleur, épaisseur, etc.)
  6. 6. Appliquer des transformations géométriques dans Pygame
    1. 6.1 Le module pygame.transform
    2. 6.2 Exemple d'utilisation des transformations Pygame
  7. 7. Conclusion
L'ajout de sons dans un jeu Pygame
  1. 1. Introduction
  2. 2. La gestion du son avec Pygame
    1. 2.1 Les modules pygame.mixer et pygame.mixer.music
      1. 2.1.1 Le module pygame.mixer.music (fond sonore)
      2. 2.1.2 Le module pygame.mixer (effets sonores)
    2. 2.2 Les fichiers son
    3. 2.3 La notion de channel (canal) dans Pygame
  3. 3. Exemple d'utilisation du son avec Pygame
  4. 4. Conclusion
Les sprites avec Pygame
  1. 1. La notion de sprite dans Pygame
  2. 2. La notion de group dans Pygame
  3. 3. Une gestion des collisions simplifiée
  4. 4. Quelques explications sur la programmation orientée objet
    1. 4.1 Le paradigme objet, les grandes lignes
    2. 4.2 L'héritage
    3. 4.3 Des mots-clés fondamentaux en Python
      1. 4.3.1 Le mot-clé self
      2. 4.3.2 Le mot-clé class
      3. 4.3.3 Le mot-clé def
      4. 4.3.4 __init__
    4. 4.4 L'exemple de la classe Voiture en Python
    5. 4.5 Ce que l'on savait déjà... sans le savoir
  5. 5. Le module sprite et son utilisation
    1. 5.1 Le contenu du module sprite
    2. 5.2 Création d'un sprite
      1. 5.2.1 Premier exemple d'utilisation
      2. 5.2.2 Retour sur le premier exemple
    3. 5.3 Gros plan sur l'attribut rect de la classe Sprite
    4. 5.4 La liste de sprites (group)
    5. 5.5 Gestion des collisions grâce aux sprites
  6. 6. Conclusion du chapitre
Plus loin avec le module sprite, exemples appliqués
  1. 1. Introduction
  2. 2. Le jeu du serpent (snake)
    1. 2.1 Le contexte
    2. 2.2 Les images utilisées
    3. 2.3 Les effets sonores utilisés
    4. 2.4 Le programme global
    5. 2.5 Les listes de sprites (group)
    6. 2.6 Les variables globales
    7. 2.7 Les classes
      1. 2.7.1 La classe SERPENT
      2. 2.7.2 La classe CORPS
      3. 2.7.3 La classe NOURRITURE
    8. 2.8 Le programme lui-même
      1. 2.8.1 La fonction AFFICHER_SCORE
      2. 2.8.2 Le corps du programme
  3. 3. Le jeu du labyrinthe
    1. 3.1 Le contexte
    2. 3.2 Conception du labyrinthe
    3. 3.3 Les images utilisées
    4. 3.4 Le programme global
    5. 3.5 Les listes de sprites (group)
    6. 3.6 Les classes
      1. 3.6.1 La classe MUR
      2. 3.6.2 La classe OBJET
      3. 3.6.3 La classe Chrono
      4. 3.6.4 La classe PERSONNAGE
    7. 3.7 Le programme lui-même
  4. 4. Le jeu de casse-briques
    1. 4.1 Le contexte
    2. 4.2 Les images utilisées
    3. 4.3 Le programme global
    4. 4.4 Les listes de sprites (group)
    5. 4.5 Les constantes
    6. 4.6 Les classes
      1. 4.6.1 La classe OBJET
      2. 4.6.2 La classe RAQUETTE
      3. 4.6.3 La classe BRIQUE
      4. 4.6.4 La classe BALLE
    7. 4.7 Le programme lui-même
  5. 5. Le jeu de défilement : Fusée et planètes (version 2)
    1. 5.1 Le contexte
    2. 5.2 Le programme global
    3. 5.3 Les listes de sprites (group)
    4. 5.4 Les classes
      1. 5.4.1 La classe FUSEE
      2. 5.4.2 La classe PLANETE
    5. 5.5 Le programme lui-même
Travailler en 3D avec Pygame
  1. 1. Introduction
  2. 2. La bibliothèque 3D OpenGL
  3. 3. OpenGL en Python/Pygame
    1. 3.1 PyOpenGL
    2. 3.2 Les notions fondamentales : sommet et arête
    3. 3.3 PyOpenGL et Pygame
  4. 4. PyOpenGL/Pygame : l’exemple du cube
    1. 4.1 Le code global
    2. 4.2 Explication détaillée du code
  5. 5. Plus loin avec PyOpenGL/Pygame : l’exemple du cube (suite)
    1. 5.1 Le code global
    2. 5.2 Explication détaillée du code
  6. 6. OpenGL en Python et macOS
  7. 7. La notion de moteur de jeu vidéo
    1. 7.1 Définition
    2. 7.2 Créer son propre moteur de jeu ?
    3. 7.3 Une ébauche de moteur de jeu
Les principaux modules Pygame
  1. 1. Introduction
  2. 2. L'objet Color
    1. 2.1 La classe Color
    2. 2.2 Les constructeurs de Color
    3. 2.3 Les principales fonctions de la classe Color
    4. 2.4 Les fonctions associées aux autres représentations de la couleur
      1. 2.4.1 La représentation CMY
      2. 2.4.2 La représentation HSV et HSL
      3. 2.4.3 La représentation I1I2I3
    5. 2.5 Les autres fonctions
      1. 2.5.1 La fonction normalize
      2. 2.5.2 La fonction correct_gamma
      3. 2.5.3 La fonction set_length
  3. 3. Le module time
    1. 3.1 La fonction get_ticks
    2. 3.2 La fonction wait
    3. 3.3 La fonction delay
    4. 3.4 La fonction set_timer
    5. 3.5 L'objet Clock
      1. 3.5.1 Création d'une instance
      2. 3.5.2 La fonction tick
      3. 3.5.3 La fonction get_time
      4. 3.5.4 La fonction get_fps
  4. 4. Le module event
    1. 4.1 La fonction pump
    2. 4.2 La fonction get
    3. 4.3 La fonction poll
    4. 4.4 La fonction wait
    5. 4.5 La fonction peek
    6. 4.6 La fonction clear
    7. 4.7 La fonction event_name
    8. 4.8 La fonction set_blocked
    9. 4.9 La fonction set_allowed
  5. 5. Le module display
    1. 5.1 La fonction init
    2. 5.2 La fonction quit
    3. 5.3 La fonction get_init
    4. 5.4 La fonction set_mode
    5. 5.5 La fonction flip
    6. 5.6 La fonction update
    7. 5.7 La fonction set_icon
    8. 5.8 La fonction set_caption
  6. 6. L'objet Surface
    1. 6.1 Le constructeur de Surface
    2. 6.2 La fonction blit
    3. 6.3 La fonction blits
    4. 6.4 Les fonctions convert et convert_alpha
    5. 6.5 La fonction copy
    6. 6.6 La fonction fill
    7. 6.7 La fonction scroll
    8. 6.8 La fonction set_colorkey
    9. 6.9 La fonction get_colorkey
  7. 7. Le module draw
    1. 7.1 La fonction rect
    2. 7.2 La fonction polygon
    3. 7.3 La fonction circle
    4. 7.4 La fonction ellipse
    5. 7.5 La fonction arc
    6. 7.6 La fonction line
    7. 7.7 La fonction lines
    8. 7.8 Les fonctions aaline et aalines
  8. 8. Le module image
    1. 8.1 La fonction load
    2. 8.2 La fonction save
    3. 8.3 Les fonctions tostring, fromstring, frombuffer
  9. 9. Le module font
    1. 9.1 La fonction init
    2. 9.2 La fonction quit
    3. 9.3 La fonction get_init
    4. 9.4 La fonction get_default_font
    5. 9.5 La fonction get_fonts
    6. 9.6 La fonction match_font
    7. 9.7 La fonction SysFont
    8. 9.8 L'objet Font
      1. 9.8.1 La fonction Font
      2. 9.8.2 La fonction render
      3. 9.8.3 La fonction size
      4. 9.8.4 La fonction set_underline
      5. 9.8.5 La fonction get_underline
      6. 9.8.6 La fonction set_bold
      7. 9.8.7 La fonction get_bold
      8. 9.8.8 La fonction set_italic
      9. 9.8.9 La fonction get_italic
      10. 9.8.10 La fonction metrics
  10. 10. Le module mouse
    1. 10.1 La fonction get_pressed
    2. 10.2 La fonction get_pos
    3. 10.3 La fonction get_rel
    4. 10.4 La fonction set_pos
    5. 10.5 La fonction set_visible
    6. 10.6 La fonction get_visible
    7. 10.7 La fonction get_focused
    8. 10.8 La fonction set_cursor
    9. 10.9 La fonction get_cursor
  11. 11. Le module key
    1. 11.1 Les constantes correspondant aux touches du clavier
    2. 11.2 La fonction get_focused
    3. 11.3 La fonction pressed
    4. 11.4 La fonction set_repeat
    5. 11.5 La fonction get_repeat
    6. 11.6 La fonction name
  12. 12. Le module transform
    1. 12.1 La fonction flip
    2. 12.2 La fonction scale
    3. 12.3 La fonction rotate
    4. 12.4 La fonction rotozoom
    5. 12.5 La fonction scale2x
    6. 12.6 La fonction chop
    7. 12.7 La fonction laplacian
    8. 12.8 La fonction average_surfaces
    9. 12.9 La fonction average_color
  13. 13. Le module mixer
    1. 13.1 La fonction init
    2. 13.2 La fonction quit
    3. 13.3 La fonction get_init
    4. 13.4 L'objet Sound
      1. 13.4.1 Les constructeurs de Sound
      2. 13.4.2 La fonction play
      3. 13.4.3 La fonction stop
      4. 13.4.4 La fonction fadeout
      5. 13.4.5 La fonction set_volume
      6. 13.4.6 La fonction get_volume
      7. 13.4.7 La fonction get_num_channels
      8. 13.4.8 La fonction get_length
      9. 13.4.9 La fonction get_raw
    5. 13.5 L'objet Channel
      1. 13.5.1 Le constructeur de Channel
      2. 13.5.2 La fonction queue
      3. 13.5.3 La fonction set_volume
      4. 13.5.4 La fonction get_volume
      5. 13.5.5 Les fonctions play, stop, pause, etc.
    6. 13.6 Les fonctions get_num_channels, set_num_channels, find_channel
  14. 14. Le module music
    1. 14.1 La fonction load
    2. 14.2 La fonction unload
    3. 14.3 La fonction play
    4. 14.4 La fonction rewind
    5. 14.5 La fonction stop
    6. 14.6 La fonction pause
    7. 14.7 La fonction unpause
    8. 14.8 La fonction fadeout
    9. 14.9 La fonction set_volume
    10. 14.10 La fonction get_volume
    11. 14.11 La fonction set_pos
    12. 14.12 La fonction get_pos
    13. 14.13 La fonction queue
  15. 15. Le module sprite
    1. 15.1 La classe Sprite
      1. 15.1.1 La fonction update
      2. 15.1.2 La fonction add
      3. 15.1.3 La fonction remove
      4. 15.1.4 La fonction kill
      5. 15.1.5 La fonction alive
      6. 15.1.6 La fonction groups
    2. 15.2 La classe Group
      1. 15.2.1 La fonction sprites
      2. 15.2.2 La fonction copy
      3. 15.2.3 La fonction add
      4. 15.2.4 La fonction remove
      5. 15.2.5 La fonction has
      6. 15.2.6 La fonction update
      7. 15.2.7 La fonction draw
      8. 15.2.8 La fonction clear
      9. 15.2.9 La fonction empty
    3. 15.3 Les principales fonctions du module
      1. 15.3.1 La fonction spritecollide
      2. 15.3.2 La fonction collide_rect
      3. 15.3.3 La fonction collide_circle
      4. 15.3.4 La fonction collide_mask
      5. 15.3.5 La fonction groupcollide
      6. 15.3.6 La fonction spritecollideany
Les modules secondaires Pygame
  1. 1. Introduction
  2. 2. Le module cursors
    1. 2.1 Les curseurs prédéfinis du module
    2. 2.2 La fonction compile
    3. 2.3 La fonction load_xbm
  3. 3. Le module joystick
    1. 3.1 La fonction init
    2. 3.2 La fonction quit
    3. 3.3 La fonction get_init
    4. 3.4 La fonction get_count
    5. 3.5 La classe Joystick
      1. 3.5.1 La fonction Joystick
      2. 3.5.2 La fonction init
      3. 3.5.3 La fonction quit
      4. 3.5.4 La fonction get_init
      5. 3.5.5 La fonction get_id
      6. 3.5.6 La fonction get_name
      7. 3.5.7 La fonction get_numaxes
      8. 3.5.8 La fonction get_axis
      9. 3.5.9 La fonction get_numballs
      10. 3.5.10 La fonction get_ball
      11. 3.5.11 La fonction get_numbuttons
      12. 3.5.12 La fonction get_button
      13. 3.5.13 La fonction get_numhats
      14. 3.5.14 La fonction get_hat
  4. 4. Le module touch
    1. 4.1 La fonction get_num_devices
    2. 4.2 La fonction get_device
    3. 4.3 La fonction get_num_fingers
    4. 4.4 La fonction get_finger
  5. 5. Le module math
    1. 5.1 La classe Vector2 - Création de vecteur
    2. 5.2 La classe Vector3 - Création de vecteur
    3. 5.3 Les principales fonctions de Vector2 et Vector3
      1. 5.3.1 La fonction dot
      2. 5.3.2 La fonction length
      3. 5.3.3 La fonction normalize
      4. 5.3.4 La fonction reflect
      5. 5.3.5 La fonction distance_to
      6. 5.3.6 La fonction rotate
      7. 5.3.7 La fonction rotate_rad
  6. 6. Le module surfarray
    1. 6.1 La fonction array2d
    2. 6.2 La fonction pixels_red
    3. 6.3 La fonction pixels_green
    4. 6.4 La fonction pixels_blue
    5. 6.5 La fonction make_surface
    6. 6.6 La fonction blit_array
  7. 7. Le module camera
    1. 7.1 La fonction list_cameras
    2. 7.2 L'objet Camera
      1. 7.2.1 Instanciation de Camera
      2. 7.2.2 La fonction start
      3. 7.2.3 La fonction stop
      4. 7.2.4 La fonction get_image
      5. 7.2.5 La fonction get_raw
      6. 7.2.6 La fonction query_image
      7. 7.2.7 La fonction get_size
      8. 7.2.8 La fonction get_controls
      9. 7.2.9 La fonction set_controls
      10. Index

    Avis clients sur Pygame - eni - La Fabrique

    (Ils sont modérés par nos soins et rédigés par des clients ayant acheté l'ouvrage)
    Donnez votre avis
     
    Controler les cookies