diff --git a/Assets/SteamVR/InteractionSystem/Teleport/Scripts/Teleport.cs b/Assets/SteamVR/InteractionSystem/Teleport/Scripts/Teleport.cs index 71352766..ef33f823 100644 --- a/Assets/SteamVR/InteractionSystem/Teleport/Scripts/Teleport.cs +++ b/Assets/SteamVR/InteractionSystem/Teleport/Scripts/Teleport.cs @@ -797,7 +797,7 @@ private void PlayAudioClip( AudioSource source, AudioClip clip ) //------------------------------------------------- private void PlayPointerHaptic( bool validLocation ) { - if ( pointerHand != null ) + if ( pointerHand != null && pointerHand.noSteamVRFallbackCamera == null ) { if ( validLocation ) { @@ -895,12 +895,12 @@ private void TeleportPlayer() { Vector3 playerFeetOffset = player.trackingOriginTransform.position - player.feetPositionGuess; player.trackingOriginTransform.position = teleportPosition + playerFeetOffset; - - if (player.leftHand.currentAttachedObjectInfo.HasValue) - player.leftHand.ResetAttachedTransform(player.leftHand.currentAttachedObjectInfo.Value); - if (player.rightHand.currentAttachedObjectInfo.HasValue) - player.rightHand.ResetAttachedTransform(player.rightHand.currentAttachedObjectInfo.Value); - } + + if (player.leftHand != null && player.leftHand.currentAttachedObjectInfo.HasValue) + player.leftHand.ResetAttachedTransform(player.leftHand.currentAttachedObjectInfo.Value); + if (player.rightHand != null && player.rightHand.currentAttachedObjectInfo.HasValue) + player.rightHand.ResetAttachedTransform(player.rightHand.currentAttachedObjectInfo.Value); + } else { teleportingToMarker.TeleportPlayer( pointedAtPosition );