How do I change the AppleARKitLiveLink Settings via user input?


Using the FaceARSample project the user can publish the iPhone’s facial blendshape data via LiveLink to an IP address they define. I want to change it so the user can edit other LiveLink settings as well. Most importantly, the Subject Name.

So I found in the FaceARSample where the LiveLink source is created, inside of AppleARKitFaceSupportlmpl.cpp. The console command "LiveLinkFaceAR SendTo= [IP Address] " is used to change where LiveLink is publishing to. Upon pressing a button in the app this console command is triggered and it uses this line of code to publish the data:

RemoteLiveLinkPublisher = FAppleARKitLiveLinkSourceFactory::CreateLiveLinkRemotePublisher(RemoteIp);

I’ve tried to make my own AppleARKitLiveLinkSourceFactory through blueprints but I couldn’t figure it out. I found that I could edit the default subject name in the AppleARKit Project Settings but it’s not useful because it needs to be user defined after the app is compiled.

I’m confused about where to start. I’ve taken a look at the Maya LiveLink plugin, read the Unreal Engine documentation,and studied C++ for about 4 weeks now but I’m still confused. Do I need to somehow create a module and #include the AppleARKit plugin then derive my own class from the AppleARKitLiveLinkSourceFactory?

When I look at the source code I’m lead down a long list of classes and functions which very quickly become confusing.