기본 개념

 

AnimBP 링크 시스템 ( Anim Layer )

  • ref : https://docs.unrealengine.com/5.0/ko/animation-blueprint-linking-in-unreal-engine/

추상 애님BP를 만들고, 클래스처럼 활용하기 ( in[] → out ) ( 무기별 모션 구현 등 )

  1. 추상용 ABP를 만들고, Input들을 Input Pose로 만든다. ( 변수도 만든다. )
  2. 목표 ABP에서 Linked Anim Graph를 통해 Input을 넣고 Output을 받는다.

 

AnimLayerInterface를 통해 anim 내 method 구성을 모듈화 하기

  1. AnimLayerInterface 에셋을 만든다.
    1. Interface들을 만들고, 그 안에 input parameter들을 추가한다.
  2. 목표 ABP에서 class setting - interface에 implement한다.
    1. 해당 interface들을 사용하여 비어있는 구조를 설계한다.
  3. 케이스별 ABP에서 class setting - interface에 implement한다.
    1. 파라미터 하이어라키의 animation layers에서 드래그해서 쓴다
    2. 목표 ABP에서 animation layers(Interface)의 기능을 정의한다.
  4. BP에서 mesh - link anim class layers 함수를 통해, 오버라이드 한다. ( target anim class에서 정의되어있는 interface method만 override되는듯. out에 연결된 애님이 없으면 아얘 override 하지 않는듯 )
  5. ex)
    1. ABP_총잡이를 만들고 AnimInterface_파지 ( 지향사격, 조준사격 interface )를 바인딩, 두개의 인터페이스를 로직 중간에 껴넣는다
    2. ABP_샷건을 만들고 AnimInterface_파지를 바인딩, 두 interface 내부 로직을 구현한다.
    3. ABP_총잡이를 기본 animbp로 가지고있는 character BP에서 샷건장착 시, Link Anim Class Layer - ABP_샷건을 통해 interface들을 override한다.

 

EventGraph에서 Link Anim Class Layer를 통해 BP 로직 오버라이드 ( 혹은 호출 )

 

기존 ABP를 상속받은 ABP는 anim graph logic은 수정하지 못함

  • BP로직은 super 및 추가 가능
  • Asset Override탭을 통해 Asset은 override 가능
  • function, variable등은 override, edit 가능

 

* 추상용 ABP에 Skeleton을 할당하는 대신 Template으로 만들면, 내부 anim sequence는 관리하기 어려워지지만 대신 할당 skeleton 상관없이 어느 ABP에서도 Link 가능

 

AnimSequence <-> Niagara 상호작용

BP_timedNiagaraEffect → (function)Override notify Tick → Get spawn effect → Set Param ( input data from anim bone or socket )

 

'Unreal > Animation' 카테고리의 다른 글

Skeletal Mesh 모듈화 기능 ( Set Leader Pose Component )  (0) 2024.05.16
Anim Asset 구조  (0) 2024.05.16

1. 파츠별로 나뉜 메쉬 (사실 각메쉬는 전체 스켈레톤 트리정보를 가지고있음)

 

2. Character Actor BP에서 드래곤볼

 

3. BP에서 Master로 설정한 SKM component의 값, 포인터 호출 공유

 

작동 테스트

 

 

'Unreal > Animation' 카테고리의 다른 글

UE Animation 구조  (0) 2024.05.20
Anim Asset 구조  (0) 2024.05.16
  • SK
    • Bones ( hierachy )
      • Name
      • Transform ( Location / Rotation / Scale )
      • float variable
        •  
        • time-bone weight(0~1), bone-bone weight(transform)(1~10), mask(alpha?)(0~1) 값 등 제어하기 위한 듯
    • Virtual Bones : 몰?루 _ IK, retargetting 등 동적으로 구조 혹은 관계 변화/계산 필요할때 참조하기 위한?
      •  
    • Sockets
      • 다른 mesh 혹은 BP에서 접근하기 위한 bone hierachy내의 local transform 값?
  • SKM
    • Bones ( hierachy )
      • name
      • weight ( skin )
        • SK
          • Bones ( hierachy )
            • Name
            • Transform ( Location / Rotation / Scale )
            • float variable
              • time-bone weight(0~1), bone-bone weight(transform)(1~10), mask(alpha?)(0~1) 값 등 제어하기 위한 듯
          • Virtual Bones : 몰?루 _ IK, retargetting 등 동적으로 구조 혹은 관계 변화/계산 필요할때 참조하기 위한?
          • Sockets
            • 다른 mesh 혹은 BP에서 접근하기 위한 bone hierachy내의 local transform 값?
        • SKM
          • Bones ( hierachy )
            • name
            • weight ( skin )

관계도

'Unreal > Animation' 카테고리의 다른 글

UE Animation 구조  (0) 2024.05.20
Skeletal Mesh 모듈화 기능 ( Set Leader Pose Component )  (0) 2024.05.16

+ Recent posts