본문 바로가기

C

3D 쿼터뷰 액션게임 - 플레이어 이동 애니메이션, 카메라 이동

 

 

 

  • 애니메이션 적용

생성된 animator 를 하이어라키에서 플레이어 프리팹의 자식 오브젝트의 인스펙터에 component로 Add.

 

 

 

 

 

 

animator 창을 열어서 idle, Walk, Run 애니메이션을 추가하고 transition 으로 연결하기.

 

transition 사이를 조정해줄 파라미터(조건) isWalk, isRun 생성.

 

각 transition에 맞는 파라미터를 각 transition에 추가.

 

 

 

  • player.cs 작성

SetBool

//벡터이동
//삼항연산자를 사용해서 걷기wDown true면 걷기 속도-false면 Run속도
transform.position += moveVec * speed * (wDown ? 0.3f : 1f) * Time.deltaTime;

 

 

  • 플레이어가 지정된 키 입력에 따라 방향 회전을 하지 않으니까 LookAt() 함수를 이용해서 회전시키기
//키 입력에 따라 해당 방향 해당 벡터로 바라보기(회전)
transform.LookAt(transform.position + moveVec);

 

 

 

  • 플레이어를 팔로우하는 카메라

Follow.cs 작성

public class Follow : MonoBehaviour

{
	public Transform target;
    public Vector3 offset;
    
    void Update(){
    	transform.position = target.position + offset;
    }

}

하이어라키 뷰에 Main Camera 의 컴포넌트에 Follow.cs 를 Add.

그리고 public 한 target 에 Player 프리팹을 넣어주고 offset 조정.

 

 

 

 

 

 

 

출처 - https://youtu.be/WkMM7Uu2AoA?list=PLO-mt5Iu5TeYI4dbYwWP8JqZMC9iuUIW2