Allegro 5 Programmation de jeux en C ou C++

Documents pareils
Modules Multimédia PAO (Adobe)

MEMENTO D'UTILISATION Du T.N.I. SmartBoard (Version )

Prise en main du logiciel. Smart BOARD Notebook 10

Synoptique des icônes Interwrite Workspace

Silhouette Studio Leçon N 2

Ladibug TM 2.0 Logiciel de présentation visuel d'image Manuel de l utilisateur - Français

Guide de l utilisateur. Faites connaissance avec la nouvelle plateforme interactive de

L espace de travail de Photoshop

Espace Client Aide au démarrage

PHOTOSHOP - L'AFFICHAGE

Prise en main du logiciel Smart BOARD

Création de maquette web

MANUEL TBI - INTERWRITE

Introduction à Adobe Illustrator pour la cartographie et la mise en page

Table des matières. F. Saint-Germain / S. Carasco Document réalisé avec OpenOffice.org Page 1/13

Faire de la déformation interactive avec GIMP

PRESENTATION DU LOGICIEL

Initiation au dessin Bitmap

Avertissement : Nos logiciels évoluent rendant parfois les nouvelles versions incompatibles avec les anciennes.

Photoshop Séquence 4 - Créer une image de taille personnalisée taille

Lutter contre les virus et les attaques... 15

Avant-propos FICHES PRATIQUES EXERCICES DE PRISE EN MAIN CAS PRATIQUES

Informations préalables. Conseils de mise en oeuvre

Créer une application de livre interactif pour tablette avec Indesign CS6 et Adobe Digital Publishing Suite

Les calques : techniques avancées

GUIDE DE DÉMARRAGE. SitagriPro Infinite FINANCEAGRI. Un service. c o r p o r a t e

Dans l idéal, ceci devrait être fait en amont pour chaque image envoyée sur l espace de stockage de votre site internet.

Utilisation du visualiseur Avermedia

Correction des Travaux Pratiques Organiser son espace de travail

Open Office - Présentation

COMMENCER AVEC VUE. Chapitre 1

Introduction à Windows 8

Guide d installation en 10 étapes...

Géographie CM2. Guide pédagogique. Ressources vidéoprojetables & 14 animations interactives. Jacques Arnaud Nicole Darcy Daniel Le Gal

Open-Sankoré. Mise en route. Guide utilisateur Février 2013 NTICE (E. S.)

Guide de correction et d optimisation des images en vue de leur publication sous Marcomedia Contribute. Logiciel utilisé : Adobe PhotoShop 7

Comment réaliser une capture d écran dans Word. Alors comment ouvrir une page Word?

AUVRAY Clément (168187) HOMBERGER Alexandre (186897) GLADE. Langages, outils et méthodes pour la programmation avancée Page 1 sur 12

StarDraw, le module de dessin de StarOffice 6/7

Note de cours. Introduction à Excel 2007

Support de formation Notebook

ENVOI EN NOMBRE DE MESSAGES AUDIO

Impress / Présentation

Création d une SIGNATURE ANIMÉE avec PHOTOFILTRE 7

PowerPoint offre trois modes d affichage principaux : le mode Normal, le mode Trieuse de diapositives et le mode Diaporama

GPS Action Replay Pro Module Régate (V 1.0 h et ultérieures)

Cette fonctionnalité est paramétrable et accessible dans le module administration via le menu "Dossier / Administration".

Guide d utilisation 2012

Comment utiliser FileMaker Pro avec Microsoft Office

L interface Outils, palettes, règles, repères, grille Paramétrer les préférences

Support de formation pour l'installation d'un logiciel gratuit de retouche d'images et gestion de la qualité, taille et format des images :

The Grid 2: Manuel d utilisation

L alternative, c est malin 1. Comment faire plein de choses pour pas cher sur MacIntosh

Tutoriel code::blocks

KM2 W1 EVC1 M3~ Manuel AUTOMSIM API 24V. BP Dcy 1MINI 1MAXI.

STAGES DE FORMATION INTER-ENTREPRISES PÔLE 45 BUREAUTIQUE

Initiation à linfographie

Page Paragraphe Modification Mise en page du document Le bouton "Format de page" est maintenant "Page"

Tutoriel : logiciel de présentation Openoffice Impress

Gérer, stocker et partager vos photos grâce à Picasa. Janvier 2015

Aide à la clé pédagogique «Former à la première intervention et à l évacuation»» 2 e édition

Utiliser le logiciel Photofiltre Sommaire

Initiation à la bureautique

INSERER DES OBJETS - LE RUBAN INSERTION... 3 TABLEAUX

Démarrer et quitter... 13

Adobe Illustrator Logiciel de dessin vectoriel et de Cartographie Assistée par Ordinateur

Leçon 10. Travailler avec la pile d effets

DOSSIER D'UTILISATION

HERAKLES Page 1 sur 11 PARAMETRAGE DE GSI FICHE PARAMETRAGE DE GSI

Créer des documents interactifs

Traitement par lot redimensionner des images

TRUCS & ASTUCES SYSTEME. 1-Raccourcis Programme sur le Bureau (7)

Excel 2007 Niveau 3 Page 1

Pratiques et usages du web, la «culture internet» moderne

Notice de fonctionnement DVR H Méthode de Visionnage ESEENET

Utilisation du logiciel Epson Easy Interactive Tools

TBI-DIRECT. Bridgit. Pour le partage de votre bureau. Écrit par : TBI Direct.

Icônes des didacticiels. Aliro - le contrôle d accès sur IP sans complication.

WINDOWS 8. Windows 8 se distingue par la présence de 2 interfaces complémentaires :

SOMMAIRE. Présentation assistée sur ordinateur. Collège F.Rabelais 1/10

Méthode de préparation du fichier texte d import depuis Excel, via Access jusqu à Drupal.

EXTENSION de Microsoft Dynamics CRM Réf FR 80452

Installation et compilation de gnurbs sous Windows

TITRE PARTIE TITRE SECTION. Faire des anaglyphes avec CatiaV5

Présentation du tableau blanc interactif Interwrite

GIMP. Le traitement d'images libre INSTALLATION SUR WINDOWS

Tout savoir sur le clavier

Nb. De pages : 24 MANGO. Manuel d'utilisation. Version 1.2. décembre 2010

But du papier : Paramétrer WSUS pour récupérer les mises à jour et administrer le serveur WSUS

Créer une trace, obtenir son fichier gpx et sa carte Ou Afficher un fichier trace GPX

À la une Présentation

ou clic objet. R rouge B bleu : 65 Le fond votre travail en P :. d étoiles dupliquer. Esbly Page 1 / 5

Réalisez votre propre carte de vœux Éléctronique

L environnement de travail de Windows 8

Sous réserve de modifications techniques et des disponibilités, fabrication française.

LibreOffice Calc : introduction aux tableaux croisés dynamiques

ActoPalm 1.0 b. Logiciel d'aide au relevé d'observation in situ sur Organiseurs PalmOS Compatibles. Alain Kerguelen, mai 2002

Excel 2010 Intermediaire

COURS BARDON - EXCEL 2010

Transcription:

Introduction 1. Introduction 11 2. La bibliothèque Allegro 5 11 2.1 Concept de la bibliothèque 11 2.2 Documentation 12 3. Compilateurs et IDE 13 4. Contenu du livre 13 4.1 Principe 13 4.2 Objectifs 14 5. Prérequis 15 6. Public visé 15 7. Remerciements 16 Installation de la bibliothèque Allegro 1. Introduction 17 2. Téléchargement de la bibliothèque compilée 17 3. À propos des noms de DLL et de.lib dans Allegro 18 4. Positionnement des DLL 20 5. Installation et configuration sous Code::Blocks, MinGW 21 1/11

5.1 Création d un projet console (ou vide) 21 5.2 Accès à la bibliothèque 25 5.2.1 Accès du compilateur à la bibliothèque pour un seul projet 26 5.2.2 Accès du compilateur à la bibliothèque pour tous les projets 34 5.3 Relier des modules de la bibliothèque (linkage) 38 5.4 Vérification de l'installation 41 5.5 Erreurs fréquentes 43 6. Installation et configuration sous Visual C++ 44 6.1 Création d un projet vide 44 6.2 Accès à la bibliothèque et liaison avec les modules 48 6.3 Vérification de l'installation 56 6.4 Erreurs fréquentes 59 6.5 Liaison statique de la bibliothèque 60 6.5.1 Lier le projet aux bibliothèques statiques nécessaires 60 6.5.2 Configurer la génération de code 61 6.5.3 Spécifier la directive ALLEGRO_STATICLINK 63 Premiers pas avec Allegro 1. Introduction 67 2. Créer une fenêtre 68 3. Obtenir le clavier 70 4. Obtenir la souris 73 5. Éléments de gestion des fenêtres 76 5.1 Dimensionner une fenêtre existante et la positionner à l'écran 77 5.2 Activer le contrôle de redimensionnement 81 6. Gestion du plein écran 83 2/11

6.1 Fenêtre qui couvre tout l'écran 83 6.2 Plein écran sans fenêtre 85 6.3 Résolutions supportées 87 7. Création d un modèle de projet (template) 91 7.1 Code de base du projet 91 7.2 Modèle de projet sous Code::Blocks 93 7.3 Modèle de projet sous Visual Studio 94 8. Quelques précisions 97 8.1 Utilisation de la fenêtre console 97 8.1.1 Création d'un projet sans fenêtre console 97 8.1.2 Alternative à la fenêtre console sous Allegro 101 8.2 Meilleur contrôle du clavier simple 105 8.2.1 Problème des répétitions du clavier 105 8.2.2 Compter les répétitions clavier 107 8.3 Meilleur contrôle de la souris simple 110 8.3.1 Problème des répétitions de clics 110 8.3.2 Compter les clics sur chaque bouton de la souris 112 Texte, polices, couleur, dessin 1. Introduction 117 2. Texte et polices 117 2.1 Sélectionner une police 117 2.2 Afficher du texte 120 2.3 Obtenir les dimensions d une police 123 3. Couleurs, transparence 125 4. Primitives de dessin 127 4.1 Mise en place du module de dessin 127 3/11

4.2 Lignes, triangles, rectangles, cercles 127 4.2.1 Expérimentation des fonctions de tracé 130 4.3 Arcs 133 4.3.1 Expérimentation : tracer des arcs 134 4.3.2 Expérimentation : récupérer les points d'un arc 138 4.4 Courbe de Bézier (spline) 140 4.4.1 Expérimentation : tracer une courbe de Bézier 140 4.4.2 Expérimentation : récupérer les points d'une courbe de Bézier 143 4.5 Ruban 146 4.5.1 Expérimentation : tracer un ruban 147 4.5.2 Expérimentation : récupérer les points d'un ruban 149 Images 1. Introduction 151 2. Bitmap en mémoire 151 2.1 Créer une bitmap 152 2.2 Dessiner dans une bitmap 154 3. Image 158 3.1 Charger une image (load) 158 3.2 Afficher une image 160 3.3 Expérimenter les fonctions d affichage 163 3.4 Sélectionner une image pour la modifier 168 3.5 Obtenir les propriétés de l'image 169 3.6 Sauvegarder une image 170 4. L'image pixel par pixel 174 4.1 Accès aux pixels 174 4.2 Expérimentations verrouillage, al_get_pixel(), al_put_pixel() 177 4.3 Mélanges de couleurs (blending) 179 4/11

5. Paramétrage des options 185 Les événements 1. Introduction 189 2. Mettre en place une boucle d'événements 190 2.1 Création d'une file d'événements 190 2.2 Sélection des types d'événements à prendre en compte 191 2.3 Capture des événements 193 2.4 Identification de l'événement 194 2.5 Autres possibilités de capture d'événements 197 3. Récupérer le clavier et la souris dans une boucle d'événements 199 4. Piloter un rectangle avec les flèches du clavier 205 5. Contrôler l'exécution d'un programme avec un minuteur 209 6. Donner de la fluidité aux mouvements du rectangle 212 7. Constituer un modèle de projet (template) 218 8. Comprendre l'implémentation des événements 221 8.1 Les identificateurs d'événements 221 8.2 Les structures d'événements 222 8.2.1 Structure ALLEGRO_DISPLAY_EVENT 223 8.2.2 Structure ALLEGRO_JOYSTICK_EVENT 225 8.2.3 Structure ALLEGRO_KEYBOARD_EVENT 227 8.2.4 Structure ALLEGRO_MOUSE_EVENT 232 8.2.5 Structure ALLEGRO_TIMER_EVENT 234 5/11

8.2.6 Structure ALLEGRO_USER_EVENT 235 8.3 L'union ALLEGRO_EVENT 237 8.3.1 Rappel sur le type union 237 8.3.2 Détail de l'union ALLEGRO_EVENT 238 Joystick 1. Introduction 241 2. Prise en main simple 241 2.1 Principales fonctions 241 2.2 Expérimentation en mode texte 246 2.3 Structure de données pour l'état d'un joystick 250 3. Utilisation des événements 252 3.1 Types d'événements 252 3.2 Expérimentation en mode texte 252 3.3 Expérimentation graphique 257 Croquis de fourmis 1. Introduction 265 2. Fourmi seule 265 2.1 Structure de données d'une fourmi 266 2.2 Initialisation 266 2.3 Affichage 267 2.4 Mouvement 268 2.5 Libération mémoire 269 2.6 Code complet 269 2.7 Code complet version référence 273 6/11

3. Colonie de fourmis 279 3.1 Structure de données d'une colonie 279 3.2 Initialisation 279 3.3 Affichage 279 3.4 Mouvement 280 3.5 Mise à jour du code 280 3.6 Mise à jour du code, version référence 283 4. Colonie et collisions 286 4.1 Collision entre deux fourmis 286 4.2 Collisions dans la colonie 287 4.3 Mise à jour du code 287 4.4 Mise à jour du code, version référence 290 5. Collisions et combats 294 5.1 Combat 294 5.2 Modification de l'affichage 295 5.3 Modification de la fonction de détection de collision 296 5.4 Mise en œuvre des combats 296 5.5 Mise à jour du code version référence uniquement 296 6. Plusieurs colonies 300 6.1 Structure de données 300 6.2 Initialisation 301 6.3 Affichage 301 6.4 Mouvement 302 6.5 Mise à jour du code 302 6.6 Mise à jour du code, version référence 305 7. Mouvements d'ensemble des fourmis 308 7.1 Principe 308 7.2 Structure de données 308 7.3 Initialisation des fourmis 309 7.3.1 Fonction d'initialisation des fourmis 310 7/11

7.3.2 Création d'une palette de couleurs 311 7.4 Affichage 314 7.5 Mouvement 315 7.5.1 Détermination du mouvement 316 7.5.2 Actualisation 321 7.6 Changement de couleur 321 7.7 Initialisation du programme 322 7.8 Code complet 323 Modèle de jeu simple 1. Introduction 331 2. Mouvements du vaisseau 332 2.1 Structure de données du vaisseau 332 2.2 Initialisation 333 2.3 Affichage 334 2.4 Déplacements 334 2.5 Boucle événementielle du jeu, organisation du code 335 3. Lancement de missiles 341 3.1 Structure de données du missile 341 3.2 Initialisation 342 3.3 Affichage 343 3.4 Mouvement 343 3.5 Lancement 344 3.6 Mise à jour du code, action 344 4. Avancée des ennemis 348 4.1 Structure de données de l'ennemi 348 4.2 Initialisation 349 4.3 Affichage 349 4.4 Mouvement 350 4.5 Apparition 350 8/11

4.6 Mise à jour du code, action 351 5. Collisions 354 5.1 Point dans un rectangle 354 5.2 Point dans un triangle 355 5.3 Intersection de rectangles 359 5.4 Recherche d'une couleur sur un fond 362 6. Destruction des ennemis 366 6.1 Détection de collisions missiles-ennemis 366 6.2 Détection de collisions entre vaisseau et ennemis 367 7. Code complet du programme 369 Animation, sprites 1. Introduction 381 2. Un personnage marchant sur place 382 3. Un personnage piloté par le clavier 387 4. Gestion de la couleur du masque 393 5. Contrôle de la vitesse de l'animation 394 6. Récupération d'une série d'images sur un fichier unique 400 7. Plusieurs séquences simultanées 408 7.1 Plusieurs balles qui rebondissent 408 7.2 Plusieurs personnages qui se déplacent 411 9/11

Décor, monde 1. Introduction 425 2. Deux principes de décor : continu ou discontinu 425 2.1 La forme continue : une image, des calques, des rails 425 2.2 La forme discontinue : technique du «tile mapping» 426 3. Défilement d'une grande image (scroll) 426 4. Un univers composé de petites images (tile mapping) 430 4.1 Décor continu aléatoire 432 4.2 Utiliser une matrice de nombres 438 4.3 Composer le décor avec un éditeur graphique 446 Personnages dans un décor 1. Introduction 449 2. Un personnage mobile dans un décor fixe 449 2.1 Structures de données et initialisations 449 2.2 Contrôle du joueur 454 3. Nombreux personnages mobiles 467 3.1 Un ensemble de personnages 468 3.2 Le mouvement des clones 472 3.3 Le mouvement du joueur 474 Collisions entre personnages 1. Introduction 489 10/11

2. Cartographie des personnages 489 2.1 Mise en place de la carte 491 2.2 Mouvement des personnages 493 2.3 Code complet commenté 496 2.4 Problèmes posés 509 3. Automatisation du comportement des clones coincés 510 3.1 Modification de la structure de données 510 3.2 Gestion du mouvement 512 3.3 Gestion de l'affichage 513 4. Suppression de superpositions entre personnages 514 4.1 Principe d'une échelle de la cartographie 514 4.2 Principe de l'interception des collisions 516 4.3 Implémentation 517 4.4 Quelques perfectionnements 523 4.5 Code complet commenté 523 Index 539 Liste des programmes 553 11/11