Unity3D之float Input.GetAxis(string axisname)

本人学习Unity3D第一次发博客。

Input.GetAxis(string axisname)方法返回一个float 类型的数。范围在-1到1之间,如果获取的是鼠标的运动,则不再是-1到1之间,它会随你的鼠标速度变化。

参数内容如下:

1.触屏类:

MouseX                      鼠标按着并沿着屏幕X轴方向滑动时触发

MouseY       鼠标按着并沿着屏幕Y轴方向滑动时触发

Mouse ScrollWheel      当鼠标滚动轮滚动时触发

2.键盘操作类:


                   1.Vertical                        对应键盘上面的上下箭头,当按下上或下箭头时触发
                   2.Horizontal                    对应键盘上面的左右箭头,当按下左或右箭头时触发


	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轴为中心旋转

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值