Example #1
0
        protected override void Update()
        {
            base.Update();

            if (State != EARCursorState.NOT_INITIALIZED)
            {
                List <ARRaycastHit> hits = new List <ARRaycastHit>();
                raycastManager.Raycast(new Vector2(Screen.width / 2.0f, Screen.height / 2.0f), hits, TrackableType.Planes);

                if (hits.Count > 0)
                {
                    transform.position = hits[0].pose.position;
                    transform.rotation = hits[0].pose.rotation;

                    if (State == EARCursorState.NOT_TRACKING)
                    {
                        myMeshRenderer.enabled = true;
                        State = EARCursorState.TRACKING;
                    }
                }
                else
                {
                    if (State == EARCursorState.NOT_TRACKING)
                    {
                        myMeshRenderer.enabled = false;
                        State = EARCursorState.NOT_TRACKING;
                    }
                }
            }
        }
Example #2
0
        protected override void Awake()
        {
            base.Awake();

            raycastManager = FindObjectOfType <ARRaycastManager>();

            myMeshRenderer = GetComponentInChildren <MeshRenderer>();
            if (IS_NOT_NULL(myMeshRenderer))
            {
                myMeshRenderer.enabled = false;
            }

            if (IS_NOT_NULL(raycastManager) &&
                IS_NOT_NULL(myMeshRenderer))
            {
                State = EARCursorState.NOT_TRACKING;
            }
        }