Gérer plusieurs controller

Questions techniques liées à l’utilisation d'Unity (et n'entrant pas dans le cadre d'une des sections suivantes)
Badfly
Messages : 62
Inscription : 19 Mai 2017 14:46

Gérer plusieurs controller

Message par Badfly » 05 Jan 2018 07:47

Bonjour à tous,

Alors voilà j'aimerais avoir vos conseils sur la manière de gérer plusieurs manette (4 Manettes) En effet, mon jeu est jouable en local à 4 sur le même ordinateur.
Pour l'instant voilà ce qu'il se passe : Au lancement de la partie, j'attribue à chaque joueur la manette qu'il lui faut (Manette1, Manette2 etc )
Ensuite sur Unity j'ai modifié les Inputs. Prenons par exemple la touche Jump. Je l'ai créé 4 fois "Jump_Manette1" "Jump_Manette2" etc ... (maximum 4 joueurs en local) Bien sur je prend soin de modifier Joy Num en fonction de la manette. Exmpl Jump_Manette1 -> Joy Num = Joystick 1

Après avoir fait cela pour toute les actions, en code dans Update () je vais appeler Input.GetButton("Jump_" + controller) -> controller indique quelle manette utiliser.

Voilà, tout cela fonctionne bien, mais je trouve ça ...moche, brouillon. D'où m'a venu, auriez vous un autre moyen de faire ? Des conseils ? :D

Merci d'avance, en espérant ne pas avoir été trop long.

Avatar de l’utilisateur
Alesk
Messages : 2303
Inscription : 13 Mars 2012 09:09
Localisation : Bordeaux - France
Contact :

Re: Gérer plusieurs controller

Message par Alesk » 05 Jan 2018 12:02

Salut !

Moi aussi je trouve ça cracra... Mais pour le moment il n'y a pas vraiment de solution plus propre !

Il existe quelques outils sur l'asset store qui permette de gérer plusieurs modèles de manettes différentes... Car comme rien n'est jamais simple, le mapping des boutons et des axes n'est pas homogène sur toutes les manettes !
https://assetstore.unity.com/packages/t ... trol-14695

Donc si on veut par exemple supporter tous les modèles possibles de manettes disponibles sur pc, il faut toutes les tester et se créer des presets pour chacun.
En gros il faut faire une surcouche aux contrôles définis dans les input de l'editor d'unity pour les rediriger vers les bons axes/boutons selon les presets. C'est un beau merdier, et ça demande bien entendu d'avoir sous la main toutes les manettes pour tester.

Chez Unity Technologies, ils sont en train de bosser sur une mise à jour de tout ça avec un truc plus souple, mais c'est encore en chantier.
https://forum.unity.com/threads/input-s ... te.508660/

Donc pour le moment, le mieux est de garder ton code tel quel et d'attendre de voir ce que va offrir la nouvelle version proposée par Unity ;)

Badfly
Messages : 62
Inscription : 19 Mai 2017 14:46

Re: Gérer plusieurs controller

Message par Badfly » 05 Jan 2018 14:12

Ca marche merci de ton conseil.

Oui, pendant mes recherches j'avais vu qu'il existait des solutions avec mappage des touches complètes. Mais là le soucis c'est plus sur la gestion de plusieurs manette en même temps.

Merci encore pour ta réponse :D Sujet clos par conséquence

Avatar de l’utilisateur
Alesk
Messages : 2303
Inscription : 13 Mars 2012 09:09
Localisation : Bordeaux - France
Contact :

Re: Gérer plusieurs controller

Message par Alesk » 05 Jan 2018 15:15

C'est quoi le souci de gérer plusieurs manettes en même temps ?

Répondre

Revenir vers « Unity le logiciel »