본문 바로가기

블루프린팅/6. 플레이어 어빌리티

06 플레이어 어빌리티 강화 - 달리기

05장에서 사용하였든 일인칭 템플릿에 나왔던 플레이어에 대해 배웁니다.

플레이어 입력과 조작

  • 시야
  • 타임라인과 분기로직
  • 오브젝트 인터렉션에 사운드 및 파티클 이펙트추가

 

실행기능 추가

현재 플레이어는 단일 속도로 이동하지만 왼쪽 Shift키를 함께 누르면 이동 속도를 증가하도록 변경하기 위해 간단히 FirstPersonCharacter의 이벤트그래프에 있는 액션을 학습합니다.

 

캐릭터 무브먼트 분석

콘텐츠블루우저 FirstPerson>BluePrints폴더에서 BP_FirstPersonCharacter 블루프린트를 열어봅니다. 

 

2023년5월말 V5.2를 깔아서 인지 교재에서 설명하려는 노드는 보이지 않고 새로운 입력 시스템이 보인다. ㅠㅠ

일단 분석은 패스.

다시 레벨에디터로 돌아옵니다.

컨트롤 입력의 커스터마이징

왼쪽 시프트키를 누르고 이동하면 좀더 빠르게 이동하게 만들어보자

1. 레벨에디터 우상 톱니바퀴 Seetings를 클릭하고 프로젝트세팅을 클릭합니다.

2. 엔진 카테고리를 찾고 입력 옵션을 선택합니다.

3. Bindings밑에 Action Mappings+를 눌러 Sprint - LeftShift추가 하고 다시  Action Mappings+를 눌러 Zoom-Right Mouse Buttong을 2개 추가합니다.

창을 닫으면 저장됩니다.

 

질주 어빌리티 추가

Left Shif가 매핑된 Sprint라는 이벤트를이용해 봅시다.

1. 컨텐트드러워를 열고 FirstPerson>BluePrints폴더에서 BP_FirstPersonCharacter 블루프린트를 열어봅니다.

2. 빈 그리드에 우클릭후 컨텍스트 메뉴에서 Sprint이벤트를 선택해 노드를 배치합니다. 이 노드는 이미 매핑한 Left Shift Key에 반응합니다.

3. 왼쪽 컴포넌츠 아래 Character Movement를 끌어 그리드에 놓으면 Character Movement노드가 생깁니다.

4. Character Movement노드 출력을 끌으면 컨텍스트메뉴에서 SET Max walk speed를 찾아 추가해주고 값을 2200으로 설정합니다. 이노드는 Character Movement의 Detail의 변수중 Max Walk Speed의 값을 바꿔줍니다.

5. Input Action Sprint의 Pressed와 방금만든 SET Max Walk Speed 2200을 연결후, 기존 Chracter Movement출력을 끌어다 Set Max Walk speed를 하나 더 추가하고 600으로 합니다. 이건 InputActionSprint의 Released와 연결합니다.

6. Left Shift Key가 눌리면 Max Walk speed가 2200으로 놓으면 600으로 되돌아 갑니다.

7. 컴파일후 레벨에디터에서 플레이 해보면 잘 동작합니다.  갑자기 빨라지는게 아니라 가속이 됩니다.