とても分かりやすく解説してくれている方がいました。 2016年の記事なので、UE4側でインターフェイスなどが変わってるかもしれませんが 基本的な考え方はおなじではないでしょうか。
https://unrealengine.hatenablog.com/entry/2016/09/12/002115