Движущиеся мишени
Часть раздела Физика и игровой процесс путешествия по Unity на Coddy. Урок 67 из 71.
Задание
СложноСоздайте цели: они перемещаются в пределах диапазона, а мяч сбивает их.
- В
Start()оставьтеstartX = rb.position.x. ВFixedUpdate()перемещайте цель вдоль оси x с помощьюrb.MovePositionсо скоростьюspeed, меняя направлениеdirectionс 1 на -1 или наоборот, когда расстояние отstartXдостигнетrange. - В
OnCollisionEnter, когдаcollision.gameObject.CompareTag("Ball"), выведите в логname + " hit!"и уничтожьте мяч и цель.
Нажмите «Играть» и сбейте все три цели. Затем нажмите «Проверить».
Попробуйте сами
using UnityEngine;
public class Target : MonoBehaviour
{
[SerializeField] private float speed = 2f;
[SerializeField] private float range = 3f;
private Rigidbody rb;
void Start()
{
rb = GetComponent<Rigidbody>();
}
// двигаться из стороны в сторону; мяч, попавший в мишень, сбивает её
}
Все уроки раздела Физика и игровой процесс
1Твёрдое тело
Гравитация и массаТолкаем с помощью AddForceПрыжок с импульсомFixedUpdate для физикиСкоростьКинематические телаПовторение: пусковая площадка4Корутины
InvokeInvokeRepeating, CancelInvokeВаша первая корутинаЦиклы в корутинахОстановка корутинПовторение: обратный отсчёт10Проект: Побег с арены
АренаОхотники2Столкновения
OnCollisionEnterВо что я попал?Разрушение при столкновенииСтояние на землеОтскок и трениеФормы коллайдеровПовторение: разрушаемая стена5Проект: Монетная гонка
Катящийся шарСобираем монетыПотренируйтесь самостоятельно: Песочница Unity