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?