2016-04-11 15 views
4

Unity 5.3.3f1 Personal kullanıyorum ve koduma Unity Ping sınıfını kullanmam gerekiyor (http://docs.unity3d.com/ScriptReference/Ping.html). Dahili Birlik Oynatıcıdaki (http://i.stack.imgur.com/0kHmN.jpg) bina ve yürütme düzgün şekilde çalışıyor.İhracat Birliği çözümü WebGL'ye

using UnityEngine; 
using System.Collections; 
using System.Text; 
using System.Collections.Generic; 
using LitJson; 

public class PingScript : MonoBehaviour 
{ 
    string Url = null, pingAddress = "192.168.0.180"; 

    float pingStartTime; 

    // Use this for initialization 
    void Start() 
    {   
     CheckServerIp(); 
     if (Url == null) 
     {       
      pingAddress = "192.168.1.210"; 
      CheckServerIp(); 
     } 
     print(Url); 
    } 

    // Update is called once per frame 
    void Update() 
    { 
     if (Url != null) 
     { 
      //Do something 
     } 
    } 

    void CheckServerIp() 
    { 
     bool internetPossiblyAvailable; 
     switch (Application.internetReachability) 
     { 
      case NetworkReachability.ReachableViaLocalAreaNetwork: 
       internetPossiblyAvailable = true; 
       break; 
      default: 
       internetPossiblyAvailable = false; 
       break; 
     } 
     if (!internetPossiblyAvailable) 
     { 
      Url = null; 
     } 
     Ping ping = new Ping(pingAddress); 
     pingStartTime = Time.time; 
     if (ping != null) 
     {    
      if (ping.isDone) 
      {     
       if (ping.time >= 0) 
       {      
        Url = "http://" + pingAddress + ":3200/api/pumpvalues"; 
       } 
      } 
     } 
    } 
} 
+2

WebGL'de bir çok sınırlama ve garip hata var. Aynı kodu javascript’e yazabilir ve Unity’ten uzaktan yazabilirsiniz. Bu kesinlikle işe yarayacak. [Unity için tarayıcı eklentileri yazmadaki dokümanlar] (http://docs.unity3d.com/Manual/webgl-interactingwithbrowserscripting.html) –

cevap

4

sadece Ağ şeyler desteklenen:

"error CS0246: The type or namespace name 'Ping' could not be found. Are you missing a using directive or an assembly reference?"

Bu, ilgili Ping kodu ile C# kaynak kodu: Ben WebGL bu çözümü vermek deneyin Ancak, ben bir sonraki hata alma Unity WebGL, WWW ve UnityWebRequest sınıfıdır. Sunucuya bağlanıp bağlanamadığını ve bağlantının başarılı olup olmadığını kontrol eden WWW ile kendi ping işlevinizi yazabilirsiniz.