おさらい:レーザートリップワイヤー
CoddyのUnityジャーニー「物理演算とゲームプレイ」セクションの一部。レッスン 39/63。
チャレンジ
中級レーザー式のトリップワイヤーで金庫を守りましょう。Tripwire スクリプトはEmitterの支柱に配置され、Inspectorでintruders(Playerレイヤーにチェックを入れたLayerMask)、lamp(Renderer)、そしてrangeを6に設定します。
- ビームはEmitterから自身の前方に伸びる、長さが
range単位のレイで、intrudersレイヤーだけを検知します。Receiverの支柱と木箱は別のレイヤーにあります。 - 何かがビームを遮っている間、ランプは赤色(
Color.red)になり、ビームが遮られていない間は緑色(Color.green)になります。 - ビームが遮られていない状態から遮られた状態に変わるたびに、遮ったものの名前とともに
Alarm: Playerをログに記録します。ビームの中に立ち続けても再度ログに記録されません。いったんビームから出て、戻ると再び記録されます。
Playを押し、矢印キーでプレイヤーをビームの中に通してから、Checkを押してください。
自分で試してみよう
using UnityEngine;
public class Tripwire : MonoBehaviour
{
public LayerMask intruders;
public Renderer lamp;
public float range = 6f;
void Update()
{
}
}