Exemplo n.º 1
0
        void Update()
        {
            if (m_trackerBind == TrackerID.NONE)
            {
                enabled = false;
                return;
            }

            if (m_base != null)
            {
                return;
            }

            var bases = FindObjectsOfType <BaseVisual>();

            foreach (var b in bases)
            {
                if (b.RegisterTracker(this))
                {
                    m_base = b;
                    break;
                }
            }

            if (m_base == null)
            {
                m_model.enabled = false;
                m_controller    = null;
            }
            else
            {
                m_model.enabled = true;
            }
        }
Exemplo n.º 2
0
        void Update()
        {
            if (m_trackerBind == TrackerID.NONE)
            {
                enabled = false;
                return;
            }

            if (m_base != null)
                return;

            var bases = FindObjectsOfType<BaseVisual>();

            foreach(var b in bases)
            {
                if(b.RegisterTracker(this))
                {
                    m_base = b;
                    break;
                }
            }

            if(m_base == null)
            {
                m_model.enabled = false;
                m_controller = null;
            }
            else
            {
                m_model.enabled = true;
            }
        }
        void UpdateVisual()
        {
            SixenseCore.System ourSystem = SixenseCore.Device.SystemType;

            if (!SixenseCore.Device.BaseConnected)
            {
                if (m_base != null)
                {
                    Destroy(m_base.gameObject);
                }
                return;
            }

            if (m_base == null)
            {
                int index = -1;
                for (int j = 0; j < m_basePrefabs.Length; j++)
                {
                    if (m_basePrefabs[j] == null)
                    {
                        continue;
                    }

                    if (m_basePrefabs[j].m_systemType == ourSystem)
                    {
                        index = j;
                        break;
                    }
                }
                if (index == -1)
                {
                    return;
                }

                var go  = GameObject.Instantiate(m_basePrefabs[index].gameObject) as GameObject;
                var bas = go.GetComponent <BaseVisual>();

                go.layer = gameObject.layer;
                go.GetComponentInChildren <Renderer>().gameObject.layer = gameObject.layer;
                go.transform.parent        = transform;
                go.transform.localPosition = Vector3.zero;
                go.transform.localRotation = Quaternion.identity;

                m_base = bas;
            }
            else if (m_base.m_systemType != ourSystem && ourSystem != System.NONE)
            {
                Debug.LogWarning("Device type mismatch: Expected " + m_base.m_systemType + " Got " + ourSystem);
                Destroy(m_base.gameObject);
                return;
            }
        }
Exemplo n.º 4
0
        void UpdateVisual()
        {
            SixenseCore.System ourSystem = SixenseCore.Device.SystemType;
          
            if (!SixenseCore.Device.BaseConnected)
            {
                if (m_base != null)
                {
                    Destroy(m_base.gameObject);
                }
                return;
            }

            if (m_base == null)
            {
                int index = -1;
                for (int j = 0; j < m_basePrefabs.Length; j++)
                {
                    if (m_basePrefabs[j] == null)
                        continue;

                    if (m_basePrefabs[j].m_systemType == ourSystem)
                    {
                        index = j;
                        break;
                    }
                }
                if (index == -1)
                    return;

                var go = GameObject.Instantiate(m_basePrefabs[index].gameObject) as GameObject;
                var bas = go.GetComponent<BaseVisual>();

                go.layer = gameObject.layer;
                go.GetComponentInChildren<Renderer>().gameObject.layer = gameObject.layer;
                go.transform.parent = transform;
                go.transform.localPosition = Vector3.zero;
                go.transform.localRotation = Quaternion.identity;

                m_base = bas;
            }
            else if (m_base.m_systemType != ourSystem && ourSystem != System.NONE)
            {
                Debug.LogWarning("Device type mismatch: Expected " + m_base.m_systemType + " Got " + ourSystem);
                Destroy(m_base.gameObject);
                return;
            }
        }