Exemplo n.º 1
0
        public void OnUpdate(float deltaTime)
        {
#if UNITY_IPHONE || UNITY_ANDROID && !UNITY_EDITOR
            AddInputData(EInputDataType.Acceleration, Input.acceleration);
            AddInputData(EInputDataType.Gyroscope, mGyro.attitude);
            List <SenssorDataStruct> dataList = new List <SenssorDataStruct>();
            foreach (KeyValuePair <int, object> pair in mInputDataDic)
            {
                SenssorDataStruct data = new SenssorDataStruct();
                data.dataType = pair.Key;
                data.data     = JsonUtility.ToJson(pair.Value);
                dataList.Add(data);
            }
            SenssorDataListStruct list = new SenssorDataListStruct();
            list.dataList = dataList;
            NetworkManager.Instance.SendSocketMessage(ESocketEventType.SenssorData, JsonUtility.ToJson(list));
            list.dataList.Clear();
            list.dataList = null;
#endif
        }
Exemplo n.º 2
0
        public void OnAwake()
        {
#if UNITY_EDITOR || UNITY_STANDALONE
            NetworkManager.Instance.RegistSocketEventHandler(ESocketEventType.SenssorData, value =>
            {
                try
                {
                    SenssorDataListStruct dataList = JsonUtility.FromJson <SenssorDataListStruct>(value);
                    for (int i = 0; i < dataList.dataList.Count; i++)
                    {
                        SenssorDataStruct data = dataList.dataList[i];
                        if (data.dataType == (int)EInputDataType.Gyroscope)
                        {
                            Quaternion qua = JsonUtility.FromJson <Quaternion>(data.data);
                            AddInputData(EInputDataType.Gyroscope, qua);
                        }
                        else if (data.dataType == (int)EInputDataType.Acceleration)
                        {
                            Vector3 acce = JsonUtility.FromJson <Vector3>(data.data);
                            AddInputData(EInputDataType.Acceleration, acce);
                        }
                    }
                }
                catch (Exception e)
                {
                    Debug.Log("解析传感器数据出错   error: " + e.Message);
                }
            }
                                                             );
#elif UNITY_IPHONE || UNITY_ANDROID
            if (mGyro != null)
            {
                mGyro.enabled = true;
            }
#endif
        }