Menu
CoddyTech

前方の障害物

CoddyのUnityジャーニー「本格的なゲームを作る」セクションの一部。レッスン 28/60。

challenge icon

チャレンジ

中級

障害物を道路に沿って流しましょう。

  1. Spawner の Update() で、timer に Time.deltaTime を加えます。spawnEvery に達したら、spawnEvery を差し引いてスポーンさせます。
  2. lane を Random.Range(-1, 2) から取得し、x 軸方向に lane * laneWidth だけ Spawner の位置からずらした場所に obstaclePrefab をスポーンさせます。
  3. Obstacle の Update() で、Vector3.back 方向に毎秒 speed 単位で移動させます。z が -10 未満になったら破棄します。

「プレイ」を押すと、3 つすべてのレーンに障害物が現れます。その後、「確認」を押します。

自分で試してみよう

using UnityEngine;

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

    // spawnEvery 秒ごとに、ランダムなレーンに障害物を送り出す
}

本格的なゲームを作るのすべてのレッスン

自分で練習してみよう: Unityプレイグラウンド