Jump to content

ver 0.10.0 DllNotFoundException: aristo_interface


Recommended Posts

Hello guys,
i am not sure is this sdk still supported or is there a different openxr kit or something where the handtracking is integrated?
I have tried using it with multiple different unity versions on different machines but all i get is DllNotFoundException: aristo_interface.
When i tell unity to load it from startup it just tells me dependencys of aristo_interface not found.

I have win 10 64bit, unity 64bit.
i tried installing VC 2015 as suggested, (unity wouldn't even start)
i tried checking if openVr is loaded but i am unsure what does that mean exactly ?
in  unity 2019.4 there is an option to check openVR, i guess that was meant am i right?
I also checked if the dll in system folder is there. I cannot think of anything else to try.
I only get this error with vives handtracking engine with the other engines e.g in editor it works fine.


Unity Versions i tried:

2019.4.28f1

2020.3.11f1

2018.4.35f1

I would be very grateful for any response.

greetings Johannes

Link to comment
Share on other sites

Hi @WannerDev

To start with hand tracking sdk on Windows, please follow the steps below:

  1. I would suggest to use Unity LTS version, i.e. 2018.4 and 2019.4 series are recommended.
  2. Follow the steps here to install OpenVR support of Unity XR system.
    1. Follow the steps in Quickstart/Install section to enable OpenXR in your project, this is the steps required for "checking if OpenVR is loaded".
    2. You can follow the steps in Quickstart/Standalone (no input) to build a sample scene and test if VR setup is correct.
    3. Note that if you don't need controller in your project, you can just skip the "Quickstart/SteamVR Input System" part.
  3. Import Vive Hand Tracking SDK into your project.
  4. You can now run the sample scenes (Sample or UISample) under Assets/ViveHandTracking/Sample folder to see if hand tracking is working.

Please note on the first startup, it might take a few minutes before hand is displayed.

Link to comment
Share on other sites

Thank you very much for your response.
I rememebered i could check if it was loaded by the OpenVr initialized output in the console right?
I have that working in one buil i only get errors including DllNotFoundException: aristo_interface as well as laser missing errors.
But most builds just come down to DllNotFoundException: aristo_interface 

I am seeing openVR initialize that should prove that it loaded correctly right?

Yes i tried purely without controllers to recognize a gesture but it didn't work. (seeing the scene in VR etc worked)

I read in a post that the sdk is only compatible with steamVR 1.x is that still the case ?
I am trying without it but out of curiosity.

Documenting my attempt

- create new unity project 2019.4
- add unity xr plugin via installer.zip (via json package)
- Then i realize that the guide is outdated and i have a choice to make to install XR plugin managment.
- I download the XR management plugin via the button.


Then do i have to enable XR settings in the player?
deprecated settings
[] Virtual reality supported

Because if i don't the choices are 

[] magic leap 
[] oculus
[] windows mixed reality
[] unity mock HMD
There is no possibility to add a loader here.


If i enable the deprecated settings i can add OpenVR

Then i'm done and i import vive handtracking sdk and try the sample scene my headset glows and i get the astro errors in the console.
(tracking doesn't work)

If i don't enable the deprecated settings i have no idea how to set OpenVR as loader.
Ah and for reference the steamVR system works fine

Greetings Johannes




 

Link to comment
Share on other sites

Hi @WannerDev

If you don't see OpenVR in the XR settings, then probably you haven't installed the OpenVR package yet. You need to install it in the package manager UI. Since it's from a custom a package registry, you might need to find it in My regrestries.

But if you can see the VR scene in your HMD and the HMD tracking is working fine, I think you can stick with the deprecated OpenVR support.

Now back to the dll not found problem, this seems irrelevent to the OpenVR setup. It seems to be some dll missing when you are trying to load aristo_interface.dll.

Please follow the steps to check:

  1. Make sure aristo_interface.dll and cosmos_camera.dll exist under Assets/ViveHandTracking/Plugins/x86_64 folder
  2. Please make sure you have installed Visual C++ 2015 redistribute Update 3 (64-bit), please note the Update 3 and 64-bit part.
    1. Update 3 can be downloaded here: https://www.microsoft.com/en-us/download/details.aspx?id=53587, please make sure to select the 64-bit installer.
  3. You can use depenedency walker to check if you can load the dll or if any dependency is missing.
    1. Dependency walker can be downloaded from here: https://www.dependencywalker.com/
Link to comment
Share on other sites

I can't install that VC update, it says it is already installed.

hm ok dependency walker spits this out if i used it correctly:

Error: At least one required implicit or forwarded dependency was not found.
Warning: At least one delay-load dependency module was not found.
Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module.

Does that help in localizing which module is missing?

image.thumb.png.eb2bad0b9ec8a0fb007904bc6ca6ae3e.png

Link to comment
Share on other sites

Hi @WannerDev

The EXT-MS-* and API-MS-* can be ignored for this purpose, as they seems to be Windows internal. No matter found or not, they don't have problem when loading dll.

You can check the module in the bottom and see if any other dll is missing.

Link to comment
Share on other sites

Hi @WannerDev

After some googling for the dlls, it seems these 2 dlls are system dlls, and will be dynamically loaded at runtime.

I also double checked on my machine, and dependency walker also complains about these 2 missing dlls. So I think it has nothing todo with the dll not found error.

If these 2 dlls are the only missing dll (excluding API-MS-*.dll and EXT-MS-*.dll), then I believe this is the same behavior on my machine.

Can you please check the pre-built samples and see if they can work on your pc? You can check the unity log at %USERPROFILE%\AppData\LocalLow\HTC\ViveHandTrackingSample\output_log.txt or %USERPROFILE%\AppData\LocalLow\HTC\ViveHandTrackingUISample\output_log.txt

Link to comment
Share on other sites

So i tried the samples they don't work as well:
I am not sure if it matters at this point but i am using a valve index if that makes any difference.

The logs:
output_log.txt


Fallback handler could not load library C:/Users/cm/Downloads/ViveHandTracking_0.10.0/Prebuilt samples/ViveHandTrackingSample_Win64/Sample_Data/Mono/aristo_interface
Fallback handler could not load library C:/Users/cm/Downloads/ViveHandTracking_0.10.0/Prebuilt samples/ViveHandTrackingSample_Win64/Sample_Data/Mono/.\aristo_interface
Fallback handler could not load library C:/Users/cm/Downloads/ViveHandTracking_0.10.0/Prebuilt samples/ViveHandTrackingSample_Win64/Sample_Data/Mono/aristo_interface
Fallback handler could not load library C:/Users/cm/Downloads/ViveHandTracking_0.10.0/Prebuilt samples/ViveHandTrackingSample_Win64/Sample_Data/Mono/libaristo_interface
Fallback handler could not load library C:/Users/cm/Downloads/ViveHandTracking_0.10.0/Prebuilt samples/ViveHandTrackingSample_Win64/Sample_Data/Mono/.\libaristo_interface
Fallback handler could not load library C:/Users/cm/Downloads/ViveHandTracking_0.10.0/Prebuilt samples/ViveHandTrackingSample_Win64/Sample_Data/Mono/libaristo_interfaceoutput_log.txt
DllNotFoundException: aristo_interface
  at (wrapper managed-to-native) ViveHandTracking.GestureInterface:UseExternalTransform (bool)
  at ViveHandTracking.ViveHandTrackingEngine+<Setup>c__Iterator0.MoveNext () [0x00000] in <filename unknown>:0 
  at UnityEngine.SetupCoroutine.InvokeMoveNext (IEnumerator enumerator, IntPtr returnValueAddress) [0x00000] in <filename unknown>:0 
 
(Filename:  Line: -1)

Setting up 3 worker threads for Enlighten.
  Thread -> id: 32ac -> priority: 1 
  Thread -> id: 45c -> priority: 1 
  Thread -> id: 2a24 -> priority: 1 
OpenVR Shutdown
 

Edited by WannerDev
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...