Create with Code # Unit 1 – Player Control

作者: zsh2517 分类: Unity 发布时间: 2020-02-29 21:37

官网链接 Create with Code

系列链接
Unit 1 – Player Control
Unit 2 – Basic Gameplay
Unit 3 – Sound and Effects
Unit 4 – Gameplay Mechanics
Unit 5 – User Interface

Unit 1 – Player Control

任务

目的
1. 获取用户的输入
2. 根据用户输入进行 GameObject 的处理(位移或者旋转)
3. 镜头跟随

内容
在给定了所有素材的情况下,做一个驾驶的程序。操作车辆绕过或者撞到障碍物上。

要点

1. Camera 跟随 Player 运动

private Vector3;
public GameObject player;
public class FollowPlayer()
{
    void Start()
    {
        offset = transform.position - player.transform. position;
    }
    void Update()
    {
        transform.position = player.transform.position + offset;
    }
}

2. 输入的获取

相关设置项目在 Edit [Menu] -> Project Settings -> Input

float horizontalInput = Input.GetAxis("Horizontal");
float verticalInput = Input.GetAxis("Vertical");

3. 运动和旋转

旋转使用的是角度而非弧度

transform.Translate(Vector3.forward * Time.deltaTime * horizontalInput);
transform.Rotate(Vector3.up * Time.deltaTime * verticalInput);

扩展参考:
1. unity3d中Transform组件 Rotate()和rotation变量详解
2. unity 五种旋转方式localEulerAngles、eulerAngles、rotation、localRotation和Rotate的区别

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注

标签云