Menu
CoddyTech

Повторение: пусковая площадка

Часть раздела Физика и игровой процесс путешествия по Unity на Coddy. Урок 7 из 71.

В этом обзоре собраны основные идеи главы: скорость, заданная в FixedUpdate(), импульс, учитывающий массу, и считывание нажатия клавиши в Update(), чтобы ни одно нажатие не было потеряно.

challenge icon

Задание

Легко

Подведи персонажа к стартовой площадке и запусти его.

  1. В Update() устанавливай bool launchPressed при Input.GetKeyDown(KeyCode.Space).
  2. В FixedUpdate() задавай rb.linearVelocity на основе необработанного значения оси Horizontal, умноженного на speed, сохраняя значение y.
  3. Когда установлено launchPressed, добавляй Vector3.up * launch с ForceMode.Impulse, только если координата x отличается от pad.position.x менее чем на 1, затем сбрасывай этот флаг.

Нажми «Играть», подойди к площадке и нажми Space. Затем нажми «Проверить».

Попробуйте сами

using UnityEngine;

public class Jumper : MonoBehaviour
{
    public float speed = 4f;
    public float launch = 16f;
    public Transform pad;
    private Rigidbody rb;

    void Start()
    {
        rb = GetComponent<Rigidbody>();
    }
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Физика и игровой процесс

Потренируйтесь самостоятельно: Песочница Unity