Unity_2기 내일배움캠프 TIL

Unity_2기 9주차 (230105)

잼잼재미 2024. 1. 5. 22:15

오늘은 유니티 심화주차 팀 프로젝트를 각각 팀원들의 구현 내용을 종합하고, 기능 추가와 오류 수정을 진행했다.

 

 

구현 내용


총기 추가

https://kkln2486.tistory.com/225

 

3D 총기 구현 (2)

무기 교체 구현 1. 스크립트 수정 GunController 추가 [Header("GunHolders")] [SerializeField] private List _gunHolders; public void EquipM4() { foreach(GameObject gun in _gunHolders) { gun.SetActive(false); } CurrentGun = _gunHolders[1].GetCompo

kkln2486.tistory.com

 

 

 

기관총과 스나이퍼총을 구현했다. 각 아이템을 먹게되면 무기가 자동으로 교체되도록 구현했다.

 

 

private bool _isSniper = false;

IEnumerator COFineSightActivate()
{
    PlaySE(_fineSightSound);

    _originFOV = _virtualCamera.m_Lens.FieldOfView;

    if(!_isSniper)
    {
        while (CurrentGun.transform.localPosition != CurrentGun.FineSightOriginPos)
        {
            CurrentGun.transform.localPosition = Vector3.Lerp(CurrentGun.transform.localPosition, CurrentGun.FineSightOriginPos, 0.2f);
            _virtualCamera.m_Lens.FieldOfView = 30f;

            yield return null;
        }
    }
    else
    {
        while (CurrentGun.transform.localPosition != CurrentGun.FineSightOriginPos)
        {
            CurrentGun.transform.localPosition = Vector3.Lerp(CurrentGun.transform.localPosition, CurrentGun.FineSightOriginPos, 0.2f);
            _virtualCamera.m_Lens.FieldOfView = 20f;
            _scope.SetActive(true);

            yield return null;
        }
    }

}

IEnumerator COFineSightDeActivate()
{
    if(!_isSniper)
    {
        while (CurrentGun.transform.localPosition != CurrentGun.OriginPos)
        {
            CurrentGun.transform.localPosition = Vector3.Lerp(CurrentGun.transform.localPosition, CurrentGun.OriginPos, 0.2f);
            _virtualCamera.m_Lens.FieldOfView = _originFOV;

            yield return null;
        }
    }
    else
    {
        while (CurrentGun.transform.localPosition != CurrentGun.OriginPos)
        {
            CurrentGun.transform.localPosition = Vector3.Lerp(CurrentGun.transform.localPosition, CurrentGun.OriginPos, 0.2f);
            _virtualCamera.m_Lens.FieldOfView = _originFOV;
            _scope.SetActive(false);

            yield return null;
        }
    }
}


스나이퍼의 경우,  _isSniper bool 값을 추가해서 스나이퍼의 경우에 정조준 시, 조준점을 나오도록 구현했다.

 

 

사운드 추가

 

각 상황 별, 사운드 추가

 

 

오늘의 회고


오늘은 기능적인 구현보다 각자의 작업물을 종합하는데 시간이 많이 걸렸다. 아무래도 각자의 씬에서 작업한 내용을 하나의 씬으로 종합하는 것이 어려움이 많았다. 어찌저찌 종합을 완료하고 stage1, stage2까지 프로토 타입이 완성되었다. 월요일이 프로젝트 제출 날이기 때문에 각자 주말 간, 기능 추가와 QA Test를 진행하고 월요일에 최종적으로 코드 리팩토리를 진행하기로 했다. 마지막까지 열심히해서 잘 마무리하도록 하겠다!!

'Unity_2기 내일배움캠프 TIL' 카테고리의 다른 글

Unity_2기 10주차 (230109)  (1) 2024.01.09
Unity_2기 10주차 (230108)  (0) 2024.01.08
Unity_2기 9주차 (230104)  (1) 2024.01.04
Unity_2기 9주차 (230103)  (1) 2024.01.03
Unity_2기 9주차 (230102)  (0) 2024.01.02