Exemple #1
0
        private void Awake()
        {
            if (!gameObject.activeInHierarchy)
            {
                return;
            }
            _rightColliders = transform.GetChild(0).GetComponentsInChildren <Collider>();
            _leftColliders  = transform.GetChild(1).GetComponentsInChildren <Collider>();

            _input = AtomicInput.Instance;

            _rightStartingPointRenderer = rightStartingPoint.GetComponentsInChildren <MeshRenderer>();

            if (rightCurrentPositionMarker == null)
            {
                Debug.LogError("The TranslationToolController couldn't locate its right position marker. Please assign it in Inspector.");
            }
            else
            {
                _rightCurrentPositionRenderer = rightCurrentPositionMarker.GetComponent <MeshRenderer>();
            }

            rightLineRenderer = transform.GetComponentInChildren <LineRenderer>();

            _leftStartingPointRenderer = leftStartingPoint.GetComponentsInChildren <MeshRenderer>();

            if (leftCurrentPositionMarker == null)
            {
                Debug.LogError("The TranslationToolController couldn't locate its left position marker. Please assign it in Inspector.");
            }
            else
            {
                _leftCurrentPositionRenderer = leftCurrentPositionMarker.GetComponent <MeshRenderer>();
            }

            _rightControllerMarker = RightMarker.Instance;
            _leftControllerMarker  = LeftMarker.Instance;

            _rightHandPoser    = _rightControllerMarker.transform.GetComponentInChildren <OVRHand>();
            _leftHandPoser     = _leftControllerMarker.transform.GetComponentInChildren <OVRHand>();
            _rightHandSkeleton = _rightControllerMarker.transform.GetComponentInChildren <OVRSkeleton>();
            _leftHandSkeleton  = _leftControllerMarker.transform.GetComponentInChildren <OVRSkeleton>();

            _rightPreMarkerRenderer = _rightPreMarker.GetChild(0).GetComponent <MeshRenderer>();
            _leftPreMarkerRenderer  = _leftPreMarker.GetChild(0).GetComponent <MeshRenderer>();

            ToggleTranslateToolVisibility(false, false);
            ToggleTranslateToolVisibility(false, true);
            ToggleTranslateToolColliders(false, false);
            ToggleTranslateToolColliders(false, true);
        }
        private void Awake()
        {
            _input           = AtomicInput.Instance;
            _rightHandMarker = RightMarker.Instance;
            _leftHandMarker  = LeftMarker.Instance;

            _rightHandSkeleton = _rightHandMarker.transform.GetComponentInChildren <OVRSkeleton>();
            _leftHandSkeleton  = _leftHandMarker.transform.GetComponentInChildren <OVRSkeleton>();

            _rightHand = _rightHandMarker.transform.GetComponentInChildren <OVRHand>();
            _leftHand  = _leftHandMarker.transform.GetComponentInChildren <OVRHand>();

            _rightHighlights = transform.GetChild(0).GetComponentsInChildren <TransformationModeHighlight>(true).ToList();
            _leftHighlights  = transform.GetChild(1).GetComponentsInChildren <TransformationModeHighlight>(true).ToList();

            _rightColliders = transform.GetChild(0).GetComponentsInChildren <Collider>(true);
            _leftColliders  = transform.GetChild(1).GetComponentsInChildren <Collider>(true);

            _rightMainRenderers = new List <MeshRenderer>();
            _leftMainRenderers  = new List <MeshRenderer>();

            MeshRenderer[] allRightRenderers = transform.GetChild(0).GetComponentsInChildren <MeshRenderer>(true);
            foreach (MeshRenderer renderer in allRightRenderers)
            {
                if (renderer.GetComponent <TransformationModeHighlight>() == null)
                {
                    _rightMainRenderers.Add(renderer);
                }
            }

            MeshRenderer[] allLeftRenderers = transform.GetChild(1).GetComponentsInChildren <MeshRenderer>(true);
            foreach (MeshRenderer renderer in allLeftRenderers)
            {
                if (renderer.GetComponent <TransformationModeHighlight>() == null)
                {
                    _leftMainRenderers.Add(renderer);
                }
            }

            _rightTextObjects = transform.GetChild(0).GetComponentsInChildren <Text>();
            _leftTextObjects  = transform.GetChild(1).GetComponentsInChildren <Text>();

            _rightLabelGroup = transform.GetChild(0).GetComponentInChildren <CanvasGroup>();
            _leftLabelGroup  = transform.GetChild(1).GetComponentInChildren <CanvasGroup>();

            _rightPositionMarker = transform.GetChild(0);
            _leftPositionMarker  = transform.GetChild(1);

            InitializeHighlightCapabilityOnBothCameras();
        }
        private void Awake()
        {
            _rightColliders = transform.GetChild(0).GetComponentsInChildren <Collider>();
            _leftColliders  = transform.GetChild(1).GetComponentsInChildren <Collider>();

            _input = AtomicInput.Instance;

            _rightStartingPointRenderer = rightStartingPoint.GetComponentsInChildren <MeshRenderer>();

            if (rightCurrentPositionMarker == null)
            {
                Debug.LogError("The TranslationToolController couldn't locate its right position marker. Please assign it in Inspector.");
            }
            else
            {
                _rightCurrentPositionRenderer = rightCurrentPositionMarker.GetComponent <MeshRenderer>();
            }

            rightLineRenderer = transform.GetComponentInChildren <LineRenderer>();

            _leftStartingPointRenderer = leftStartingPoint.GetComponentsInChildren <MeshRenderer>();

            if (leftCurrentPositionMarker == null)
            {
                Debug.LogError("The TranslationToolController couldn't locate its left position marker. Please assign it in Inspector.");
            }
            else
            {
                _leftCurrentPositionRenderer = leftCurrentPositionMarker.GetComponent <MeshRenderer>();
            }

            _rightControllerMarker = RightMarker.Instance;
            _leftControllerMarker  = LeftMarker.Instance;

            if (_rightSurfaceLockMarker != null)
            {
                _rightSurfaceMarkerRenderer = _rightSurfaceLockMarker.GetComponent <MeshRenderer>();
            }
            else
            {
                Debug.LogError("RotationToolController couldn't locate the _rightSurfaceLockMarker. Is it assigned in the Inspector?");
            }

            if (_leftSurfaceLockMarker != null)
            {
                _leftSurfaceMarkerRenderer = _leftSurfaceLockMarker.GetComponent <MeshRenderer>();
            }
            else
            {
                Debug.LogError("RotationToolController couldn't locate the _leftSurfaceLockMarker. Is it assigned in the Inspector?");
            }

            _rightHandSkeleton = _rightControllerMarker.transform.GetComponentInChildren <OVRSkeleton>();
            _leftHandSkeleton  = _leftControllerMarker.transform.GetComponentInChildren <OVRSkeleton>();

            _rightPreMarkerRenderer = rightPreMarker.GetChild(0).GetComponent <MeshRenderer>();
            _leftPreMarkerRenderer  = leftPreMarker.GetChild(0).GetComponent <MeshRenderer>();

            ToggleVisibility(false, false);
            ToggleVisibility(false, true);
            ToggleColliders(false, false);
            ToggleColliders(false, true);
        }