피지컬 애니메이션 프로파일 적용 방법

블루프린트를 사용해서 스켈레탈 메시 컴포넌트에 피지컬 애니메이션 프로파일을 적용하는 법을 안내해 드립니다.

Choose your operating system:

Windows

macOS

Linux

필요한 사전지식

이 글은 다음 주제에 대한 지식이 있는 분들을 대상으로 합니다. 계속하기 전 확인해 주세요.

여기서는 스켈레탈 메시 컴포넌트 에서 피지컬 애니메이션 프로파일 을 활성화시키는 단순한 그래프 제작법을 단계별로 알아봅니다.

단계

  1. 스켈레탈 메시 컴포넌트 포함 블루프린트를 열거나 만듭니다.

    • 블루프린트에 스켈레탈 메시 컴포넌트 가 없는 경우, 컴포넌트 패널 에서 하나 추가하면 됩니다.

    addSkelMeshComp.png

  2. 스켈레탈 메시 컴포넌트 콜리전 세팅을 조절합니다.

    • 콜리전 프리셋을 변경하여 스켈레탈 메시 컴포넌트 Collision Enabled (콜리전 켜짐)이 되도록, 하지만 폰과는 상호작용하지 않도록 하세요:

      collisionSettings.png

      Object Type (오브젝트 유형)이 으로 설정되어 있으며, 콜리전 채널에서 무시하는 것이 보입니다. 그러면 스켈레탈 메시 자체가 콜리전 캡슐에 밀려나는 문제가 해결됩니다. 하지만 스켈레탈 메시 가 다른 과 충돌하도록 하려면, 자기 스켈레탈 메시 오브젝트 유형 을 조절한 뒤, 그 오브젝트 유형 캡슐 이 상호작용하는 방식을 변경해 주면 됩니다. 커스텀 콜리전 채널 생성 관련 상세 정보는 프로젝트에 커스텀 오브젝트 유형 추가 문서를 참고하세요.

  3. 블루프린트의 컴포넌트 패널 을 통해 Physical Animation Component 를 추가합니다.

    addPhysAnimComp.png

  4. Name 변수를 추가하고 Bone Name 이라 합니다.

    variableName.png

  5. Bone Name 변수 값을 설정할 수 있도록 컴파일합니다.

    compile.png

  6. Bone Name 기본값을 원하는 타깃 으로 변경합니다. 이 경우 spine_01 입니다.

    boneName.png

  7. 이벤트 그래프 로 전환합니다.

  8. Event BeginPlay 이벤트 노드를 찾거나 생성합니다.

    eventBP.png

  9. Set Skeletal Mesh Component 노드를 추가하고 Event Beging Play 에 연결합니다.

    • Target (타깃)은 위에서 추가한 Physical Animation Component 입니다.

    • In Skeletal Mesh Component (입력 스켈레탈 메시 컴포넌트)는 블루프린트 내 또는 위에서 추가한 스켈레탈 메시 컴포넌트 입니다.

    createSetSkel.png

  10. Apply Physcial Animation Profile Below 노드를 추가하고 Set Skeletal Mesh Component 노드에 연결합니다.

    • Target (타깃)은 Physical Animation Component 입니다.

    • Body Name (바디 이름)은 Bone Name 변수를 입력으로 받습니다. 피직스 애셋 안에서, 피직스 바디 이름은 그 본을 땁니다.

    • Profile Name (프로파일 이름)은 스켈레탈 메시 에 적용하고자 하는 피지컬 애니메이션 프로파일 이름입니다.

    • 상체만 애니메이션이 적용되도록 하기 위해 `spine_01' 을 원하는 본으로 사용하고 있으므로, **Include Self** (자신 포함)을 체크해야 합니다.

    • Clear Not Found (못찾은 것 지우기)는 선택 옵션이나, 프로파일에서 찾지 못한 본을 지우기 위해 True 로 설정했습니다.

    applyPhysAnim.png

  11. Set All Bodies Below Simulate Physics 노드는 Apply Physcial Animation Profile Below 노드에 연결했습니다. 그래프 완성입니다.

    • Target (타깃)은 스켈레탈 메시 컴포넌트 입니다.

    • In Bone Name (입력 본 이름)은 Bone Name 변수를 입력으로 받습니다.

    • New Simulate (새 시뮬레이션)은 True 로 설정합니다.

    • 여기서도, spine_01 을 타깃 본으로 사용하고 있으므로, Include Self (자신 포함) 옵션을 체크해야 합니다.

    Copy Node Graph

    ApplyPhysicialAnimProf_BP.png

    숨겨진 그래프 정보

    변수

    설명

    Bone Name

    spine_01

    피지컬 애니메이션 프로파일 적용을 시작할 스켈레탈 메시 이름입니다. Set All Bodies Below Simulate Physics 에서도 사용합니다.

    컴포넌트

    설명

    Physical Animation Component

    스켈레탈 메시 의 피지컬 애니메이션을 실제로 처리하는 컴포넌트입니다.

    Skeletal Mesh Component

    물리적으로 애니메이션이 적용되는 스켈레탈 메시 컴포넌트입니다. Character 를 상속하는 기존 블루프린트에서 작업하는 경우, 이름은 그냥 Mesh 가 됩니다.

결과

완료되면 스켈레탈 메시 컴포넌트 는 런타임 도중 피지컬 애니메이션 컴포넌트 를 사용하는 피직스 시뮬레이션이 적용됩니다.

resultApplyPAP.png

부가 자료

언리얼 엔진 문서의 미래를 함께 만들어주세요! 더 나은 서비스를 제공할 수 있도록 문서 사용에 대한 피드백을 주세요.
설문조사에 참여해 주세요
취소