technocranes / technocrane-unreal

Technocrane Tracker Plugin for Unreal Engine
MIT License
22 stars 6 forks source link

The technocrane plugin works in both the editor and during play, but it doesn't work on NDisplay/Switchboard #5

Closed SergioIGaytan closed 1 year ago

SergioIGaytan commented 1 year ago

Hello,

I am using the plugins Switchboard and NDisplay inside Unreal Engine so I can get the parallax effect when it is being played on a projector screen while having real actors in person. I noticed that this plugin works in both the Editor and during Play, but for some reason the tracking deactivates during NDisplay. I've had this same problem with HTC Vive trackers and it was fixed because I assigned their role to be Trackers/Default and not a player's arm controller (for video games) on SteamVR (a VR program for the HTC Vive Trackers to work) settings and this is because NDisplay only accepts Livelink Tracker's data and not other types of tracking data. So I am thinking this is because either this plugin isn't assigning the technocrane as a tracker inside Livelink, the technocrane itself has to be assigned to a specific role so NDisplay can take the technocrane's tracking data, or the plugin isn't compatible for NDisplay.

Has anyone ever tried using the technocrane on NDisplay and got it to work?

Thank you,

Sergio

Neill3d commented 1 year ago

I didn't have a chance to try out nDisplay, but what I see in documentation that live link transform role have to be compatible with nDisplay https://docs.unrealengine.com/5.0/en-US/in-camera-vfx-quick-start-for-unreal-engine/#step6-uselivelinkforcameratracking

Neill3d commented 1 year ago

or here, quite similar issue discussion - https://forums.unrealengine.com/t/unreal-engine-4-27-vrpn-livelink-wont-work-with-switchboard/248753

josegorgonzola commented 1 year ago

@SergioIGaytan Did you check the livelink preset?

Encountered the same issue. Could it be due to livelink presets?

Tested on UE 5.03 with feed over COM port which works fine when adding a source in livelink manually. However when storing settings as a preset the connection type defaults to network on launch resulting in livelink not finding the COM specific source.

Cheers!

Neill3d commented 1 year ago

interesting sharing about presets not being saved, thank you

markpatty commented 1 year ago

I've had exactly this problem during testing over the past few weeks.

I have the Technodolly LiveLink moving the camera on my control node, I've saved the preset and made that the LiveLink default. My LiveLink to Ndisplay is enabled. I can move items on my control node which manipulates the same items on my render node. I'm connected using a multi-user setup and switchboard running a simple Ndisplay config.

The multi-user server logs all updates in the scene but doesn't recognise any input from the LiveLink (I'm not sure if this is the case with other LiveLink connected devices).

I have tried setting the LiveLink role as both a transform role and a camera role and neither seems to make a difference.

If anyone here has made this work I'd be very keen to hear how.

Many thanks :)

markpatty commented 1 year ago

Hi all, Sergei has found a solution for this while running a render node on your local machine from Switchboard. I was able to find a solution for running another node on the network using Sergei's findings -

From Sergei - 'I run nDisplay and Switchboard locally and find out that live link connection was being locked when two instances of ue is running. That is actually the same issue with running standalone game within the editor, live link is also not working. The workaround for the test was to make a live link preset, assign it as a default in project settings, assign a camera role and subject for the nDisplay view. Then I removed the link link setup and run nDisplay node from the switchboard. In that case only one instance of live link connection is running on the PC and that works. The removed live link setup could be easily returned back by using a saved preset.'

A note from above. Select your camera that you've given a LiveLink controller to, in the LiveLink control settings assign the LiveLink preset that you saved as part of Sergeis instructions as the camera role.

The above worked when running Switchboard back to the same PC that Unreal is operating on. For it to work on a network node you need to do the following -

Follow Sergei's instructions above and then -

'Set up a node to run on your local machine, then set up a second identical node on your render node. For the local control machine, untick 'full screen' so you can still access Unreal Engine to make changes. Do all this in the nDisplay config. When you run switchboard, ensure that the local machine (which is receiving the Technodolly LiveLink data) is the master node (gold star on the left). You'll get two identical displays, one on the control machine which can be minimised so you can continue adjusting in Unreal editor and the second slave node which will run an LED wall and follow the Technodolly perfectly.'

I hope I've made that clear enough. Good luck!

Neill3d commented 1 year ago

Thank you very much for sharing Mark!