Menu
CoddyTech

前方的障碍

本课属于 Coddy Unity 学习旅程的“打造真正的游戏”单元。第 28 课,共 60 课。

challenge icon

挑战

中等

让障碍物沿着道路移动。

  1. 在 Spawner 的 Update() 中,将 Time.deltaTime 加到 timer 上;达到 spawnEvery 时,减去 spawnEvery 并生成障碍物。
  2. 在 Spawner 的位置上,沿 x 轴偏移 lane * laneWidth,生成 obstaclePrefab;其中 lane 来自 Random.Range(-1, 2)。
  3. 在 Obstacle 的 Update() 中,以每秒 speed 个单位的速度沿 Vector3.back 移动;当 z 坐标低于 -10 时销毁障碍物。

按下“运行”:障碍物会出现在三条车道上。然后点击“检查”。

亲手试试

using UnityEngine;

public class Spawner : MonoBehaviour
{
    public GameObject obstaclePrefab;
    public float spawnEvery = 1.2f;
    public float laneWidth = 2.5f;
    private float timer;

    // 每隔 spawnEvery 秒,让一个障碍物沿随机车道移动。
}

打造真正的游戏中的所有课

自己练习: Unity 在线编辑器