I want to change the reference axis of an object relative to the camera of another object
I am making an application to cardboard , the problem is that I want to rotate an object in relation to the movement of the head of the person, both up and down. I made using the physics worked out using your finger , going good , but when it is for the cardboard does not work, the rotation does not go as expected. The object is camera the child being of cardboard , so it will always stay in front of the camera , further rotate it , you must change the reference axes , for the camera and the object must be the same to be done that How do I change the reference axis of the object to be the same as the cardboard camera?
Here is the piece of code that works with your finger:
if(Input.touchCount>lastTouchcount)
{
LastState = Input.GetMouseButton(0);
LastPos = Input.mousePosition;
}
lastTouchcount = Input.touchCount;
if(Input.GetMouseButton(0)==true
#if UNITY_IOS || UINITY_ANDROID
&& Input.touchCount==1
#endif
)
{
Vector3 v = Input.mousePosition-LastPos;
float tmp=v.x;
v.x=v.y;
v.y=-tmp;
GetComponent<Rigidbody>().AddTorque(v);
}
LastState = Input.GetMouseButton(0);
LastPos = Input.mousePosition;
Here is the code for the cardboard where the rotation does not go as expected:
if (EyeConfig.Instance.Render == EyeConfig.RenderType.CardBoard)
{
var head = FindObjectOfType<CardboardHead> ();
Vector3 delta = lastPosCam - head.transform.rotation.eulerAngles;
float temp = delta.x;
delta.x = delta.y;
delta.y = temp;
GetComponent<Rigidbody>().AddTorque(delta * 2000);
lastPosCam = head.transform.rotation.eulerAngles;
}
Your answer
Follow this Question
Related Questions
Camera X Rotation Problems 0 Answers
Rotation around player. and Camera position, 2 Answers
How to bring UI element infront of other objects? 0 Answers
Transform.Rotate x and y rotate z, where z is 0 0 Answers
Rotate Camera only Horizontal? 1 Answer