Cours

Code Player

Création de jeux video

Des cours pour apprendre à créer des jeux video

Depuis 2 ans, des cours de programmation de jeux video sont proposés à l'Asep, une structure associative à Besançon.

 

En 2014, les cours auront lieu les vendredi et commencent le vendredi 19 septembre :

 

  • 17h30 à 19h pour les débutants
    • 3 jeux de plus en plus complexes seront réalisés cette année et permettront d'apprendre la programmation (instructions de base, affichage d'objets, scrolling, gestion des collisions, Map Editor, bruitages et sons...)

 

  • 19h à 20h30 pour les initiés
    • La programmation vectorielle (3D) sera travaillée dès les premières scéances.

 

Les cours, ouverts aux plus de 13 ans, permettent d'apprendre les techniques de programmation des jeux video. Pour cela, un langage de programmation en français très simple à utiliser permet dès les premiers cours d'arriver à des résultats probants.

Les jeux créés l'année précédente

Le premier jeu créé le premier trimestre a eu pour objectif de présenter les bases de la programmation.

 

Le vaisseau gris dirigé avec les fleches du clavier doit percuter les sphères. Celles-ci rebondissent contre les parois.

 

Le fond spatial rebondit en arrière plan...

Le fond des sphères est composé de l'animation ci-dessous :

Le programme complet est écrit en moins de 200 lignes de code comme celles-ci :

 

For j=1 To 10

WaterX(j)=Random(1024-79)

WaterY(j)=Random(768-79)

WaterDeltaX(j)=Random(7)-4

WaterDeltaY(j)=Random(7)-4

WaterS(j)=1

Next

Le groupe "débutant" a réalisé un Space Invaders afin de poursuivre l'apprentissage de la programmation avec un jeu relativement facile à programmer.

Un petit extrait de code avec des commentaires en rouge...

j=0

Repeat ; on fait une boucle pour tester tous les missile et on prendra le premier qui n'est pas activé

j+1

If MissileEtat(j)=0 ; est-ce que le missile est activé ?

TempoMissile=20 ; met un tempo pour espacer les tirs des missiles

MissileEtat(j)=1 ; active le missile

MissileX(j)=ShipX+SpriteWidth(1)/2-2 ; positionne le missile sous le vaisseau en récupérant les

MissileY(j)=ShipY ; coordonnées du vaisseau

j=nbmissile ; permet de sortir et de ne pas lancer d'autres missiles en même temps

EndIf

Until j=nbmissile

 

; test les coordonnes du vaisseau afin qu'il ne sorte ni à droite, ni à gauche de l'écran

If ShipX<0

ShipX=0

EndIf

If ShipX>1024-SpriteWidth(1)

ShipX=1024-SpriteWidth(1)

EndIf

Le groupe des "initiés" a réalisé Chevalier, un jeu de conquête médiévale comprenant les deux interfaces ci-dessous .