스크린샷

구현/개선한 사항

적 캐릭터 개선

  • Mixamo에서 3D 모델 및 애니메이션을 다운받아 적용함

  • Coroutine 사용 방식 개선
//실제 코드는 아닌, 동작 방식을 설명하기 위한 간이 코드임
	private void ChangeCoroutine(IEnumerator nextCoroutine)
    {
        if (currentCoroutine != null)
            StopCoroutine(currentCoroutine);
        currentCoroutine = StartCoroutine(nextCoroutine);
    }
    
    Start()
    {
     StartCoroutine(CoroutineIDLE());
    }
    
    CoroutineIDLE()
    {
     //.....
    StartCorutine(CoroutineRun());
    }
    
    CoroutineRun()
    {
     //.....
     StartCorutine(CoroutineAttack());
    }
    ...
  • 근접 공격형 적 유형 추가
  • Enemy Spanwer 추가

커스텀 마우스 포인터 구현

  • 기존 마우스 포인터 대신, Texture2D 기반의 마우스 포인터로 교체
  • 마우스포인터를 이용하여 사격가능/재장전 중 상태를 구분할 수 있도록 함

 

기타 플레이 개선

  • 마우스를 캐릭터와 겹쳐서 댈 경우, 플레이어 캐릭터가 기울어지던 현상 수정
    IEnumerator CharacterMoveMent()
    {
        while(true)
        {
            float horizon = Input.GetAxis("Horizontal");
            float vertical = Input.GetAxis("Vertical");

            Vector3 Movement = new Vector3(horizon, 0.0f - transform.position.y, vertical) * pSpeed;

            charController.Move(Movement);

            // 마우스가 향하는 방향으로 캐릭터 회전
            Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
            RaycastHit hit;

            if (Physics.Raycast(ray, out hit))
            {
                Vector3 targetPosition = new Vector3(hit.point.x, 1.0f, hit.point.z);

                Quaternion rotation = Quaternion.LookRotation(targetPosition - transform.position);

                transform.rotation = Quaternion.Lerp(transform.rotation, rotation, Time.deltaTime * 10.0f);
                //Fix : X축 회전을 고정하여 마우스포인터가 캐릭터와 근접할시 캐릭터가 상하로 기울어지는 현상 해결
                Vector3 euler = transform.rotation.eulerAngles;
                euler.x = 0;
                transform.rotation = Quaternion.Euler(euler);

            }
            yield return new WaitForSeconds(0.01f);
        }
    }

 

추후 구현/개선 사항

  • 무기 UI 수정 및 인벤토리 기능 구현
  • 아이템 엔티티 구현 / 아이템 습득 기능 구현
  • Player Character도 기존 임시 모델에서 3D 모델로 변경할 것

'게임개발 > ShootingDefence' 카테고리의 다른 글

[ShootingDefence] 개발 일지 - 2022.06.08  (0) 2022.06.09

+ Recent posts