[Feature Request] TouchDesigner integration

I’ve started integrating the Nuitrack C++ SDK into TouchDesigner. This involves compiling a DLL, opening the DLL in TouchDesigner, and also making sure that TouchDesigner sees all of the other relevant DLLs. This is part of my code:

try { Nuitrack::init("C:/tools/nuitrack/data/nuitrack.config"); } catch (const Exception& e) { std::cerr << "Can not initialize Nuitrack" << std::endl; std::cout << e.what() << std::endl; throw(-1); }
However, that results in a runtime exception: tdv::nuitrack::ModuleNotInitializedException::`scalar deleting destructor'(unsigned int)
My license exists at this path

C:\tools\nuitrack\data\license.json

And my nuitrack.config is modified like this

"LicenseFile": "C:/tools/nuitrack/data/license.json", 

I think I’ve pasted the DLLs (NuitrackModule.dll …) in a place so that TouchDesigner sees them, so what might be causing the exception? Thanks for any help.

Update:
In order to make sure my license is valid, I tried compiling and running the nuitrack_console_sample code.
I changed line 49 to td::string configPath = "C:/tools/nuitrack/data/nuitrack.config";
and the nuitrack.config uses a relative path for the license "LicenseFile": "../license.json",
The executable still works after 3 minutes. The license is also pasted in a place so that TouchDesigner sees it relatively. Why might I still get the ModuleNotInitializedException?

The default setup for the SDK also requires the middleware.dll to be in a folder relative to the nuitrack.config file … Nuitrack tries to dynamically load this DLL at runtime …

Check your middleware path is correct in the config file

Westa

1 Like

Are there updates to this process with the TD improvements since this posting? I would love to bring Nuitrack skeletal data into Touchdesigner. Maybe easier now with the C++ CHOP/TOP?

Hi @Michae, actually not yet (at least officially at Nuitrack Team), but we consider TouchDesigner integration at the moment.
As a more “classical”/oldschool developers we are trying to understand why it would be useful / important / cool to have a TouchDesigner integration. It would be great if you could provide some insights.

There is of course the existing RealSense TOP & CHOP in TD, which require the Cubemos license to function.

From my testing so far, Nuitrack seems to provide smoother and more detailed data. It would be great if there was a way to integrate into the existing functionality… perhaps?