• Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by Petrit24 · Sep 09, 2019 at 09:57 AM · androidunity 5vrgyroscopegyro

UNITY 3D - Set the start positon of the gyroscope to initial phone position

Hello everybody,

I am making a mobile VR project in unity and I have a 360-video that starts playing where I can look around using a VR headset.

I am trying to set the start rotation of the video to the same rotation as my phones. So no matter where I look when I start the video, that should be my start rotation. I used Input.gyro.attitude in the start but that did not fix my problem. I think I am using it wrong.

I tried to find a solution to this and nowhere on the internet I could found a solution to this problem I encounter. I appreciate any help!

This is my code(on the camera inside the sphere): using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI;

 public class Gyroscope : MonoBehaviour
 {
     private bool gyroEnabled;
     private Gyroscope gyro;
 
     private GameObject cameraContainer; //A camera container for my main camera
     private GameObject videoSphere; //The sphere my video is in
     private Quaternion rot;
     
 
     private void Start()
     {
         videoSphere = GameObject.FindGameObjectWithTag("Video");
         cameraContainer = new GameObject("Camera Container");
 
         gyroEnabled = EnableGyro();
 
        
         cameraContainer.transform.position = transform.position; //put the cameracontainer into the sphere
         cameraContainer.transform.rotation = Input.gyro.attitude; //here I want to set the cameracontainer to the rotation of my phones gyroscope 
         transform.SetParent(cameraContainer.transform); //make my main camera a child of the camera Container
 
         videoSphere.transform.localRotation = cameraContainer.transform.rotation; //Here I wanted to set my sphere rotation to the camera rotation
         Debug.Log(videoSphere.transform.localRotation);
   
         
     }
 
     private bool EnableGyro()
     {
         if (SystemInfo.supportsGyroscope)
         {
             Input.gyro.enabled = true; //turn on my gyroscope
 
             cameraContainer.transform.rotation = new Quaternion(0, 90, -90, 0); //rotate my camera container so the video shows good
             rot = new Quaternion(0, 0, 1, 0); //set the variable rot so that you can turn your device
 
             return true;
         }
 
         return false;
     }
 
     private void Update()
     {
         if (gyroEnabled)
         {
             transform.localRotation = Input.gyro.attitude * rot; //this makes you turn the device and it recognizes the input of the phones gyroscope        
         }
     }
 }
 
Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

1 Reply

· Add your reply
  • Sort: 
avatar image
0

Answer by YetAnotherKen · Sep 09, 2019 at 07:48 PM

move as much of the setup of variables into the Awake method as you can. Then, anything relying on a object being created might not find the object until later in the frame like in Update, or even LateUpdate. Make sure you do some kind of check for existance of the object instance you are trying to use, like this:

 if (cameraContainer != null)
Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Welcome to Unity Answers

The best place to ask and answer questions about development with Unity.

To help users navigate the site we have posted a site navigation guide.

If you are a new user to Unity Answers, check out our FAQ for more information.

Make sure to check out our Knowledge Base for commonly asked Unity questions.

If you are a moderator, see our Moderator Guidelines page.

We are making improvements to UA, see the list of changes.



Follow this Question

Answers Answers and Comments

347 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

Input.gyro.attitude not working on newer Android devices 3 Answers

Daydream publishing errors 1 Answer

Using Gyroscope with Android 1 Answer

app stopped unfortunately i attached images after i build game and then the following errors occurs. 0 Answers

CommandInvokationFailure: Gradle build failed. 1 Answer

  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges