Beispiel #1
0
    private void OnTutorialComplete()
    {
        foreach (Animator animator in _doorAnimators)
        {
            animator.SetTrigger("openTrigger");
        }
        _audioSource.clip = _sounds.DoorOpen;
        _audioSource.Play();

        TutorialSign.OnTutorialComplete -= OnTutorialComplete;

        _log.Append("tutorialComplete", true);
        _log.CommitLine();
        StartCoroutine(EndTutorial());
    }
    private void Update()
    {
        CheckFov();
        HiddenItem item = GetCurrentGazedAtItem();

        if (_isDiscoveryPending)
        {
            // Player looked away -- cancel discovery
            if (item == null)
            {
                _isDiscoveryPending = false;
            }
            else
            {
                _timeGazed += Time.deltaTime;
                if (_timeGazed >= _detectionTime)
                {
                    _gazedAtItem.Discover();
                    _isDiscoveryPending = false;

                    _log.Append(item.ItemType + "_discovered", true);
                }
            }
        }
        if (item != null && !_isDiscoveryPending)
        {
            _gazedAtItem        = item;
            _timeGazed          = 0f;
            _isDiscoveryPending = true;

            _log.Append(item.ItemType + "_firstSpotted", true);
        }

        _log.CommitLine();
    }
    private void Update()
    {
        _log.Append("LocalHeadPos", transform.localPosition);
        _log.Append("GlobalHeadPos", transform.position);
        _log.Append("HeadRot", transform.rotation.eulerAngles);
        _log.Append("PlayspacePos", transform.parent.position);


        _log.CommitLine();
    }
 private void Update()
 {
     UpdateArc();
     if (SteamVR_Actions.default_Teleport[SteamVR_Input_Sources.RightHand].stateDown && _isArcTargetValid)
     {
         _log.Append("isTeleporting", true);
         _teleporter.Teleport(_teleportMarker.transform.position);
     }
     _log.CommitLine();
 }
    private void Complete()
    {
        if (s_NextSign == NUMBER_OF_SIGNS)
        {
            OnTutorialComplete();
        }
        s_NextSign++;
        _fadeEffect.FadeWithEmission();
        enabled = false;

        _log.Append("complete", true);
        _log.CommitLine();
        Destroy(gameObject, 2f);
    }
Beispiel #6
0
    private void Update()
    {
        if (_leftHand != null)
        {
            _log.Append("LAlive", true);
            _log.Append("LPos", _leftHand.position);
            _log.Append("LRot", _leftHand.rotation.eulerAngles);
            LogButtonPresses('L', SteamVR_Input_Sources.LeftHand);
        }
        if (_rightHand != null)
        {
            _log.Append("RAlive", true);
            _log.Append("RPos", _rightHand.position);
            _log.Append("RRot", _rightHand.rotation.eulerAngles);
            LogButtonPresses('R', SteamVR_Input_Sources.RightHand);
        }

        _log.CommitLine();
    }
Beispiel #7
0
    // Called every frame when magnification active
    public float GetMagnification(RaycastHit gazePoint, Vector3 planeNormal)
    {
        if (!_isMagActive)
        {
            _isMagActive = true;
            ResetZoom(true);
        }
        if (_isTeleporting)
        {
            _log.CommitLine();
            return(_lastMagnification);
        }

        _log.Append("active", true);
        Vector3 gazeSceenPos = gazePoint.textureCoord;
        Ray     magRay       = _magCamera.ViewportPointToRay(gazeSceenPos);

        Vector3 hitPos;

        if (Physics.Raycast(magRay, out RaycastHit hit, _gazeRange, _layerMask))
        {
            hitPos = hit.point;
            _log.Append("curFrameGazePos", hitPos);
        }
Beispiel #8
0
    private void Update()
    {
        if (!_magManager.IsMagnifying)
        {
            return;
        }

        // Set + adjust position once per frame
        SetMarkerPosition();
        // If marker still collides after adjustment, target cannot be teleported to
        bool isTargetValid = IsTeleportTargetValid();

        _dotImage.SetValid(isTargetValid);

        _log.Append("targetValid", isTargetValid);

        SteamVR_Action_Boolean_Source triggerDown = SteamVR_Actions.default_GrabPinch[SteamVR_Input_Sources.RightHand];

        if (triggerDown.stateDown && !_teleporter.IsTeleporting)
        {
            if (isTargetValid)
            {
                _isHoldingTrigger = true;
                _holdDownTime     = 0f;

                SetTeleportTarget();
                _teleportMarker.SetAlpha(1f, 1f);
            }
            else
            {
                _teleportCandidate = null;
                _teleportMarker.SetAlpha(0f, 0f);
                _log.CommitLine();
                return;
            }
        }
        if (triggerDown.stateUp)
        {
            _isHoldingTrigger  = false;
            _teleportCandidate = null;
            _teleportMarker.SetAlpha(0f, 0f);
        }

        if (_isHoldingTrigger)
        {
            _holdDownTime += Time.deltaTime;
            _dotImage.SetProgress(_holdDownTime / _activationTime);
            if (_holdDownTime >= _activationTime)
            {
                _isHoldingTrigger = false;
                _log.Append("isTeleporting", true);

                // Start teleport
                _teleporter.Teleport(_teleportCandidate.Value);
                OnGazeTeleport(_teleportCandidate.Value);
                _teleportCandidate = null;
            }
        }
        else
        {
            _teleportMarker.SetAlpha(0f, 0f);
            _dotImage.SetProgress(1f);
        }
        _log.CommitLine();
    }