- Home /
Input.acceleration to camera
I am trying to make simple ball game using "Input.acceleration".I tilted the device ball move in correct direction but If the camera rotates 180 around the ball tilt controls are opposite.i want ball always follow up the device.how to match the axis with device. I found this out on the forums somewhere and it gets pretty close but is still not smooth enough.
// Move object using accelerometer
var speed = 10.0;
var cameraTransform: Transform;
function FixedUpdate(){
}
function Start(){
}
function Update () {
var dir : Vector3 = Vector3.zero;
// we assume that device is held parallel to the ground
// and Home button is in the right hand
// remap device acceleration axis to game coordinates:
// 1) XY plane of the device is mapped onto XZ plane
// 2) rotated 90 degrees around Y axis
dir.x = Input.acceleration.x;
dir.z = Input.acceleration.y;
// clamp acceleration vector to unit sphere
if (dir.sqrMagnitude > 1)
dir.Normalize();
// Make it move 10 meters per second instead of 10 meters per frame...
dir *= Time.deltaTime;
// Move object
transform.Translate (dir * speed);
}
The tilt doesn't update with the camera. This makes control of the ball imposable. How can I have the tilting linked to the camera view and not the scene
Your answer
Follow this Question
Related Questions
What is wrong with this script? 2 Answers
How to Make my Character Run? 1 Answer
How to implement a low pass filter for accelerometer? 2 Answers
UNITY3D: TEXTFILE I/O : Don't write same things 0 Answers
Disabling all renderers in Hierarchy 1 Answer