Повторение: лазерная растяжка
Часть раздела Физика и игровой процесс путешествия по Unity на Coddy. Урок 41 из 71.
В этом обзоре собраны вместе темы главы: лучевой запрос, который видит только некоторые слои, то, во что он попал, и bool, который хранит состояние предыдущего кадра, чтобы сигнал тревоги срабатывал один раз.
Задание
СреднеЗащити хранилище лазерным лучом-ловушкой.
- Каждый кадр выполняй
Physics.Raycast(transform.position, transform.forward, out RaycastHit hit, range, intruders). - Окрашивай
lamp.material.colorвColor.red, пока луч попадает в цель, и вColor.green, когда путь свободен. - Записывай в журнал
"Alarm: " + hit.collider.nameтолько когда луч переходит из свободного состояния в заблокированное: сохраняй результат предыдущего кадра в полеbool blocked.
Нажми «Играть» и пройди через луч: каждый раз срабатывает одна тревога. Затем нажми «Проверить».
Попробуйте сами
using UnityEngine;
public class Tripwire : MonoBehaviour
{
public LayerMask intruders;
public Renderer lamp;
public float range = 6f;
void Update()
{
}
}
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Физика и игровой процесс
1Твёрдое тело
Гравитация и массаТолкаем с помощью AddForceПрыжок с импульсомFixedUpdate для физикиСкоростьКинематические телаПовторение: пусковая площадка4Корутины
InvokeInvokeRepeating, CancelInvokeВаша первая корутинаЦиклы в корутинахОстановка корутинПовторение: обратный отсчёт10Проект: Побег с арены
АренаОхотники2Столкновения
OnCollisionEnterВо что я попал?Разрушение при столкновенииСтояние на землеОтскок и трениеФормы коллайдеровПовторение: разрушаемая стена5Проект: Монетная гонка
Катящийся шарСобираем монетыПотренируйтесь самостоятельно: Песочница Unity