Unreal Engine - Ownership

이전에 RPC 다루면서 Run on owning Client 사용하였다.

먼저 RPC는 특정 Actor를 선택해 함수로 동작시키는 것으로
RPC로 실행로 사용할 Actor가 무엇인지 알 필요가 있다.

RPC 원격 함수 호출은 내가 제어하고 있는 Actor 대상으로만 호출된다.
즉, 자신이 제어하는 PlayerController 또는 Character 부모인 Pawn 에게 RPC를 사용할 수 있고, 이와 상관 없는 시뮬로 동작하는 Actor에게 함수를 호출하더라도 무시한다.

만약 아이템이 드랍되었다면 내가 먼저 주웠고 RPC 함수로 픽업 및 사용을 하였을 때 동작하지 않는다. 아이템 픽업 및 사용하려면 소유권을 가져오도록 한다.

Actor의 소유권을 가져오려면 SetOwner 함수로 사용한다.

이러한 상황을 인지하지 못한다면 콘텐츠 개발에 지장이 생기므로 알아두도록 하자. 그 밖의 레플리케이션에서 문제가 되는 타이밍도 해결하고 소유권(Ownership)으로 다양한 개발을 할 수있다.