用键盘和鼠标控制物体移动的 Unity 3D 实现
最编程
2024-07-01 11:07:24
...
using UnityEngine;
using System.Collections;
public class CameraMove : MonoBehaviour
{
//public设置三个灵敏度调节变量(方便更改灵敏度)
public float sensitivityMouse = 2f;
public float sensitivetyKeyBoard = 0.1f;
public float sensitivetyMouseWheel = 10f;
void Update()
{
//滚轮实现镜头缩进和拉远
//UnityEngine.Camera.main可以省略UnityEngine.
//省略后脚本命名不能为Camera
if (Input.GetAxis("Mouse ScrollWheel") != 0)
{
UnityEngine.Camera.main.fieldOfView = UnityEngine.Camera.main.fieldOfView-Input.GetAxis("Mouse ScrollWheel")* sensitivetyMouseWheel;
}
//按着鼠标右键实现视角转动
if (Input.GetMouseButton(1))
{
transform.Rotate(-Input.GetAxis("Mouse Y") * sensitivityMouse, Input.GetAxis("Mouse X") * sensitivityMouse, 0);
}
//键盘按钮←/a和→/d实现视角水平移动,键盘按钮↑/w和↓/s实现视角水平旋转
if (Input.GetAxis("Horizontal") != 0)
{
transform.Translate(Input.GetAxis("Horizontal") * sensitivetyKeyBoard, 0, 0);
}
if (Input.GetAxis("Vertical") != 0)
{
transform.Translate(0, Input.GetAxis("Vertical") * sensitivetyKeyBoard, 0);
}
}
}
上一篇: 所有键盘和鼠标模拟方法的原理和实现
下一篇: 键盘方向键控制图形移动