안녕하세요.
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 후, 충돌 및 물리를 해제 후 위치를 확인하는 것을 권장드립니다.
감사합니다.