Valeur de cette activité : 50 points
Compétence :
Compétence :
Compétence :
13- Expérimentation de différentes plates-formes de création de jeux

A-Module 16 : JEUX : 50 points - difficulté : 2

08 - Exploration de plates-formes de création de jeux

Cette activité vous permettra d'explorer différentes plates-formes de création de jeux (2d et 3D).


  1. Sélectionnez une plate-forme création de jeux disponible parmi la liste ci-dessous :

    1. Twine : histoire dont vous êtes le héros
    2. Développement de jeux avec SUPERPOWERS
    3. Développement de jeux avec GDevelop (en ligne ou téléchargeable)
    4. Développement de Jeux Flash et IOS avec STENCYL
    5. Phaser.io : javascript et html5
    6. Atmosphir (Mac et Windows)
    7. http://polycode.org/
    8. Programmation d'un jeu avec CeilFire.com : éditeur de jeux en ligne ************
    9. Développement de jeux en webgl avec PlayCanvas
      Site officiel
      Téléchargement
      Inscription gratuite et tutoriels
      Documentation et tutoriels
      Exemples de jeux
      Procédure pour exporter votre jeu
      1. Tutoriel 1 : Débuter avec l'éditeur
      2. Tutoriel 2 : Télécharger un personnage
      3. Tutoriel 3 : Les sources de lumière
      4. Tutoriel 4 : Les entrées clavier
      5. Tutoriel 5 : Les entrées avec la souris
      6. Tutoriel 6 : Gestion de la caméra
      7. Autres tutoriels sur la chaîne youtube-playcanvas
      Procédure de remise de votre travail :
      1. Regarder le tutoriel
      2. Produire votre scène
      3. Publier votre scène
      4. Récupérer l'URL de votre publication
      5. Inscrire dans votre page le titre du tutoriel
      6. Ajouter un LIEN vers votre publication (onglet projet + bas de l'écran + AApps + copier l'adresse du lien)
    10. Développement de jeux en webgl
      Développement de jeux en webgl avec la librairie Babylon
      Recherche de tutoriels google
      Plusieurs Tutoriels (anglais)
    11. RPGBOSS
    12. EMSCRIPTEN
    13. FlowLab : Plate-forme de création de jeux en ligne (enregistrement gratuit requis)
    14. GameFroot : Plate-forme de création de jeux en ligne (enregistrement gratuit requis)
    15. PYGAME
      installez en tapant dans le terminal :
      sudo apt-get install python-pygame
      Consultez les exemples en tapant dans le terminal
      pcmanfm /usr/lib/python2.7/dist-packages/pygame/examples
      ou
      cd /usr/lib/python2.7/dist-packages/pygame/examples
      et ls
      et
      python nomdufichier.py

      Consultez les tutoriels en tapant dans le terminal :
      google-chrome /usr/lib/python2.7/dist-packages/pygame/docs/index.html

      Programmer un jeu en python avec pygame (tutoriel : 1 chapitre du livre = 1 travail)


      ATTENTION, le langage python n'utilise pas les délimiteurs  { et }, ce sont les tabulations qui délimitent les blocs de code à exécuter
      ou
      PyGame - téléchargez , extraire et consultez les exemples et la documentation

    16. Maratis (windows et Linux): Maratis est logiciel multimédia et un moteur 3d temps réel permettant la création de jeux vidéos et d'applications interactives. Il dispose d'une interface très intuitive et d'un SDK très puissant destinant la suite à la fois aux artistes et aux programmeurs (nécessite un ordinateur relativement puissant, plus puissant que ceux que nous avons au laboratoire c212!).
      Cliquez ici pour afficher une vidéo Maratis
    17. unigine



      Cliquez ici pour afficher une vidéo Unigine

    18. Game Editor (PC et Linux) : Game-editor

      Pour afficher les tutoriels, tapez dans le terminal :
      iceweasel ~/gameEditor1.4.1b/Docs/index.html
      5 points par tutoriel réalisé.

    19. Linux FPS Creator : création de jeux




    20. GameStudio (utilisez la version gratuite): création de jeux (windows)



    21. Linux Syntensity : création de jeux ou Syntensity



    22. Téléchargement Panda 3D
      Documentation Panda3D


      Pour lancer un jeu en exemple, tapez dans le terminal : python /usr/share/panda3d/samples/Boxing-Robots/Tut-Boxing-Robots.py ou tout autres jeux dans les exemples offerts

      Pour lancer l'éditeur de jeu, utilisez un éditeur de texte (gedit, geany,leafpad ou autre) et écrivez votre code python (utilisez les exemples offerts dans le répertoire pcmanfm /usr/share/panda3d/samples) et sauvegardez votre fichier en utilisant l'extension .py
      Pour tester votre jeu, tapez dans le terminal : python ./monjeu.py
    23. Algodoo : Le gymnaste :
      Une option intéressante serait d'ajouter une articulation (moteur rotatif) aux épaules et d'y assigner 2 autres touches de contrôle.

      Voir l'activité no 109459
      Pour une démonstration, tapez dans le terminal :
      vlc http://chene-bleu.info/i/ladifference//barrefixe.mpeg

      Voici des suggestions de jeux possibles à réaliser :
      1. Course de voitures ou de bateaux
      2. Parcours à obstacles
      3. Machine à boules
      4. ....
    24. Cube 2
    25. gemrb
    26. Delta 3d
    27. Crystal Space 3d (sudo apt-get install crystalspace)
    28. Castle Game Engine (vrml)
    29. Ogre 3D
    30. Unity (windows et Mac seulement)
    31. Spring Engine (Windows, Mac et Linux)
    32. Construct 2 (windows)
    33. Tululoo : voir l'activité 114612
    34. Kodu Game Lab :téléchargement et vidéo de démonstration
    35. UDK
    36. autres possibilités
    37. Tululoo : création de jeux html5 : téléchargement windows, Mac et Linux
      Tululoo version 2 pour windows et linux-wine: télécharger et extraire
      Documentation complète
      Numéro des touches clavier
      Aide et exemples(traduction du russe)
      Tutoriels Youtube

      Exemple d'un jeu tutuloo

      Tutoriels Tululoo
      TUTORIEL 1 : Création et déplacement d'un personnage
      1. Trouvez et effectuez une capture-écran nommé perso.png du personnage principale de votre jeu
      2. Utilisez GIMP,
        A) ouvrez votre image
        B) utilisez Menu Calque + transparence + Ajouter un canal alpha
        C) en utilisant l'outil de sélection contigue, et/ou l'outil de sélection par couleur (double-clic pour régler le seuil au besoin) et/ou l'efface et/ou l'outil de découpage , supprimez les éléments non désirés de votre image
        D) Exportez votre image au sous le nom perso.png
      3. Utilisez GIMP + menu Image + Échelle et taille de l'image + dimensions 40x40
        Exportez votre image au sous le nom perso.png

        ou

        utilisez cette commande dans le terminal pour redimensionner votre image
        mogrify -resize 40x40 perso.png
      4. Lancez Tululoo
      5. Ajoutez une SPRITE nommé "spr_perso" à partir de votre image perso.png
      6. Ajoutez un OBJET nommé "obj_perso" à partir de votre sprite "spr_perso"
      7. Ajoutez une SCENE et placez votre objet "obj_perso"
      8. Dans l'onglet OBJETS, double-cliquez sur votre "obj_perso" et ajoutez un événement STEP
      9. Insérez ce script pour cet événement afin de déplacer votre personnage:
        
        if ( keyboard_check( vk_right )) {
        	x = x + 5;
        }
        
        if ( keyboard_check( vk_left )) {
        	x = x - 5;
        }
        
        if ( keyboard_check( vk_up )) {
        	y = y - 5;
        }
        
        
        if ( keyboard_check( vk_down )) {
        	y = y + 5;
        }
        
        
      10. Enregistrez votre travail sous votre nom
      11. Testez votre jeu (touche F5)
      12. Dans votre espace de téléchargement, créez un répertoire nommé tululoo
      13. Dans ce répertoire, créez deux autres répertoires nommées "img" et "aud"
      14. Téléchargez vos fichiers votrenom.xml, game.js et index.html dans le répertoire tululoo de votre espace de téléchargement et téléchargez dans les répertoires img et aud les fichiers présents dans les répertoires img et aud


      TUTORIEL 2 : Collision avec un mur
      1. Trouvez et effectuez une capture-écran nommé mur.png d'un objet utilisé pour créer un mur dans votre jeu
      2. Utilisez GIMP ou cette commande dans le terminal pour redimensionner votre image
        mogrify -resize 40x40 mur.png
      3. Lancez Tululoo
      4. Ouvrez le jeu que vous avez créé au tutoriel 1
      5. Ajoutez une SPRITE nommé "spr_mur" à partir de votre image mur.png
      6. Ajoutez un OBJET nommé "obj_mur" à partir de votre sprite "spr_mur"
      7. Utilisez votre SCENE1 et placez votre objet "obj_mur" à plusieurs endroits
      8. Dans l'onglet OBJETS, double-cliquez sur votre "obj_perso" et ajoutez un événement COLLISION sur le mur
      9. Insérez ce script pour cet événement afin de repositionner votre personnage après une collision sur le mur:
        x = xprevious;
        y = yprevious;
        
      10. Enregistrez votre travail sous votre nom
      11. Testez votre jeu (touche F5)
      12. Dans votre espace de téléchargement, utilisez votre répertoire nommé tululoo
      13. Téléchargez vos fichiers votrenom.xml, game.js et index.html dans le répertoire tululoo de votre espace de téléchargement et téléchargez dans les répertoires img et aud les fichiers présents dans les répertoires img et aud
      14. Dans votre page de correction , ajoutez un titre de niveau 1 contenant le titre du tutoriel et un LIEN vers votre page index.html

      TUTORIEL 3 : Ramassage d'objets
      1. Trouvez et effectuez une capture-écran nommé pomme.png d'un objet utilisé pour créer un objet à rammaser dans votre jeu
      2. Utilisez GIMP ou cette commande dans le terminal pour redimensionner votre image
        mogrify -resize 40x40 pomme.png
      3. Lancez Tululoo
      4. Ouvrez le jeu que vous avez créé au tutoriel 2
      5. Ajoutez une SPRITE nommé "spr_pomme" à partir de votre image pomme.png
      6. Ajoutez un OBJET nommé "obj_pomme" à partir de votre sprite "spr_pomme"
      7. Utilisez une SCENE et placez votre objet "obj_pomme" à plusieurs endroits
      8. Dans l'onglet OBJETS, double-cliquez sur votre "obj_pomme" et ajoutez un événement COLLISION sur le personnage principale
      9. Insérez ce script pour cet événement afn de ramasser la pomme
        instance_destroy();
        
      10. Enregistrez votre travail sous votre nom
      11. Testez votre jeu (touche F5)
      12. Téléchargez vos fichiers dans le répertoire tululoo de votre espace de téléchargement
      13. Dans votre page de correction , ajoutez un titre de niveau 1 contenant le titre du tutoriel et un LIEN vers votre page index.html

      TUTORIEL 4 : Création d'une bombe sur barre espace
      1. Trouvez et effectuez une capture-écran nommé bombe.png d'un objet utilisé pour créer une bombe
      2. Utilisez GIMP ou cette commande dans le terminal pour redimensionner votre image
        mogrify -resize 40x40 bombe.png
      3. Lancez Tululoo
      4. Ouvrez le jeu que vous avez créé au tutoriel précédent
      5. Ajoutez une SPRITE nommé "spr_bombe" à partir de votre image bombe.png
      6. Ajoutez un OBJET nommé "obj_bombe" à partir de votre sprite "spr_bombe"
      7. Utilisez votre SCENE1 et placez votre objet "obj_pomme" à plusieurs endroits
      8. Dans l'onglet OBJETS, double-cliquez sur votre "obj_bombe" et ajoutez un événement STEP
      9. Insérez ce script pour cet événement afin de préciser le positionnement de votre bombe
        image_angle = image_angle + 1;
        
      10. Dans l'onglet OBJETS, double-cliquez sur votre "obj_perso" et ajoutez un événement STEP
      11. Insérez ce script pour cet événement afin de préciser qu'une bombe doit être créée lors de l'utilisation de la touche espace
        if ( keyboard_check_pressed( vk_space )) {
        	new_bombe = instance_create( x + 20, y, obj_bombe );
        }
        
      12. Enregistrez votre travail sous votre nom
      13. Testez votre jeu (touche F5)
      14. Téléchargez vos fichiers votrenom.xml, game.js et index.html dans le répertoire tululoo de votre espace de téléchargement et téléchargez dans les répertoires img et aud les fichiers présents dans les répertoires img et aud
      15. Dans votre page de correction , ajoutez un titre de niveau 1 contenant le titre du tutoriel et un LIEN vers votre page index.html

      TUTORIEL 5 : Ajouter un chronomètre sur la bombe
      1. Lancez Tululoo
      2. Ouvrez le jeu que vous avez créé au tutoriel précédent
      3. Dans l'onglet OBJETS, double-cliquez sur votre "obj_bombe" et ajoutez un événement CREATION
      4. Insérez ce script pour cet événement afin de créer un chronomètre
        this.timer = 100;
        
      5. Dans l'onglet OBJETS, double-cliquez sur votre "obj_bombe" et ajoutez un événement STEP
      6. Insérez ce script pour cet événement afin de préciser que la bombe soit détruite lorsque le chronomètre est à 0
        timer = timer - 1;
        if ( timer <= 0 ) {
        instance_destroy();
        }
        
      7. Enregistrez votre travail sous votre nom
      8. Testez votre jeu (touche F5)
      9. Téléchargez vos fichiers votrenom.xml, game.js et index.html dans le répertoire tululoo de votre espace de téléchargement et téléchargez dans les répertoires img et aud les fichiers présents dans les répertoires img et aud
      10. Dans votre page de correction , ajoutez un titre de niveau 1 contenant le titre du tutoriel et un LIEN vers votre page index.html
      TUTORIEL 6 : Ajouter une animation sur la bombe
      1. Enregistrez cette image
      2. Lancez Tululoo
      3. Ajoutez une SPRITE nommé "spr_explosion" à partir de votre image explosion.png
      4. Effectuez les réglages suivants :
        Columns : 16
        Rows : 1

        Import
        DONE
      5. Ajoutez un OBJET nommé "obj_explosion" à partir de votre sprite "spr_explosion"
      6. Trouvez et enregistrez un son d'explosion (google + explosion.wav)
      7. Ouvrez le jeu que vous avez créé au tutoriel précédent
      8. Dans l'onglet SOUNDS, ajoutez un son nommé snd_explosion et chargez votre son explosion.wav
      9. Dans l'onglet OBJETS, double-cliquez sur votre "obj_explosion" et ajoutez un événement CREATION contenant le script
        sound_play(snd_explosion);
        
      10. Sur ce même objet ajoutez un événement ANIMATION END contenant le script
        instance_destroy();
      11. Dans l'onglet OBJETS, double-cliquez sur votre "obj_bombe" et modifiez votre événement STEP pour y ajouter cette commande :
        new_explosion = instance_create( x, y, obj_explosion );
        afin d'obtenir ceci ;
        timer = timer - 1;
        if ( timer <= 0 ) {
        	instance_destroy();
        	new_explosion = instance_create( x, y, obj_explosion );
        }
      12. Enregistrez votre travail sous votre nom
      13. Testez votre jeu (touche F5)
      14. Téléchargez vos fichiers votrenom.xml, game.js et index.html dans le répertoire tululoo de votre espace de téléchargement et téléchargez dans les répertoires img et aud les fichiers présents dans les répertoires img et aud
      15. Dans votre page de correction , ajoutez un titre de niveau 1 contenant le titre du tutoriel et un LIEN vers votre page index.html
      TUTORIEL 7 : Ajouter un ennemi
      1. Trouvez et effectuez une capture-écran nommé ennemi.png d'un objet utilisé pour créer un ennemi
      2. Utilisez GIMP ou cette commande dans le terminal pour redimensionner votre image
        mogrify -resize 40x40 ennemi.png
      3. Lancez Tululoo
      4. Ouvrez le jeu que vous avez créé au tutoriel précédent
      5. dans l'onglet GAME + Edit Global Variables , insérez :
        global.player = obj_perso;
        
      6. dans l'onglet OBJECT+ créez l'évènement CREATION sur votre objet "obj_perso" et ajoutez :
        global.player = id;
        
      7. Ajoutez une SPRITE nommé "spr_ennemi" à partir de votre image ennemi.png
      8. Ajoutez un OBJET nommé "obj_ennemi" à partir de votre sprite "spr_ennemi"
      9. Utilisez votre SCENE1 et placez votre objet "obj_ennemi" à un ou plusieurs endroits
      10. Dans l'onglet OBJETS, double-cliquez sur votre "obj_ennemi" et ajoutez un événement STEP
      11. Insérez ce script pour cet événement afin de préciser le positionnement de votre ennemi et qu'il se dirige vers votre personnage principal
        image_angle = point_direction(x, y, global.player.x, global.player.y);
        move_towards_point(global.player.x, global.player.y, 2)
        
      12. Dans l'onglet OBJETS, double-cliquez sur votre "obj_ennemi" et ajoutez un événement COLLISION avec l'objet obj_mur
      13. Insérez ce script pour cet événement
        x = xprevious;
        y = yprevious;
        
      14. Téléchargez vos fichiers votrenom.xml, game.js et index.html dans le répertoire tululoo de votre espace de téléchargement et téléchargez dans les répertoires img et aud les fichiers présents dans les répertoires img et aud
      15. Dans votre page de correction , ajoutez un titre de niveau 1 contenant le titre du tutoriel et un LIEN vers votre page index.html
      TUTORIEL 8 : Mort de l'ennemi lors du contact avec une bombe
      1. Lancez Tululoo
      2. Ouvrez le jeu que vous avez créé au tutoriel précédent
      3. Dans l'onglet OBJETS, double-cliquez sur votre "obj_ennemi" et ajoutez un événement COLLISION avec l'objet obj_explosion
      4. Insérez ce script pour cet événement
        instance_destroy();
        
      5. Téléchargez vos fichiers votrenom.xml, game.js et index.html dans le répertoire tululoo de votre espace de téléchargement et téléchargez dans les répertoires img et aud les fichiers présents dans les répertoires img et aud
      6. Dans votre page de correction , ajoutez un titre de niveau 1 contenant le titre du tutoriel et un LIEN vers votre page index.html
      TUTORIEL 9: À partir du jeu précédent, faire disparaître le personnage principale lorsque touché par l'ennemi, afficher un message "Partie perdue" et recharger le jeu
      1. Lancez Tululoo
      2. Ouvrez le jeu que vous avez créé au tutoriel précédent
      3. Dans l'onglet OBJETS, double-cliquez sur votre personnage principal et ajoutez un événement COLLISION avec l'objet obj_ennemi
      4. Insérez ce script pour cet événement
        
        instance_destroy();
         
        setTimeout(function(){alert('Partie perdue')},1000);
         
        setTimeout(function(){document.location.reload();},2000);
        

      5. Téléchargez vos fichiers votrenom.xml, game.js et index.html dans le répertoire tululoo de votre espace de téléchargement et téléchargez dans les répertoires img et aud les fichiers présents dans les répertoires img et aud
      6. Dans votre page de correction , ajoutez un titre de niveau 1 contenant le titre du tutoriel et un LIEN vers votre page index.html
      TUTORIEL 10: Création d'un personnage animé en utilisant une des 3 méthodes décrites ci-dessous :

      1. Créez dans votre jeu ou dans un nouveau jeu un personnage animé de votre choix.
        Méthode 1 : voir le tutoriel no 6

        Méthode 2 :
        1. Trouvez ou fabriquez une série d'images qui produiront votre animation
          Exemple :





        2. Ajoutez un sprite et cliquez le bouton EDIT
        3. Cliquez ensuite le bouton vert + pour importer chacune de vos images
        4. Cliquez le bouton Done + Done


        Méthode 3 :
        1. Trouvez ou fabriquez une image animée au format .gif de votre animation
          Exemple :
        2. Redimensionnez cette image en tapant dans le terminal et en remplacant "rd.gif" par le nom de votre image et en fixant les dimensions de votre choix :
          mogrify -resize 40x40 rd.gif rd.gif
        3. Tapez dans le terminal en remplacant rd.gif par le nom de votre image :
          convert rd.gif rda.png
        4. Vous obtiendrez une série d'images au format .png





        5. Ajoutez un sprite et cliquez le bouton EDIT
        6. Cliquez ensuite le bouton vert + pour importer chacune de vos images
        7. Cliquez le bouton Done + Done
      TUTORIEL 11 : Un jeu de tir
      1. Dans un nouveau jeu, créez un sprite/objet personnage principale et un sprite/objet balle
      2. Sur le personnage principal (dans l'évévement STEP):
        //diriger le personnage en fonction de la position de la souris
        image_angle = point_direction(x,y,mouse_x,mouse_y);
         
        if (mouse_pressed) { 
        	shoot = instance_create(x,y,obj_balle); 
        	shoot.direction = image_angle; 
        	shoot.speed = 15; 
        }
      3. Placez votre personnage principale dans votre scène
      TUTORIEL 12 : Ouverture d'une porte sur ramassage d'un objet
      1. Créez une mur sprite/objet mur
      2. Créez un sprite/objet porte
      3. Créez un sprite/objet objet à ramasser
      4. Créez un sprite/objet personnage
      5. Positionnez le personnage principal et l'objet à ramasser à l'intérieur des murs
      6. Sur l'objet à ramasser, créez l'événement collision avec joueur
      7. Insérez ce script
        instance_destroy();
        instance_list(obj_porte)[0].instance_destroy();
        

      8. Sur l'objet joueur, créez l'événement collision avec la porte
      9. Insérez ce script
         x = xprevious;
        y = yprevious;
        


      TUTORIEL 13 : Utilisation d'un compteur
      1. définir la variable du compteur dans l'onglet GAME + Edit Global Variables
         compteur = 10;
        
      2. sur un évévement collision avec un objet, augmenter ou diminuer la valeur de la variable :
         compteur += 1;
         compteur -= 1;
        


      TUTORIEL 14 : Utilisation d'une zone d'affichage de texte
      1. définir la variable pour le texte à afficher dans GAME + Edit Global Variables : taa="Bienvenue"
      2. sur un événement (exemple: collision avec un objet), assigner une valeur à cette variable : taa="ouch!!!";
      3. Créer un sprite + objet "obj_zonemessage"
      4. Créer un FONT et définir les paramètres
      5. Ajoutez à votre SCENE votre objet "obj_zonemessage" :
      6. Sur l'obj_zonemessage, ajouter un DRAW ayant comme contenu :
        y = room_viewport_y;
        x = room_viewport_x;
        draw_set_font(fnt_taa);
        draw_text(x, y, "Message : " + taa);
        


      TUTORIEL 15 : Scène d'introduction et niveau 2 :
      1. Ajoutez une scène d'introduction à votre jeu nommée scene_intro
      2. Insèrez dans cette scène une zone de texte (sprite "spr_zonedetexteintro" et objet "obj_zonedetexteintro")
      3. Dans l'onglet GAME + Edit Global Variables, ajoutez une variable:
        texteintro="Texte d'introduction ..."
      4. Utilisez ou créez un FONTS
      5. Sur l'objet "obj_zonedetexteintro", ajoutez l'événement DRAW
        y = room_viewport_y;
        x = room_viewport_x;
        draw_set_font(fnt_taa);
        draw_set_color(0, 0, 0);
        draw_text(x, y ,   texteintro);
        
      6. Ajoutez sur ce même objet l'événement STEP
      7. Créez le sprite+objet de l'objet à déplacer (obj_plane)
      8. Ajoutez sur le personnage principale un évévement CREATION
      9. Ajoutez les commandes :
        if(x > 600)
        {
        x=0;
        }
        


      TUTORIEL 17 : (merci à Guillaume Guindon) : Faire marcher/courir votre personnage vers la droite et/ou la gauche (remplacer un sprite)
      1. Créez votre nouveau sprite nommé spr_personnage2 qui sera orienté dans le sens opposé du spr_personnage
      2. Utilisez votre obj_personnage
      3. Modifier le script de STEP
      4. Ajoutez les commandes : sprite_index=spr_personnage2;
        ou
        modifiez la valeur de image_angle = 0;
        Exemple :
        if ( keyboard_check( vk_right )) { 
            x = x + 5; 
        	image_angle = 0;
         	sprite_index=spr_personnage;
        } 
        
        if ( keyboard_check( vk_left )) { 
            x = x - 5; 
        	image_angle =0;
        	sprite_index=spr_personnage2;
         
        } 
        


      TUTORIEL 18 : Création d'un objet avec emplacement aléatoire et déplacement aléatoire
      1. Utilisez votre obj_personnage
      2. Modifier le script de STEP
      3. Ajoutez les commandes :
        new_plane = instance_create( irandom(500),irandom(500), obj_plane );
        new_plane.speed = 0.8;
        new_plane.direction = irandom(180);


      TUTORIEL 19 : (merci à Guillaume Guindon) : Faire sauter votre personnage
      1. Dans votre onglet GAME + EDIT CUSTOM FUNCTIONS, ajoutez
         function min(x, y)
        {
        	return x < y ? x : y;
        }
        function max(x, y)
        {
        	return x > y ? x : y;
        }
        function sign(x)
        {
        	return x > 0 ? 1 : x < 0 ? -1 : 0;
        }
        function abs(x)
        {
        	return x < 0 ? -x : x;
        }
        
      2. Dans votre onglet OBJETS + sur votre personnage principal, ajoutez un événement STEP qui contiendra
        // solids at offsets:
        g = place_meeting(x, y + 1, obj_solid) != null
        gl = place_meeting(x - 1, y, obj_solid) != null
        gr = place_meeting(x + 1, y, obj_solid) != null
        // keyboard states:
        kcl = keyboard_check(key_left) ? kpowl : 0;
        kcr = keyboard_check(key_right) ? kpowr : 0;
        kcu = keyboard_check(key_up)
        kcd = keyboard_check(key_down)
        // regenerate key power:
        kpowl = Math.min(kpowl + kpowlr, 1)
        kpowr = Math.min(kpowr + kpowrr, 1)
        // velx:
        velx += (kcr - kcl) * haccel
        velx = sign(velx) * max(0, min(hmax, abs(velx) - (g ? hfrict : vfrict)))
        // walljump:
        if ((kcu || kcd) && !g)
        {
        	if (gl && kcl > 0)
        	{
        		velx = wjumph
        		vely = kcu ? wjumpu : wjumpd
        		kpowl = 0
        	}
        	if (gr && kcr > 0)
        	{
        		velx = -wjumph
        		vely = kcu ? wjumpu : wjumpd
        		kpowr = 0
        	}
        }
        // velx:
        xs = (velx > 0 ? +1 : velx < 0 ? -1 : 0)
        for (xd = abs(velx); xd > 0; xd -= 1)
        {
        	if (g && (place_meeting(x + xs, y + 1, obj_solid) == null)) {
        		y += 1
        	} else if (place_meeting(x + xs, y, obj_solid) == null) {
        		// covered by other actions
        	} else if (place_meeting(x + xs, y - 1, obj_solid) == null) {
        		y -= 1
        		xd -= 0.5
        	} else {
        		velx = 0
        		xs = 0
        		break
        	}
        	x += xs
        }
        // yspeed manipulation:
        if (!g)
        {
        	vely += vgravi
        } else {
        	vjumpc = vjumpx
        }
        if (keyboard_check_pressed(key_up) && vjumpc > 0 && vely >= 0)
        {
        	vjumpc -= 1
        	vely = -vjump[vjumpx - vjumpc]
        }
        //
        ys = sign(vely)
        for (yd = abs(vely); yd > 0; yd -= 1)
        {
        	if (place_meeting(x, y + ys, obj_solid) == null)
        	{
        		y += ys
        	} else {
        		vely = 0
        		break
        	}
        }
        
        
        
        
        if ( keyboard_check_pressed( vk_right)) {
        x+=1;
        }
        
        
        if ( keyboard_check_pressed( vk_left)) {
        x-=1;
        }
        

      3. Dans votre onglet OBJETS + sur votre personnage principal, ajoutez un événement CREATION qui contiendra
        velx = 0
        vely = 0
        haccel = 0.7
        hfrict = 0.4
        hmax = 4
        vgravi = 0.2
        vjump = new Array;
        vjump[1] = 5
        vjump[2] = 4
        vjumpx = 2
        vjumpc = vjumpx
        wjumpu = -5
        wjumpd = +2
        wjumph = 4
        vfrict = 0.2
        kpowl = 1.0
        kpowlr = 0.02
        kpowr = 1.0
        kpowrr = 0.02
        //
        key_up = vk_up
        key_down = vk_down
        key_left = vk_left
        key_right = vk_right
        
        

      4. Dans votre onglet OBJETS + sur votre personnage principal, ajoutez un événement DRAW qui contiendra
        
        draw_sprite(sprite_index, image_index, x, y)
        // draw "HUD":
        s = "vel(" + (velx >> 0) + ", " + (vely >> 0) + ")"
        l = room_viewport_x + 3
        t = room_viewport_y + 16
        draw_set_font(fnt_ui)
        draw_set_valign(fa_bottom)
        draw_set_halign(fa_left)
        draw_set_color(0, 0, 0)
        draw_text(l, t - 1, s)
        draw_text(l, t + 1, s)
        draw_text(l - 1, t, s)
        draw_text(l + 1, t, s)
        draw_set_color(255, 255, 255)
        draw_text(l, t, s)
        


      TUTORIEL 20 : : Redimensionner la scène
    38. AIDE TUTULOO :













    39. Godot (Windows et Linux)
      Tutoriels godot
      Téléchargez les sources godot
      Guide d'installation à partir des sources
      FAQ godot
      Procédure d'installation sur les postes de l'école :
      tapez successivement dans le terminal :
      mkdir ./godot
      
      cd ./godot
      
      wget https://godot.blob.core.windows.net/devel/2014-10-10/godot_x11-1.0devel.32
      
      wget http://security.ubuntu.com/ubuntu/pool/main/e/eglibc/libc6_2.15-0ubuntu10.7_i386.deb
      
      mkdir ~/libc6-hack
      
      dpkg-deb -x ./libc6_2.15-0ubuntu10.7_i386.deb ~/libc6-hack/
      
      echo alias godot=\'LD_LIBRARY_PATH=~/libc6-hack/lib/i386-linux-gnu/ ~/godot/godot_x11-1.0devel.32\'  >> ./.bashrc 
      
       
      
      
      
      
      
       
      


    1. Installez les logiciels requis.

    2. Lisez la documentation qui accompagne ces logiciels.

    3. Explorez les possibilités de cette plate-forme.

    4. Produisez un/des fichiers de démonstration des possibilités explorées pour la plate-forme choisie.

    5. Téléchargez les documents produits dans votre espace de téléchargement.

    6. Ajoutez une page à votre portfolio en affichant l'assistant HTML ainsi que la directive 94215

    7. Inscrivez dans le champ titre : Exploration de plates-formes de création de jeux

    8. Sélectionnez la section : MODULE JEUX

    9. Sélectionnez la matière : informatique

    10. Inscrivez dans le champ no de la directive : 94215

    11. Si vous avez utilisé TULULOO, insérez SEULEMENT un titre de niveau 1 contenant le TITRE COMPLET DU TUTORIEL réalisé ET un LIEN vers votre fichier .html

    12. Si vous avez utilisé une autre plate-forme que TULULOO, inscrivez dans votre page le titre de niveau 1 : Exploration de plates-formes de création de jeux

    13. Identifiez le nom de la plate-forme évaluée

    14. Identifiez le temps requis pour la réalisation de votre travail.

    15. Identifiez le système d'exploitation utilisé : Windows ou Linux.

    16. Indiquez les points positifs de cette plate-forme

    17. Indiquez les points "négatifs" (limites, difficultés, connaissances requises) de cette plate-forme

    18. Insérez dans votre page une description de votre production

    19. Insérez dans votre page les liens vers les fichiers produits

    20. Insérez dans votre page vos images (capture d'écran), vidéos (capture vidéo) ou tout autre document utile.

    21. Ajoutez un lien vers le tutoriel utilisé.

    22. Si vous avez utilisé SandBoxGameMaker, ajoutez et complètez le texte suivant:
      
      dans ce travail, j'ai utilisé :
      
      
      les  constructions (structures particulières) suivantes : 
      .....
      
      les entités suivantes : 
      .....
      les déclencheurs suivants :...
      ... 
      les matériaux suivants :
       ....
      les scripts suivants :
      ....
      
      les objets .md3 modifiés suivants  :
      .....
      
      les objets créés et importés suivants :
      .....
      
      mon jeu utilise un scénario particulier suivant :
      .....
      
    23. Accompagnez chacun de ces éléments d'une capture-écran-image OU faites une démonstration de ces éléments à l'enseignant à partir de votre jeu.

    24. Ajoutez 2 sauts de lignes entre chacun de ces éléments.

    25. 5 points additionnels seront alloués (une seule fois) si vous insérez une capture-écran-vidéo de votre jeu final en utilisant gtkrecordmydesktop.
      Autre option : Afin de créer un fichier vidéo à partir de Sandboxgamemaker (tutoriel ici), vous devez :
      1. Utilisez le lanceur de commande Sandboxgamemaker (touche clavier #)
      2. Tapez movie monjeu.avi
      3. Pour arrêter la capture, tapez movie
      4. le fichier créé sera placé dans le répertoire /home/p/.platinumarts/
      5. Ce fichier sera passablement lourd, il faudra ensuite réduire sa taille (consulter l'activité "réduction de la taille d'une fichier vidéo" no 59986 afin de connaître la procédure de réduction de la taille d'une fichier vidéo)

      ATTENTION, réduisez la taille de votre fenêtre avant de faire la capture-écran-vidéo afin que le fichier produit ne soit pas trop lourd. Vous pouvez également consulter l'activité "réduction de la taille d'une fichier vidéo" no 59986 afin de connaître la procédure de réduction de la taille d'un fichier vidéo.

    26. Visualisez votre page et apportez des modifications au besoin.