- Home /
oculus go controller transform.forward is giving unexpected behaviours
I have a linerenderer in my controller object with the first point set at the transform.position of the controller and the second at transform.forward * 10, 
i fixed that part by adding an empty gameobject i called anchor to it and rotating it a little so the line will go straight. but when i now try to pick up an object by setting the transform.position to achor.transform.forward * 10 i get this. 
this is the code i'm using, i really hope someone can help me with this annoying problem.
 using System.Collections;
 using System.Collections.Generic;
 using UnityEngine;
  
 public class PickUpObjects : MonoBehaviour {
  
     GameObject pickedUpObject = null;
     public Transform anchor;
     float dist;
  
     public LineRenderer line;
  
     private void Update()
     {
         line.SetPosition(0, transform.position);
         if(pickedUpObject == null && OVRInput.GetDown(OVRInput.Button.One))
         {
             Debug.Log("DpadUp Pressed");
             //raycast to see if it hit something
             RaycastHit hit;
             Ray ray = new Ray(transform.position, anchor.forward);
             if(Physics.Raycast(ray, out hit))
             {
                 GameObject hitObject = hit.collider.gameObject;
                 //check if the hit object is pickupable
                 if (hitObject.GetComponent<Pickupable>())
                 {
                     //pickUp
                     pickedUpObject = hitObject;
                     dist = Vector3.Distance(transform.position, hitObject.transform.position);
                     Rigidbody rig = hitObject.GetComponent<Rigidbody>();
                     rig.velocity = Vector3.zero;
                     rig.angularVelocity = Vector3.zero;
                     rig.useGravity = false;
                     pickedUpObject.transform.position = anchor.forward * dist;
                 }
             }
         }
  
         RaycastHit hitRay;
         Ray rayLine = new Ray(transform.position, anchor.forward);
         if (Physics.Raycast(rayLine, out hitRay, 10))
         {
            line.SetPosition(1, hitRay.point);
         }
         else
         {
             line.SetPosition(1, anchor.forward * 10);
         }
  
         if (pickedUpObject != null)
         {
             //follow
             pickedUpObject.transform.position = anchor.forward * dist;
         }
     }
 }
Your answer
 
 
             Follow this Question
Related Questions
Unchanged project features break on bootup? (possible editor issue, v2018.1.1f) 0 Answers
Pulling Object forwards and back "Oculus VR" 0 Answers
Why is 2019.3.0f6 significantly decreasing my Oculus Quest framerate? 0 Answers
Detail meshes renderices black when they hit the skybox on vr 0 Answers
(Oculus Rift) Casting a ray from mouse through distortion matrix 1 Answer
 koobas.hobune.stream
koobas.hobune.stream 
                       
                
                       
			     
			 
                