接續程式碼測試
三、碰撞偵測
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class makeprefebs : MonoBehaviour
{
public GameObject _Pre_Cube;
//public Transform Trans;
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
}
private void OnCollisionEnter(Collision collision)//碰撞偵測器
{
if (collision.collider.tag == "pick")
{
Instantiate(_Pre_Cube, Vector3.zero, Quaternion.identity);
//在坐標原點生成一個cube
print("yes"); //如果成功就yes
}
}

這裡我們使用unity自帶的碰撞偵測器——OnCollisionEnter(Collision collision)
除此之外還可以用
OnCollisionStay(Collision collision)
OnCollisionExit(Collision collision)
三者的區別在於偵測的時間和次數
Enter是碰到就檢測一次
Stay是檢測是否一直碰到
Exit是物體分離的時候檢測
Ps:要檢測物體碰撞需要在物體上加入collider
(box什麼的都可以,看自身的需求)
同時還需要在其中一個物體上加入rigidbody
我們在碰撞偵測器中加入碰到就生成一個預製物
使用Instantiate(物件名稱,生成點坐標,生成身份)
沒有留言:
張貼留言