目录
1.摄像机跟随的方法
2.鼠标按键响应
3.键盘按键响应
4.导入素材
5.让飞机向前飞
6.摄像机跟随飞机移动
7.鼠标控制飞机倾斜
8.键盘控制飞机飞行
下载源码 UnityPackage
1.摄像机跟随的方法
2.鼠标按键响应
3.键盘按键响应
4.导入素材
下载素材
步骤:
-
将下载好的素材拖进Unity窗口中,并分好文件夹装好
-
将 AirPlane -> Models -> airplane.fbx 拖进场景中
-
在 AirPlane -> Materials 中将彩色的材质赋给机身,黄色的赋给玻璃
-
在 TerrainData -> Prefabs 中将地形预制体拖入到场景中摆放好
摆放到下图效果:
5.让飞机向前飞
用 Translate() 方法使飞机向 z轴(前方)飞行
void Update(){this.transform.Translate(0, 0, 0.1f);}
6.摄像机跟随飞机移动
https://yarcnhxqmdb.feishu.cn/docx/GMgYdzaIRo35Chxi9gGcZpOWnnb#T8CRdaHkroii7ex3mtrc5YVtnUe
步骤一:导入Standard的资源包
下载Standard的资源包
只选择 `CrossPlatformInput` 和 `Unity` 文件夹导入
步骤二:添加脚本
将飞机对象拖进Target中,并调整Distance(距离)和Height(高度)
7.鼠标控制飞机倾斜
要点:
-
世界坐标转屏幕坐标
-
Rotate()方法
// 飞机的屏幕坐标轴Vector2 airPlaneScreenPos;void Start(){}void Update(){// 飞机向前飞行this.transform.Translate(0, 0, 0.05f);// 鼠标控制飞机倾斜if (Input.GetMouseButtonDown(0)){airPlaneScreenPos = Camera.main.WorldToScreenPoint(this.transform.position);// 点击了右边if (airPlaneScreenPos.x < Input.mousePosition.x){this.transform.Rotate(0, 0, -5f);}else{this.transform.Rotate(0, 0, 5f);}}}
8.键盘控制飞机飞行
在之前摄像机挂载的脚本上,调整旋转和高度变化时的平滑值
/// <summary>/// 旋转移动方法/// </summary>private void Movement(){if (Input.GetKey(KeyCode.W)){this.transform.Translate(0, 0, 0.05f);}if (Input.GetKey(KeyCode.S)){this.transform.Translate(0, 0, -0.05f);}if (Input.GetKey(KeyCode.A)){this.transform.Rotate(0, -1f, 0);}if (Input.GetKey(KeyCode.D)){this.transform.Rotate(0, 1f, 0);}if (Input.GetKey(KeyCode.Space)){this.transform.Translate(0, 0.05f, 0);}if (Input.GetKey(KeyCode.LeftControl)){this.transform.Translate(0, -0.05f, 0);}}