유니티/AA(3D 쿼터뷰 액션 게임)

AA(14) - 폭탄아이템 횟수 표시&회전

무직백수취업준비생 2021. 9. 15. 02:54
728x90
반응형
    public GameObject[] grenades;
    public int hasGrenade;

빈 오브젝트를 만들어 4방향으로 폭탄 프리팹을 배치해줍니다.

 

 

파티클 컴포넌트도 추가해줍니다.

 

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Orbit : MonoBehaviour
{
    public Transform target;
    public float orbitSpeed;
    Vector3 offset;

    void Start()
    {
        
    }

    void Update()
    {
        transform.RotateAround(target.position, Vector3.up, orbitSpeed * Time.deltaTime);
        //타겟 주위를 orbitSpeed로 회전
    }
}

 

오브젝트 회전을 위한 스크립트를 작성합니다.

 

가만히 서있을땐 정상적으로 회전합니다.

 

캐릭터가 이동하면 폭탄이 회전하는 중심축이 따라오지 못해 원하는 대로 회전하지 않습니다.

 

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Orbit : MonoBehaviour
{
    public Transform target;
    public float orbitSpeed;
    Vector3 offSet;

    void Start()
    {
        offSet = transform.position - target.position;
    }

    void Update()
    {
        transform.position = target.position + offSet;
        transform.RotateAround(target.position, Vector3.up, orbitSpeed * Time.deltaTime);
        //타겟 주위를 orbitSpeed로 회전
        offSet = transform.position - target.position;
        //RotateAround 후의 위치를 가지고 목표와의 거리를 유지
    }
}

 

스크립트를 추가해 해결합니다.

 

728x90
반응형