Sélectionnez votre langue

"Les cireurs de pompes s'entendent toujours dire que le cuir ne brille pas assez."
Nicolas Hulot

L'objectif de ce tutoriel est de découvrir le détecteur d'évènement joystick.
Si vous possédez un joystick, vous allez pouvoir l'utiliser pour contrôler le personnage.

***

Version utilisée pour la rédaction de ce tuto (cf barre d'état) :

"UPBGE v0.3 Alpha (based on Blender v2.83.13)"


Conventions :
Les touches du clavier et les boutons de la souris sont indiqués entre '[' et ']'.
Les parcours à suivre dans l'interface utilisent '>' comme séparateur.
Quelques exemples :

[A] : touche 'A'.
[Num .] : '.' sur le pavé numérique.
[BGS] : Bouton Gauche de la Souris.
[BMS] : Bouton du Milieu de la Souris (il est possible de cliquer avec la molette !).
[BDS] : Bouton Droit de la Souris.
[Maj]+[BDS] : maintenir la touche Majuscule enfoncée et cliquer avec le Bouton Droit de la Souris.
File > Save : menu "File", puis item de menu "Save".


Notre point de départ sera le fichier obtenu à la fin du Tuto 1.
Si vous n'avez pas suivi le Tuto 1, téléchargez le fichier :

clavier.blend (748 Kio)

Ouvrez le fichier :
File > Open...

***

Pour enregistrer le fichier, faites dans le menu principal :
File > Save As...,
choisissez le dossier où vous souhaitez enregistrer, puis cliquez dans la ligne de saisie contenant "clavier.blend", tapez le nom sous lequel vous souhaitez enregistrer le fichier ("joystick", par exemple) et validez la saisie avec [Entrée] (l'extension ".blend" est ajoutée automatiquement).
Enfin validez l'enregistrement avec [Entrée].
Par la suite, pensez à enregistrer de temps en temps, il suffira de faire :
File > Save
En fait, la version de UPBGE utilisée ici étant marquée "Alpha", elle est potentiellement instable, il est donc fortement recommandé d'enregistrer souvent (raccourci clavier : [Ctrl]+[S]) !

***

Suzanne doit être sélectionnée (contour orange), si ce n'est pas le cas, faites [BGS].

Dans le "Logic Editor" (zone du bas), ajoutez un détecteur d'évènement joystick :
Add Sensor > Joystick

Capture d'écran : Add Sensor - Joystick


Dans la liste déroulante "Stick Direction" située en bas du bloc que vous venez d'ajouter, sélectionnez "Up".
Ce détecteur se déclenche lorsque le joystick est actionné vers le haut.
Le bloc a été nommé "Joystick" par défaut, renommez-le "Joy Haut" :

Capture d'écran : Up - Joy Haut


Repliez ce bloc en cliquant sur son icone "Expanded" en haut à gauche.
En utilisant l'icone "Move Sensor" qui représente un triangle pointant vers le haut, faites remonter le bloc "Joy Haut" jusqu'à ce qu'il se trouve juste en-dessous du bloc "Haut".

Dépliez le bloc contrôleur And relié au bloc "Haut" en cliquant sur son icone "Expanded".
Dans la liste déroulante "Type", remplacez "And" par "Or".
Renommez le bloc : "Ou"

Capture d'écran : Expanded - Or - Ou

Repliez ce bloc.
Enfin reliez le détecteur "Joy Haut" au contrôleur "Ou".
Suzanne avancera si on presse la touche "flèche vers le haut" ou si on actionne le joystick vers le haut.

Procédez de la même manière pour ajouter un détecteur pour la direction "Left", renommez-le "Joy Gauche".
Quand vous essayerez de renommer le bloc contrôleur, UPBGE le renommera automatiquement "Ou.001" pour le distinguer du bloc "Ou" déjà existant.

Procédez de la même manière pour ajouter un détecteur pour la direction "Right", renommez-le "Joy Droite".
Vous aurez peut-être besoin de faire glisser le contenu du "Logic Editor" en utilisant l'ascenseur sur le côté droit.

Enfin, pour le saut, ajoutez un dernier détecteur d'évènement joystick.
Dans la liste déroulante "Event Type", remplacez "Stick Directions" par "Buttons".
Renommez le bloc : "Bouton".
Tout comme nous avons été amenés à activer le bouton "Tap" pour le détecteur "Espace" (cf Tuto 1), il nous faut activer "Tap" pour "Bouton" (le contrôleur ne sera activé qu'un instant, même si le détecteur reste actif) :

Capture d'écran : Tap


Comme précédemment, transformez le bloc And en Or, renommez-le puis connectez-le à "Bouton".

Capture d'écran : Logic Editor


Vous pouvez lancer le jeu pour tester :
Properties > Render Properties > Game Resolution > Standalone Start

Voici le fichier final :

joystick.blend (749 Kio)