Posts: 4
Threads: 1
Joined: Jul 2022
Reputation:
0
Hi.
We are working with Obi rope in XR contexts so have to support multiple VR devices. Obi Rope has been great for the Oculus and we'd love to keep using it with HTC Focus 3.
The problem is that the libc++_shared.so DLL collides with one that's used by the HTC android platform, breaking the build.
Do you know a workaround or deconflicting method that would allow us to keep using it without having to roll our own inferior rope system? Any input at all is much appreciated.
- Dan
Posts: 6,333
Threads: 24
Joined: Jun 2017
Reputation:
400
Obi Owner:
19-07-2022, 09:31 AM
(This post was last modified: 19-07-2022, 09:32 AM by josemendez.)
(19-07-2022, 09:26 AM)Dan_Luminous Wrote: Hi.
We are working with Obi rope in XR contexts so have to support multiple VR devices. Obi Rope has been great for the Oculus and we'd love to keep using it with HTC Focus 3.
The problem is that the libc++_shared.so DLL collides with one that's used by the HTC android platform, breaking the build.
Do you know a workaround or deconflicting method that would allow us to keep using it without having to roll our own inferior rope system? Any input at all is much appreciated.
- Dan
Hi Dan,
If you're using the Burst backend (you really should since it's faster, plus the Oni backend got deprecated in 6.2), you can just get rid of the native plugins/libs. See: http://obi.virtualmethodstudio.com/manua...kends.html
kind regards,
Posts: 4
Threads: 1
Joined: Jul 2022
Reputation:
0
(19-07-2022, 09:31 AM)josemendez Wrote: Hi Dan,
If you're using the Burst backend (you really should since it's faster, plus the Oni backend got deprecated in 6.2), you can just get rid of the native plugins/libs. See: http://obi.virtualmethodstudio.com/manua...kends.html
kind regards, Thanks, Jose. Is it everything in the plugins directory that can go?
Posts: 6,333
Threads: 24
Joined: Jun 2017
Reputation:
400
Obi Owner:
(19-07-2022, 10:51 AM)Dan_Luminous Wrote: Thanks, Jose. Is it everything in the plugins directory that can go?
Yes, you can remove the entire /Plugins folder. Keep in mind though that if any solver has its backend set to Oni, or if the Burst dependencies are not installed (which will cause Obi to attempt to fallback to the Oni plugins) then the engine will no longer work.
Let me know if you encounter any issues along the way, I'll be glad to assist.
cheers,
Posts: 4
Threads: 1
Joined: Jul 2022
Reputation:
0
(19-07-2022, 10:54 AM)josemendez Wrote: Yes, you can remove the entire /Plugins folder. Keep in mind though that if any solver has its backend set to Oni, or if the Burst dependencies are not installed (which will cause Obi to attempt to fallback to the Oni plugins) then the engine will no longer work.
Let me know if you encounter any issues along the way, I'll be glad to assist.
cheers, Switched over to burst and installed burst package and deleted the libs. Was okay error wise getting rid of all except the x86-64 oni libs. When I force deleted them from file explorer I get dll not found: libOni in something to do with collision solving.
I assume this will happen in builds for other platforms than x84, I don't have the focus hardware on me right now to check though. (working from home and oculus more expensive than oculus). Presumably I'm missing a step or setting and it's falling back on the Oni dlls?
Daniel Korsah - XR Developer, Luminous Group
Posts: 6,333
Threads: 24
Joined: Jun 2017
Reputation:
400
Obi Owner:
19-07-2022, 02:22 PM
(This post was last modified: 19-07-2022, 02:22 PM by josemendez.)
(19-07-2022, 01:58 PM)Dan_Luminous Wrote: Switched over to burst and installed burst package and deleted the libs. Was okay error wise getting rid of all except the x86-64 oni libs. When I force deleted them from file explorer I get dll not found: libOni in something to do with collision solving.
I assume this will happen in builds for other platforms than x84, I don't have the focus hardware on me right now to check though. (working from home and oculus more expensive than oculus). Presumably I'm missing a step or setting and it's falling back on the Oni dlls?
Hi!
Could you share the exact dllnotfound exception you got? Also make sure of the following:
- Make sure the Burst backend is selected on all ObiSolver components.
- Make sure there's no warnings in the ObiSolver inspector (when it's falling back on the dlls, a warning will appear).
- Make sure there's no ObiProfiler components in your scene, as these are designed to profile the Oni backend and will make use of the dlls too.
Posts: 4
Threads: 1
Joined: Jul 2022
Reputation:
0
One of these once:
Code: DllNotFoundException: libOni
Obi.OniBackend.CreateSolver (Obi.ObiSolver solver, System.Int32 capacity) (at Assets/Obi/Scripts/Common/Backends/Oni/OniBackend.cs:17)
Obi.ObiSolver.Initialize () (at Assets/Obi/Scripts/Common/Solver/ObiSolver.cs:851)
Obi.ObiSolver.AddActor (Obi.ObiActor actor) (at Assets/Obi/Scripts/Common/Solver/ObiSolver.cs:1112)
Obi.ObiActor.AddToSolver () (at Assets/Obi/Scripts/Common/Actors/ObiActor.cs:348)
Obi.ObiActor.OnEnable () (at Assets/Obi/Scripts/Common/Actors/ObiActor.cs:323)
And this one ticking constantly:
Code: DllNotFoundException: libOni
Obi.OniColliderWorld.SetColliders (Obi.ObiNativeColliderShapeList shapes, Obi.ObiNativeAabbList bounds, Obi.ObiNativeAffineTransformList transforms, System.Int32 count) (at Assets/Obi/Scripts/Common/Backends/Oni/OniColliderWorld.cs:40)
Obi.ObiColliderWorld.UpdateWorld (System.Single deltaTime) (at Assets/Obi/Scripts/Common/Collisions/ObiColliderWorld.cs:388)
Obi.ObiUpdater.BeginStep (System.Single stepDeltaTime) (at Assets/Obi/Scripts/Common/Updaters/ObiUpdater.cs:56)
Obi.ObiFixedUpdater.FixedUpdate () (at Assets/Obi/Scripts/Common/Updaters/ObiFixedUpdater.cs:46)
Have this warning on the components but the Burst package is installed in my project.
Thanks for your time.
Daniel Korsah - XR Developer, Luminous Group
Posts: 6,333
Threads: 24
Joined: Jun 2017
Reputation:
400
Obi Owner:
19-07-2022, 03:23 PM
(This post was last modified: 19-07-2022, 03:24 PM by josemendez.)
It's definitely falling back to the dlls. The warning in the solver component only appears when the required packages are not installed, this is checked using version defines on the assembly definitions.
Make sure you've installed all required packages (not just the Burst package), and that their versions are above the minimum ones. See the manual:
http://obi.virtualmethodstudio.com/manua...html#burst
Quote:Using the Burst backend requires having the following Unity packages installed:
- Burst 1.3.3 or newer
- Collections 0.8.0-preview 5 or newer
- Mathematics 1.0.1 or newer
- Jobs 0.2.9-preview.15 or newer
Posts: 2
Threads: 0
Joined: Oct 2023
Reputation:
0
I am having the same issue although not the Vive SDK, but another plugin that has the same library embedded into it. I tried the method in this forum and while I am not getting any warning for Burst, it builds, but then crashes the app every time. Using Unity 2022.3.10.
Any ideas why it would keep crashing once switched correctly to Burst so I don't have this conflicting library?
Posts: 6,333
Threads: 24
Joined: Jun 2017
Reputation:
400
Obi Owner:
(18-10-2023, 04:02 PM)iiidefektiii Wrote: I am having the same issue although not the Vive SDK, but another plugin that has the same library embedded into it. I tried the method in this forum and while I am not getting any warning for Burst, it builds, but then crashes the app every time. Using Unity 2022.3.10.
Any ideas why it would keep crashing once switched correctly to Burst so I don't have this conflicting library?
Hi,
No idea, libc++_shared.so isn't used at all by Burst. Could you share your crash log, so that we may have some info about what's going on?
kind regards,
|