# Input.acceleration 加速度

static var acceleration : Vector3

Description描述

Last measured linear acceleration of a device in three-dimensional space (Read Only).

``````using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
public float speed = 10.0F;
void Update() {
Vector3 dir = Vector3.zero;
dir.x = -Input.acceleration.y;
dir.z = Input.acceleration.x;
if (dir.sqrMagnitude > 1)
dir.Normalize();

dir *= Time.deltaTime;
transform.Translate(dir * speed);
}
}``````
``````// Move object using accelerometer
//使用加速计移动物体
var speed = 10.0;

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
//重新映射设备加速计的坐标轴给游戏坐标
//1）设备的XY平面映射到游戏中的XZ平面
//2）沿着Y轴旋转90度
dir.x = -Input.acceleration.y;
dir.z = Input.acceleration.x;

// 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...
//将每帧移动10米改为每秒移动10米
dir *= Time.deltaTime;

// Move object
//移动物体
transform.Translate (dir * speed);
}``````
Page last updated: 2011-3-11