복습: 레이저 감지선
Coddy Unity 여정의 물리와 게임플레이 섹션에 포함된 레슨. 71개 중 41번째.
이 복습에서는 일부 레이어만 감지하는 레이캐스트, 레이캐스트가 맞힌 대상, 그리고 알람이 한 번만 울리도록 이전 프레임의 상태를 기억하는 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()
{
}
}
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
물리와 게임플레이의 모든 레슨
직접 연습해 보세요: Unity 플레이그라운드