DeepSeek 답변

 

언리얼 엔진에서 FloatingPawnMovement 컴포넌트를 사용하여 입력 값에 따라 상하좌우 이동을 블루프린트로 구현하는 방법을 설명합니다. FloatingPawnMovement는 중력의 영향을 받지 않고, 자유롭게 이동할 수 있는 Pawn에 적합한 이동 컴포넌트입니다.


1. 프로젝트 설정

  1. 새로운 프로젝트를 생성하거나 기존 프로젝트를 엽니다.
  2. Pawn 클래스를 생성합니다. (예: MyFloatingPawn)

2. FloatingPawnMovement 컴포넌트 추가

  1. Pawn 클래스의 디폴트 컴포넌트로 FloatingPawnMovement를 추가합니다.
    • Components 패널에서 Add 버튼을 클릭하고, FloatingPawnMovement를 선택합니다.
    • 또는 C++ 코드에서 다음과 같이 추가할 수 있습니다:
    • cpp
      Copy
      #include "GameFramework/FloatingPawnMovement.h"
      
      AMyFloatingPawn::AMyFloatingPawn()
      {
          // FloatingPawnMovement 컴포넌트 생성
          FloatingPawnMovement = CreateDefaultSubobject<UFloatingPawnMovement>(TEXT("FloatingPawnMovement"));
      }

3. 입력 축 설정

  1. 프로젝트 설정에서 입력 축을 설정합니다.
    • Edit > Project Settings > Input으로 이동합니다.
    • Axis Mappings에서 다음과 같은 입력 축을 추가합니다:
      • MoveForward (예: W, S 키)
      • MoveRight (예: A, D 키)
      • MoveUp (예: Space, Ctrl 키)

4. 블루프린트에서 입력 처리

  1. Pawn의 블루프린트를 엽니다.
  2. 이벤트 그래프에서 입력 축 이벤트를 생성합니다:
    • MoveForward
    • MoveRight
    • MoveUp
  3. 각 입력 축 이벤트에서 Add Movement Input 노드를 사용하여 이동 입력을 처리합니다.

예시: 블루프린트 로직

  • MoveForward:
    • Axis Value를 Add Movement Input 노드의 Scale Value에 연결합니다.
    • World Direction에는 Get Actor Forward Vector를 연결합니다.
  • MoveRight:
    • Axis Value를 Add Movement Input 노드의 Scale Value에 연결합니다.
    • World Direction에는 Get Actor Right Vector를 연결합니다.
  • MoveUp:
    • Axis Value를 Add Movement Input 노드의 Scale Value에 연결합니다.
    • World Direction에는 Get Actor Up Vector를 연결합니다.

5. 이동 속도 설정

  1. FloatingPawnMovement 컴포넌트의 속성을 조정하여 이동 속도를 설정합니다.
    • Max Speed: 최대 이동 속도
    • Acceleration: 가속도
    • Deceleration: 감속도

6. 테스트

  1. 게임을 실행하고 Pawn을 조종합니다.
  2. 입력 키(예: W, A, S, D, Space, Ctrl)를 사용하여 상하좌우 이동이 정상적으로 작동하는지 확인합니다.

추가 설명

  • FloatingPawnMovement: 이 컴포넌트는 중력의 영향을 받지 않으며, 자유롭게 이동할 수 있는 Pawn에 적합합니다.
  • 입력 축: 입력 축은 키보드, 게임패드, 마우스 등 다양한 입력 장치에서 사용할 수 있습니다.
  • 이동 로직: Add Movement Input은 Pawn의 현재 방향을 기준으로 이동을 처리합니다.

이제 FloatingPawnMovement를 사용하여 블루프린트로 상하좌우 이동을 구현할 수 있습니다! 필요에 따라 이동 속도나 입력 방식을 더 세부적으로 조정할 수 있습니다.

+ Recent posts