Input.GetAxis 获取轴

static function GetAxis (axisName : string) : float

Description描述

Returns the value of the virtual axis identified by axisName.

根据坐标轴名称返回虚拟坐标系中的值。

The value will be in the range -1...1 for keyboard and joystick input. If the axis is setup to be delta mouse movement, the mouse delta is multiplied by the axis sensitivity and the range is not -1...1.

使用控制器和键盘输入时此值范围在-1到1之间。如果坐标轴设置为鼠标运动增量,鼠标增量乘以坐标轴灵敏度的范围将不是-1到1 。

using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
	public float speed = 10.0F;
	public float rotationSpeed = 100.0F;
	void Update() {
		float translation = Input.GetAxis("Vertical") * speed;
		float rotation = Input.GetAxis("Horizontal") * rotationSpeed;
		translation *= Time.deltaTime;
		rotation *= Time.deltaTime;
		transform.Translate(0, 0, translation);
		transform.Rotate(0, rotation, 0);
	}
}
// A very simplistic car driving on the x-z plane.
// 一个十分简单的在x-z平面的驾车例子
var speed : float = 10.0;
var rotationSpeed : float = 100.0;

function Update () {
	// Get the horizontal and vertical axis.
	//获取横向和纵向坐标轴
	// By default they are mapped to the arrow keys.
	//默认情况下他们关联到方向键上
	// The value is in the range -1 to 1
	//值的范围是在-1到1之间
	var translation : float = Input.GetAxis ("Vertical") * speed;
	var rotation : float = Input.GetAxis ("Horizontal") * rotationSpeed;

	// Make it move 10 meters per second instead of 10 meters per frame...
	// 使它每帧移动10米变为每秒移动10米...
	translation *= Time.deltaTime;
	rotation *= Time.deltaTime;

	// Move translation along the object's z-axis
	//沿着z轴平移对象
	transform.Translate (0, 0, translation);
	// Rotate around our y-axis
	//以我们的y轴为中心旋转
	transform.Rotate (0, rotation, 0);
}
using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
	public float horizontalSpeed = 2.0F;
	public float verticalSpeed = 2.0F;
	void Update() {
		float h = horizontalSpeed * Input.GetAxis("Mouse X");
		float v = verticalSpeed * Input.GetAxis("Mouse Y");
		transform.Rotate(v, h, 0);
	}
}
// Performs a mouse look.
//执行一个鼠标观察
var horizontalSpeed : float = 2.0;
var verticalSpeed : float = 2.0;
function Update () {
	// Get the mouse delta. This is not in the range -1...1
	//获取鼠标增量,范围不在-1...1
	var h : float = horizontalSpeed * Input.GetAxis ("Mouse X");
	var v : float = verticalSpeed * Input.GetAxis ("Mouse Y");
	transform.Rotate (v, h, 0);
}
最后修改:2011年3月11日 Friday 21:06

本脚本参考基于Unity 3.4.1f5

英文部分版权属©Unity公司所有,中文部分© Unity圣典 版权所有,未经许可,严禁转载 。