Singleton representing the local VR player/user, with methods for getting the player's hands, head, tracking origin, and guesses for various properties.
Inheritance: MonoBehaviour
Exemplo n.º 1
0
    // VR Player Unloaded Event
    void OnVRPlayerUnloaded()
    {
        vrPlayer = null;

        // Re-enable Play Button
        PlayButton.interactable = true;
    }
Exemplo n.º 2
0
 private static void Postfix(FirstPersonItemHolder __instance)
 {
     if (__instance.m_owner.IsLocallyOwned)
     {
         VRPlayer.UpdateHeldItemTransform();
     }
 }
Exemplo n.º 3
0
    private void MovePlayer(Ray ray)
    {
        RaycastHit hit;

        if (Physics.Raycast(ray, out hit, 100))        //, LayerMask.NameToLayer("UI")))
        {
            if (hit.collider.tag == "Tower")
            {
                Debug.Log("Found object: " + hit.collider);
            }
            if (hit.collider.tag == "Tower")
            {
                var sourceTransform = VRPlayer.Instance.transform;

                var targetTransform      = hit.collider.transform.parent;
                var targetTeleportMarker = GameObject.Instantiate(this.teleportMarkerPrefab, targetTransform.position, Quaternion.identity);
                var sourceTeleportMarker = GameObject.Instantiate(this.teleportMarkerPrefab, sourceTransform.position, Quaternion.identity);
                // assume parent to Click collider is our object.
                var turret = targetTransform.GetComponent <Turret>();
                if (turret != null)
                {
                    VRPlayer.TeleportTo(turret.teleportPoint, () => {
                        GameObject.Destroy(targetTeleportMarker);
                        GameObject.Destroy(sourceTeleportMarker);
                    });
                }
            }
        }
    }
Exemplo n.º 4
0
 private void AttemptToLoadPlayerGO()
 {
     VRPlayer = GameObject.Find("VRPlayer");
     if (VRPlayer != null)
     {
         VRPlayerScript = VRPlayer.GetComponent <VRPlayer>();
     }
 }
Exemplo n.º 5
0
 void CloseVRPlayer()
 {
     // Close VR Player
     if (vrPlayer != null)
     {
         vrPlayer.Unload();
         vrPlayer = null;
     }
 }
    private void Awake()
    {
        if (instance != null)
        {
            GameObject.Destroy(instance.gameObject);
        }
        instance = this;

        GetComponent <Rigidbody>().useGravity = true;
    }
Exemplo n.º 7
0
        private void AppendVRComponents()
        {
            if (m_currentFPSCameraRef == null || m_currentPlayerAgentRef == null)
            {
                Log.Warning("Tried to spawn player but FPS camera or playeragent ref was null, this should never happen! Falling back to FindObjectOfType");
                m_currentFPSCameraRef   = FindObjectOfType <FPSCamera>();
                m_currentPlayerAgentRef = m_currentFPSCameraRef.m_owner;
            }

            m_player = m_currentFPSCameraRef.gameObject.AddComponent <VRPlayer>();
            m_player.Setup(m_currentFPSCameraRef, m_currentPlayerAgentRef);
        }
Exemplo n.º 8
0
        public void ServerVRPlayerHasNullCamera()
        {
            var networkInterface = Substitute.For <INetworkInterface>();

            networkInterface.isClient.Returns(false);

            VRPlayer player = new VRPlayer();

            player.network = networkInterface;
            player.Start();

            Assert.IsNull(player.GetCamera());
        }
Exemplo n.º 9
0
    void OnEnable()
    {
        _instance = this;

        if (SteamVR.instance != null)
        {
            ActivateRig(rigSteamVR);
        }
        else
        {
            ActivateRig(rig2DFallback);
        }
    }
Exemplo n.º 10
0
        public mainPlayer()
        {
            InitializeComponent();
            var mons = VRPlayer.GetMonitors();

            cbMonitor.DisplayMember = "Name";
            cbMonitor.ValueMember   = "Index";
            cbMonitor.DataSource    = mons;

            player = new VRPlayer();
            player.PlayFinished   += Player_PlayFinished;
            listener               = new SensorListener();
            listener.DataReceived += Listener_DataReceived;
        }
Exemplo n.º 11
0
    void Start()
    {
        m_SonarOverlayGroup    = GameObject.FindWithTag("FlatscreenPlayer");
        _gameStartedTime       = Time.time;
        enemyBulletsContainer  = new GameObject("enemy-bullets-container").transform;
        playerBulletsContainer = new GameObject("player-bullets-container").transform;
        m_TowersContainer      = new GameObject("towers-container").transform;
        VRPlayer.TeleportTo(TurretManager.startingTurret.teleportPoint);

        FindObjectOfType <BaseStats>().OnDie += OnBaseDied;

        shipsContainer = new GameObject("ships-container").transform;
        StartCoroutine(pollWaves());
    }
Exemplo n.º 12
0
    void OnPlayButtonClicked()
    {
        // Disable Play Button
        PlayButton.interactable = false;

        // Create VR Player instance
        vrPlayer = new VRPlayer();

        // Register Callback for Video Playing Completion Event
        vrPlayer.OnVideoEnd += OnVRPlayerEnded;
        vrPlayer.OnUnloaded += OnVRPlayerUnloaded;

        // Play
        vrPlayer.LoadAndPlay(24, false);
    }
Exemplo n.º 13
0
 // gets local VRPlayer for which to log position data
 private VRPlayer GetPlayer()
 {
     if (localPlayer == null)
     {
         VRPlayer[] players = FindObjectsOfType <VRPlayer>() as VRPlayer[];
         foreach (VRPlayer player in players)
         {
             if (player.GetComponent <NetworkIdentity>().isLocalPlayer)
             {
                 localPlayer = player;
                 break;
             }
         }
     }
     return(localPlayer);
 }
Exemplo n.º 14
0
 void StartValheimVR()
 {
     HarmonyPatcher.DoPatching();
     if (VRManager.InitializeVR())
     {
         VRManager.StartVR();
         vrPlayer = new GameObject("VRPlayer");
         DontDestroyOnLoad(vrPlayer);
         VRPlayer playerComponent = vrPlayer.AddComponent <VRPlayer>();
         vrGui = new GameObject("VRGui");
         DontDestroyOnLoad(vrGui);
         vrGui.AddComponent <VRGUI>();
     }
     else
     {
         LogError("Could not initialize VR.");
         enabled = false;
     }
 }
Exemplo n.º 15
0
 // called every .02 seconds
 void FixedUpdate()
 {
     if (logFilesReady && GetPlayer() != null && posLogCounter % FramesPerLog == 0)
     {
         VRPlayer p = GetPlayer();
         // begin logging position data
         csv.WriteLine("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14},{15},{16},{17}",
                       p.headPos.x, p.headPos.y, p.headPos.z,
                       p.bodyPos.x, p.bodyPos.y, p.bodyPos.z,
                       p.leftHandPosSync.x, p.leftHandPosSync.y, p.leftHandPosSync.z,
                       p.rightHandPosSync.x, p.rightHandPosSync.y, p.rightHandPosSync.z,
                       p.leftFootPosSync.x, p.leftFootPosSync.y, p.leftFootPosSync.z,
                       p.rightFootPosSync.x, p.rightFootPosSync.y, p.rightFootPosSync.z);
         posLogCounter = 0;
     }
     else
     {
         posLogCounter++;
     }
 }
Exemplo n.º 16
0
        private void HandleIngameFocus()
        {
            if (!m_overlay)
            {
                return;
            }

            try
            {
                if (!m_player)
                {
                    AppendVRComponents();
                }
            } catch (UnhollowerBaseLib.ObjectCollectedException e)
            {
                Log.Warning("Got GC'D object, falling back..." + e.ToString());
                m_player = null;
                AppendVRComponents();
            }

            ToggleOverlay(false);
            TogglePlayerCam(true);
        }
	void OnEnable()
	{
		_instance = this;

		if ( SteamVR.instance != null )
		{
			ActivateRig( rigSteamVR );
		}
		else
		{
			ActivateRig( rig2DFallback );
		}
	}