• Hierarchy창 빈공간 마우스 우클릭
  • 3D Object > Cube 선택하여 큐브 생성
  • inspector창에서 MashRenderer 체크 해제

  • 큐브를 Player와 부딧칠 수 있도록 경로상에 배치

스크립트 생성

  • Project창 마우스 우클릭 Create > c# script
  • 이름을 TriggerDrop로 지정
  • 다음의 내용을 작성
using System.Collections;
using System.Collections.Generic;
using Unity.VisualScripting;
using UnityEngine;

public class TriggerDrop : MonoBehaviour
{
    public GameObject target_player;
    public void OnTriggerEnter(Collider other)
    {
        if (other.CompareTag("Player")) // trigger 안에 들어온 object가 player인지 확인
        {
            target_player.transform.parent = null; // trigger 안에 들어온 object가 player라면 player의 부모를 없앰
            target_player.transform.rotation = Quaternion.Euler(0, 0, 0); // player의 회전값을 초기화
        }
    }
}
  • 작성된 스크립트를 cube에 드래그 드랍하여 전달

  • Follower안에 있는 drop될 대상 (예시의 경우는 OVR Camera Rig)을 그래그 하여 target_player에 연결

부모 연결하기

using System.Collections;
using System.Collections.Generic;
using Unity.VisualScripting;
using UnityEngine;

public class TriggerDrop2 : MonoBehaviour
{
public GameObject target_player;
public GameObject target_parent;
public void OnTriggerEnter(Collider other){
        if (other.CompareTag("Player")) // trigger 안에 들어온 object가 player인지 확인
        {
            target_player.transform.parent = target_parent.transform; // trigger 안에 들어온 object가 player라면 target_parent를 부모로 등록
            target_player.transform.rotation = Quaternion.Euler(0, 0, 0); // player의 회전값을 초기화
            target_player.transform.location = Vector3(0,0,0); //player의 위치값을 초기화
        }
    }
}