赤外線レーザーセンサーを作る
![153a2e57 e908 4bcb a716 51ca47c38fb0](https://codegenius.org/uploads/slide/image/5136/153a2e57-e908-4bcb-a716-51ca47c38fb0.jpeg)
![85808e35 4e39 4753 8a0b aa54d22ad67b](https://codegenius.org/uploads/slide/image/5137/85808e35-4e39-4753-8a0b-aa54d22ad67b.jpeg)
![319b0d9a cdc6 4869 b10a fdc2e77aa333](https://codegenius.org/uploads/slide/image/5138/319b0d9a-cdc6-4869-b10a-fdc2e77aa333.jpeg)
![F620b451 f2fc 49d7 9fd2 f6da94b66583](https://codegenius.org/uploads/slide/image/5139/f620b451-f2fc-49d7-9fd2-f6da94b66583.jpeg)
![50cc72f6 ff89 40d0 88dc d5a53df44a89](https://codegenius.org/uploads/slide/image/5140/50cc72f6-ff89-40d0-88dc-d5a53df44a89.jpeg)
![F3346ac3 51ce 4ed6 92a6 cdaf6958d7f5](https://codegenius.org/uploads/slide/image/5141/f3346ac3-51ce-4ed6-92a6-cdaf6958d7f5.jpeg)
赤外線センサー
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Infrared : MonoBehaviour
{
public AudioClip sound;
public float maxDistance = 50f;
private LineRenderer lr;
private AudioSource audioSource;
private void Start()
{
lr = GetComponent<LineRenderer>();
audioSource = GetComponent<AudioSource>();
}
void Update()
{
Debug.DrawRay(transform.position, transform.forward * maxDistance, Color.blue);
Ray ray = new Ray(transform.position, transform.forward);
RaycastHit hit;
lr.SetPosition(0, ray.origin);
if(Physics.Raycast(ray, out hit, maxDistance))
{
lr.SetPosition(1, hit.point);
if(hit.transform.CompareTag("Player"))
{
print("侵入者発見");
// 警報音を鳴らす。
audioSource.clip = sound;
audioSource.Play();
}
}
else
{
lr.SetPosition(1, ray.origin + ray.direction * maxDistance);
}
}
}
![207f1fcf 92c9 43bf a044 3fadd96f264c](https://codegenius.org/uploads/slide/image/5142/207f1fcf-92c9-43bf-a044-3fadd96f264c.jpeg)
![5fbd8c4d 34ca 4f47 b49d 26cd1d0ee6d6](https://codegenius.org/uploads/slide/image/5143/5fbd8c4d-34ca-4f47-b49d-26cd1d0ee6d6.jpeg)
![670d914f 594e 40d2 9116 457549a421de](https://codegenius.org/uploads/slide/image/5144/670d914f-594e-40d2-9116-457549a421de.jpeg)
![87230e6d 8dfe 4f8c 9188 4d86136b4dd3](https://codegenius.org/uploads/slide/image/5145/87230e6d-8dfe-4f8c-9188-4d86136b4dd3.jpeg)
![7e64bb68 c9d0 4253 9d60 be7821cb455c](https://codegenius.org/uploads/slide/image/5146/7e64bb68-c9d0-4253-9d60-be7821cb455c.jpeg)
![17bec6ec 2db3 4741 a9c4 497b94c76693](https://codegenius.org/uploads/slide/image/5147/17bec6ec-2db3-4741-a9c4-497b94c76693.jpeg)
![A2afcac5 8725 40df 9cfc 820a330c7c4b](https://codegenius.org/uploads/slide/image/5148/a2afcac5-8725-40df-9cfc-820a330c7c4b.jpeg)
【2019版】X_Mission(基礎/全51回)
他のコースを見る![153a2e57 e908 4bcb a716 51ca47c38fb0](https://codegenius.org/uploads/slide/image/5136/153a2e57-e908-4bcb-a716-51ca47c38fb0.jpeg)
![85808e35 4e39 4753 8a0b aa54d22ad67b](https://codegenius.org/uploads/slide/image/5137/85808e35-4e39-4753-8a0b-aa54d22ad67b.jpeg)
![319b0d9a cdc6 4869 b10a fdc2e77aa333](https://codegenius.org/uploads/slide/image/5138/319b0d9a-cdc6-4869-b10a-fdc2e77aa333.jpeg)
![F620b451 f2fc 49d7 9fd2 f6da94b66583](https://codegenius.org/uploads/slide/image/5139/f620b451-f2fc-49d7-9fd2-f6da94b66583.jpeg)
![50cc72f6 ff89 40d0 88dc d5a53df44a89](https://codegenius.org/uploads/slide/image/5140/50cc72f6-ff89-40d0-88dc-d5a53df44a89.jpeg)
![F3346ac3 51ce 4ed6 92a6 cdaf6958d7f5](https://codegenius.org/uploads/slide/image/5141/f3346ac3-51ce-4ed6-92a6-cdaf6958d7f5.jpeg)
赤外線センサー
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Infrared : MonoBehaviour
{
public AudioClip sound;
public float maxDistance = 50f;
private LineRenderer lr;
private AudioSource audioSource;
private void Start()
{
lr = GetComponent<LineRenderer>();
audioSource = GetComponent<AudioSource>();
}
void Update()
{
Debug.DrawRay(transform.position, transform.forward * maxDistance, Color.blue);
Ray ray = new Ray(transform.position, transform.forward);
RaycastHit hit;
lr.SetPosition(0, ray.origin);
if(Physics.Raycast(ray, out hit, maxDistance))
{
lr.SetPosition(1, hit.point);
if(hit.transform.CompareTag("Player"))
{
print("侵入者発見");
// 警報音を鳴らす。
audioSource.clip = sound;
audioSource.Play();
}
}
else
{
lr.SetPosition(1, ray.origin + ray.direction * maxDistance);
}
}
}
![207f1fcf 92c9 43bf a044 3fadd96f264c](https://codegenius.org/uploads/slide/image/5142/207f1fcf-92c9-43bf-a044-3fadd96f264c.jpeg)
![5fbd8c4d 34ca 4f47 b49d 26cd1d0ee6d6](https://codegenius.org/uploads/slide/image/5143/5fbd8c4d-34ca-4f47-b49d-26cd1d0ee6d6.jpeg)
![670d914f 594e 40d2 9116 457549a421de](https://codegenius.org/uploads/slide/image/5144/670d914f-594e-40d2-9116-457549a421de.jpeg)
![87230e6d 8dfe 4f8c 9188 4d86136b4dd3](https://codegenius.org/uploads/slide/image/5145/87230e6d-8dfe-4f8c-9188-4d86136b4dd3.jpeg)
![7e64bb68 c9d0 4253 9d60 be7821cb455c](https://codegenius.org/uploads/slide/image/5146/7e64bb68-c9d0-4253-9d60-be7821cb455c.jpeg)
![17bec6ec 2db3 4741 a9c4 497b94c76693](https://codegenius.org/uploads/slide/image/5147/17bec6ec-2db3-4741-a9c4-497b94c76693.jpeg)
![A2afcac5 8725 40df 9cfc 820a330c7c4b](https://codegenius.org/uploads/slide/image/5148/a2afcac5-8725-40df-9cfc-820a330c7c4b.jpeg)
赤外線レーザーセンサーを作る