Android : Communication externe

Toutes les questions sur le développement Mobile, y compris la partie script.
BazX
Messages : 6
Inscription : 27 Mars 2019 16:14

Android : Communication externe

Message par BazX » 27 Mars 2019 18:27

Bonjour à tous,

J'ai comme projet de fin d'étude de mettre en place une application Android qui contrôle une application de réalité virtuelle.
Je suis encore dans la phase de recherche et j'ai pas trouvé grand chose sur internet,

Si vous avez des tuto qui peuvent m'aider.

Merci d'avance.
 ! Message de : Max
Quelle rapport avec la présentation du Staff ?
Pour savoir où poster, merci de lire la Charte et sa FAQ .

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6185
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Android et VR

Message par boubouk50 » 28 Mars 2019 09:49

BazX a écrit :
27 Mars 2019 18:27
J'ai comme projet de fin d'étude de mettre en place une application Android qui contrôle une application de réalité virtuelle.
Qu'est ce que cela veut dire?
Est-ce une application Android qui contrôle à distance un programme VR (sur une machine) ou bien Un application VR sous Android?

Merci de faire l'effort de nous informer avec plus qu'une seule ligne.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

BazX
Messages : 6
Inscription : 27 Mars 2019 16:14

Re: Android et VR

Message par BazX » 28 Mars 2019 10:41

Une application Android qui contrôle une application RV à distance (Via bluetooth ou un réseau wifi)

BazX
Messages : 6
Inscription : 27 Mars 2019 16:14

Re: Android et VR

Message par BazX » 28 Mars 2019 10:43

exemple simple de contrôle : changer le couleur d'un game object

BazX
Messages : 6
Inscription : 27 Mars 2019 16:14

Re: Android et VR

Message par BazX » 28 Mars 2019 11:06

Pour l'instant j'ai trouvé une solution mais qui tourne que sur Unity 2017

J'ai crée deux scènes (Scène de contrôle et scène Game ), l’idée c'est de builder la scène de contrôle sous Android avec un script attaché à un game object vide lié à la scène

J'ai suivi ce tuto qui contrôle une voiture sous unity via une app Android :
Creating a Game Controller from a Mobile Device with Unity

Le code compile, l'application Android est bien connecter sur Unity mais j'arrive pas à commander la voiture :faché:, j'ai essayé d'ajouter des action plus simple changer le couleur d'un game object mais toujours y'a pas de résultat .




le script coté scène de contrôle

Code : Tout sélectionner

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;
using UnityEngine.Networking.NetworkSystem;
using UnityStandardAssets.CrossPlatformInput;


public class Client : MonoBehaviour {


    NetworkClient client;


    private void OnGUI()
    {

        string ipaddress = "192.168.43.20";
        GUI.Box(new Rect(10, Screen.height - 50, 150, 50), ipaddress);
        GUI.Label(new Rect(20, Screen.height - 30, 150, 20), "Status:" + client.isConnected);


        if(!client.isConnected)
        {
            if(GUI.Button(new Rect(10,10,60,50),"Connect"))
            {
                Connect();

            }


        }



    }

    // Use this for initialization
    void Start () {

        client = new NetworkClient();


    }
    void Connect()
    {
        client.Connect("192.168.43.20", 25000);

        
    }
    

et coté Game (scene principale ) :

Code : Tout sélectionner


using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
using UnityEngine.Networking;
using UnityEngine.Networking.NetworkSystem;
using UnityStandardAssets.CrossPlatformInput;




public class Server : MonoBehaviour
{


    private void OnGUI()
    {

        string ipaddress = Network.player.ipAddress;
        GUI.Box(new Rect(10, Screen.height - 50, 150, 50), ipaddress);
        GUI.Label(new Rect(20, Screen.height - 35, 150, 20), "Status:" + NetworkServer.active);
        GUI.Label(new Rect(20, Screen.height - 20, 150, 20), "Connected:" + NetworkServer.connections.Count);

    }



    // Use this for initialization
    void Start()
    {
        NetworkServer.Listen(25000);
    }

    // Update is called once per frame
    void Update()
    {

    }
}



Désolé pour la mauvaise rédaction !

Merci

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6185
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Android : Communication externe

Message par boubouk50 » 28 Mars 2019 11:27

Déjà, avant de toucher quoi que ce soit, je te conseille d'aller au bout du tuto pour que la voiture soit contrôlée.
Ce qui est important ici, ce n'est pas l'interaction que tu vas avoir, c'est la connexion entre tes deux parties. Envoyer "hello World" ou contrôler un joueur revient au même. Il faut avant tout établir cette connexion.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

BazX
Messages : 6
Inscription : 27 Mars 2019 16:14

Re: Android : Communication externe

Message par BazX » 28 Mars 2019 11:36

Salut boubouk50,
Merci pour ton retour
Voilà, la connexion est bien établie.
Mais comment faire pour changer un couleur de cube par exemple dans la scène Game(scène principale) via un buttons dans la scène de contrôle

Merci

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6185
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Android : Communication externe

Message par boubouk50 » 28 Mars 2019 11:42

Ah bah, j'ai pas fait ce tuto. Et je ne vais pas le faire pour te trouver la réponse.

Je suppose que tu envoies des données d'un côté (messages) et que tu les reçois de l'autre. Il faut donc savoir ce que tu veux envoyer et savoir comment l'appliquer.
Pour changer une couleur, il faudrait pouvoir envoyer la couleur d'un côté. De l'autre, à la récupération, savoir à quoi l'affecter. La couleur à affecter sera la couleur du matériau du MeshRenderer d'un gameObject. (cette opération a été résolue maintes fois sur ce forum, c'est une demande très commune)
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

BazX
Messages : 6
Inscription : 27 Mars 2019 16:14

Re: Android : Communication externe

Message par BazX » 28 Mars 2019 11:54

Merci

Répondre

Revenir vers « Développement plateformes mobile Iphone et Android »