TPL 1

Grant Travis Ng
4 min readSep 18, 2020

9/18/20

What I prototyped:

  1. My VPN connection with my laptop and my phone.
  2. Connecting to Unreal and test remote facial tracking.
  3. Stress test connection with remote laptop and phone on different networks.

Method:

Software used for development of VPN: Zerotier

Software used for remoting in computers: VNC

On my computer

With Zerotier, this is a free solution to create your own VPN server and manage clients who want to connect to it. There are two things that needs to be set up before you can use it. First, I had to download the program onto my computer. Second, in order to connect to a VPN server, I needed to make one through a easy process by making an account on Zerotier’s website, which was relatively straight forward.

These are examples of what it creating your own network looks like on Zerotier.

To make an account, it is completely free and easy to set up. I am able to choose what type of IP address I want and authorization of who can connect to my server.

This is what you should see after downloading the program on your computer.

On my iPhone

With my iPhone I needed to download the zerotier app which is a similar setup to the desktop version and the Unreal face app. Both applications are free.

Unreal Face app: https://apps.apple.com/us/app/live-link-face/id1495370836

Zerotier vpn app: https://apps.apple.com/us/app/zerotier-one/id1084101492

These are examples of what the app looks like on your iPhone.

In Unreal

I had to make sure LiveLink plugin is enabled and is able to sense my phone.

The green light indicates that my phone is linked to this project.

All these applications are necessary for development on remote face tracking. With two devices connected on seperate networks, through zerotier VPN, remote face tracking can be streamlined now.

Observation:

Luckily I went on a trip this weekend. This gave me an opportunity to test the capabilities of my VPN connection and Unreal LiveLink.

I was on my mac in Maryland > remoting into my laptop in NYC (that has the Unreal face tracking project on it) and connected to the VPN server > my NYC laptop is connected to my iPhone in Maryland which is connected to the same VPN server > The iPhone with the Faceapp will then connect back into my Laptop in NYC and puppet the character live.

The test was a success!

Making sure I am connected to the VPN on my NYC laptop
This is a screenshot of me on my mac remoting into my laptop in NYC.

What I found of course, was limitations with the internet connection. The action was super delayed and was lagging with VNC ( the application used for remoting into computers). I also had to make sure all the firewalls were turned off on my laptop in NYC. The livelink plugin in Unreal will not connect to devices unless the firewalls are turned off. The VPN will also not connect for the same reason. Zerotier has an easy setup, but might have trouble with multiple users on the same network. I might have to pay extra to stress test multiple users on the same network puppeting two characters or more.

Other areas I need to look into is speed and certain types of connections that will allow a faster and more data streamed solution for this project. I have been working with other VPN applications like NeoRouter and Softether, but they have outdated solutions and the connections are not as fast. I am sure there are more out there. If anyone knows of a more robust VPN server or faster solution I am open to suggestions!

Next step:

Incorporate remote body movements with Radical Motion webcam solution and connect the two applications for one test scene.

--

--