Newsletter Developpez.com

Inscrivez-vous gratuitement au Club pour recevoir
la newsletter hebdomadaire des développeurs et IT pro

Godot - Marble Madness 3D

Support Android

L'auteur

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

I. Sommaire

Vous pouvez retrouver les autres épisodes de cette série dans le sommaire dédié.

II. Vidéo


Godot - Marble Madness 3D - Support Android


III. Résumé

Nous avons fini le jeu ! Faisons en sorte de pouvoir y jouer sur Android.

III-A. Nouveaux contrôles

Sur Android, le joueur ne pourra pas utiliser de clavier. En conséquence, nous devons remplacer les contrôles et intégrer le support de la souris qui pourra aussi être utilisé pour le support de l'écran tactile.

III-A-1. Script

Dans le script « player_control.gd », nous allons modifier le code pour supporter la souris. Commençons par ajouter de nouvelles variables :

 
Sélectionnez
# Support de la souris/écran tactile
var x_max
var y_max
var X = 0
var Y = 1

Dans la fonction _ready(), nous initialisons les variables x_max et y_max avec la largeur et la hauteur de l'écran. Pour récupérer ces informations, nous devons obtenir la zone visionnée à partir de la caméra :

 
Sélectionnez
    # Récupère la taille de l'écran
    var camera = get_node("/root/World/Camera")
    var rect = camera.get_viewport().get_rect()
    x_max = rect.size[X]
    y_max = rect.size[Y]

Ensuite, nous pouvons mettre à jour la fonction get_axis() qui nous servait à obtenir les contrôles à partir du clavier :

 
Sélectionnez
    # Support de la souris/écran tactile
    if Input.is_mouse_button_pressed( BUTTON_LEFT ):
        var mouse_pos = Input.get_mouse_pos()
        var axis2max = {"horizontal": {"center": x_max/2.0,
                                       "pos": mouse_pos[X]},
                        "vertical": {"center": y_max/2.0,
                                     "pos": mouse_pos[Y]}}
        var pos = axis2max[axis]["pos"]
        var center = axis2max[axis]["center"]
        return (pos - center) / center

Le code vérifie si un clic est effectué sur la souris. Dans ce cas, nous récupérons la position de la souris et nous la calculons un nombre entre -1 et 1 pour chaque axe suivant son décalage par rapport au centre de l'écran (le centre correspondant aux coordonnées 0,0).

III-B. Exportation du jeu vers Android

Dans l'interface, lorsque vous branchez votre téléphone Android, un nouveau bouton apparaît avec les boutons pour démarrer/stopper le jeu. Godot va transférer le paquet sur le téléphone et lancer le jeu automatiquement.

IV. Commenter

Vous pouvez commenter et donner vos avis dans la discussion associée sur le forum.

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

En complément sur Developpez.com

  

Copyright © 2015 Kwesi Davis. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.