Page 1 sur 1

[WebGL] gameInstance.SendMessage --> renvoyer plusieurs arguments

Publié : 15 Nov 2017 12:42
par laurent357
Bonjour à toutes et à tous,

Je travaille sur une appli Unity qui doit communiquer avec un fichier Javascript (un .js destiné à un navigateur, pas un .js contenant un script Unity!)

Je dois donc échanger des données entre mon application Unity et ce fichier Javascript et inversement.
J'utilise donc, dans mon fichier Javascript la méthode :

Code : Tout sélectionner

gameInstance.SendMessage(GameObject,MéthodeC#àAtteindre,ArgumentàPasser);
... et ça marche trèèèèès bien :)

Cependant, j'aimerais pouvoir renvoyer plusieurs arguments vers mon app Unity, donc :

Code : Tout sélectionner

gameInstance.SendMessage(GameObject,MéthodeC#àAtteindre,ArgumentàPasser1,ArgumentàPasser2,...);
Mais là, mes arguments ne passent pas (même pas le 1er ... :pleur4: )
Mon ami Google ne m'a renvoyé aucune réponse exploitable sur le sujet ... :-/

J'ai résolu le problème en concaténant les arguments avec un séparateur de manière à n'avoir qu'un seul arg à passer.

Quelqu'un connaîtrait-il une solution pour simplement passer plusieurs paramètres.

D'avance, je vous remercie.

[Laurent]

PS: Désolé pour la nomenclature du titre, j'ai pas posté depuis longtemps, et je l'ai vue trop tard, j'étais pas attentif ..:rouge:

Re: [WebGL] gameInstance.SendMessage --> renvoyer plusieurs arguments

Publié : 15 Nov 2017 22:29
par Max
Bonsoir Laurent,
laurent357 a écrit :
15 Nov 2017 12:42
PS: Désolé pour la nomenclature du titre, j'ai pas posté depuis longtemps, et je l'ai vue trop tard, j'étais pas attentif ..:rouge:
tu peux sans problème éditer ton message et en modifier le titre dans ce cas.

Concernant ton soucis, c'est un sujet déjà abordé sur le forum.
Par exemple ce topic: viewtopic.php?t=13741
Bonne lecture ;)

Re: [WebGL] gameInstance.SendMessage --> renvoyer plusieurs arguments

Publié : 17 Nov 2017 15:52
par laurent357
Bonjour Max,

Je pense que l'on ne parle pas de la même chose...
C'est probablement moi qui n'ai pas été assez clair :oops:

Je parle bien de passez 2 arguments à une fonction, mais dans le cas qui m'occupe, il s'agit de méthodes Unity permettant de communiquer entre une appli Unity WebGL contenue dans une page html et un fichier .js situé à côté du fichier html en utilisant dans mon fichier C# la méthode : Application.ExternalCall("nomdelafonction", "argument"); et dans mon fichier .js (donc du .js web quoi ... :) ) la méthode : gameInstance.SendMessage('nomdugoattachéalaclasse','nomdelamethode','argument').

Dans la doc Unity, il ne montre le fonctionnement qu'avec 1 seul argument ... c'est pourquoi j'ai concaténé les divers arguments à passer.

Merci, bonne journée. :)

Re: [WebGL] gameInstance.SendMessage --> renvoyer plusieurs arguments

Publié : 17 Nov 2017 15:57
par boubouk50
De ce que j'ai lu, la réponse est bien celle-là, c'est à dire que la fonction ne prend en compte qu'un seul argument, il faut donc envoyer un tableau, une liste ou une chaîne de caractère qui contient tous les arguments, et c'est de l'autre côté que tu vas les séparer.

Re: [WebGL] gameInstance.SendMessage --> renvoyer plusieurs arguments

Publié : 20 Nov 2017 11:59
par laurent357
Ok, merci pour vos réponses. ;-)