LevelSequence 연출시 애니메이션 연출중 본 어테치 기능에 관련하여 문의드립니다.

레벨시퀀스에서 어태치 기능을 사용하고싶은데 캐릭터에 있는 Hand 본 (바이패드) 에 다른 스태틱 메시 또는 세켈레탈 메시가 정상적으로 어태치가 되지 않는 현상이 있어 사용법에 관련하여 문의 드립니다.

에디터상 시퀀서 연출에서는 정상적으로 보이고 있지만 실제 인게임에서 플레이 해봤을때는 손에 어테치가 되지않고 떨어진 위치에 공중에 떠있는 상태로 어태치가 되고있습니다.

<br/>

이걸 해결하기위해 사물에 있는 본에 직접 어테치하는 방법으로 우회 사용하고있는데 이렇게되면 항상 사물본을 제작해야하는 번거로움이 있습니다. 혹시 사용법이 잘 못된것인지 아니면 혹시 저희쪽 활용에 문제가있는지 문의드립니다.

안녕하세요.​

Unreal Engine 5.5 버전에서 레벨 시퀀서를 이용하여 다양한 재현 시도를 해보았으나, 말씀해주신 현상을 재현하기에는 어려움이 있었습니다.

다만, 해당 현상이 발생할 수 있는 몇 가지 가능성에 대해 아래와 같이 안내드립니다.

첫 번째로, 특정 LOD 레벨에서 BonesToRemove 옵션이 적용되거나, 본 개수 감소 설정이 활성화된 경우입니다.

이 경우, 해당 본이 제거되어 Attach 시 올바른 본을 찾지 못하고 Detach 되기 때문에, 오브젝트가 예상 위치가 아닌 공중에 Attach되는 현상이 나타날 수 있습니다.

Skeletal Mesh Editor > LOD Settings > 해당 LOD의 Bones to Remove 목록에서 Hand 본 또는 상위 본이 제거 대상에 포함되어 있는지 확인해보시길 권장드립니다.

LOD 생성 및 본 감소에 대한 내용은 아래 Epic 공식 문서를 참고하시면 도움이 될 것 같습니다.

Skeletal Mesh LODs in Unreal Engine | Unreal Engine 5.6 Documentation | Epic Developer Community

두 번째로, Attach Track의 Attachment Rule 설정이 Snap to Target이 아닌 경우입니다.

Keep World Transform 또는 Keep Relative Transform Rule은 Attach 시점의 위치/회전을 그대로 유지하므로, 본 위치와 어긋난 상태로 Attch될 수 있습니다.

Location / Rotation Rule을 Snap to Target으로 설정하거나, Transform 변경은 Attach 이후에 수행하시길 권장드립니다.

세 번째로, 콜리전 설정으로 인한 위치 보정 영향입니다.

AttachToComponent함수 호출 시, 별도의 Sweep / Overlap 검사를 수행하지 않기 때문에,

Attach 이후에도 Simulate Physics 또는 Collision Enabled 상태가 유지될 경우, 물리 충돌 처리 과정에서 엔진이 자동으로 오브젝트 위치를 보정하면서 상대 오프셋이 발생할 수 있습니다.

따라서 Attach 후, 충돌 및 물리를 해제 후 위치를 확인하는 것을 권장드립니다.

감사합니다.