- Home /
 
I created a look to teleport script and I'm falling through the level
I created this script to teleport where you look and every time I teleport to a horizontal object it makes me sink into the ground. I'm using this for moving with the google cardboard, but when I use a fps character it doesn't sink please help.
     private RaycastHit lastRaycastHit;
 public AudioClip audioClip;
 // Use this for initialization
 void Start () {
     Cursor.visible = false;
 }
 private GameObject GetLookedAtObject(){
     Vector3 origin = transform.position;
     Vector3 direction = Camera.main.transform.forward;
     float range = 1000;
     if (Physics.Raycast (origin, direction, out lastRaycastHit, range))
         return lastRaycastHit.collider.gameObject;
     else
         return null;
 }
 private void TeleportToLookAt(){ 
     transform.position = lastRaycastHit.point + lastRaycastHit.normal * 2;
     if (audioClip != null)
         AudioSource.PlayClipAtPoint (audioClip, transform.position);
 }
     // Update is called once per frame
 void Update () 
 {
 if (Input.GetButtonDown ("Fire1"))
         if (GetLookedAtObject  () != null)
             TeleportToLookAt ();
 }
 
               }
Answer by ThugsInMugs · Aug 08, 2016 at 09:40 PM
you need an offset somewhere of + a height of which you want the player to spawn (im new to coding but I know that...kind of...please don't lynch me)
Answer by Dinosaurs · Aug 08, 2016 at 08:51 PM
There're two problems I see here that could be causing this; first off, you probably need to add the characters collider height to the position so this doesn't happen. So, for example: Collider playerCollider = transform.GetComponent(); transform.position = lastRaycastHit.point + (lastRaycastHit.normal * (playerCollider.bounds.extents.y));
See https://docs.unity3d.com/ScriptReference/Collider-bounds.html
Also, when moving a rigidbody/collider, you should also move using the rigidbody, instead of the transform so that physics updates correctly: https://docs.unity3d.com/ScriptReference/Rigidbody.MovePosition.html
Your answer
 
             Follow this Question
Related Questions
how to make teleporting marker 0 Answers
Does Oculus Go still require importing Oculus libraries? 0 Answers
Code isn't working properly. ( == code thing ) 1 Answer
Teleport area and anchor with different buttons 0 Answers
Change the VR Samples MenuButton script to play animation rather than fade to black and load scene 0 Answers