Open JeroMiya opened 8 years ago
Is there any progress with this? Has anything superseded Managed-OSVR, or is it just a dead project and there are no current .NET bindings for OSVR if you want to use direct mode?
Managed-OSVR isn't a dead project - it's used in the actively maintained OSVR-Unity plugin. It is, however, still missing osvrRenderManager
bindings (either OpenGL or Direct3D). OSVR-Unity uses its own native Renderer plugin system for interacting with osvrRenderManager
so managed bindings haven't been a big priority (for us at least). The other items in this list are technical debt, but not necessarily high priority. Most of the core API is still good enough.
If you still have requirements for using osvrRenderManager
in a non-Unity application using Managed-OSVR, my recommendation at this point would be to create your own thin native code library that manages rendering, with some simple P/Invoke bindings you can access from your managed application. This is similar to what we do for OSVR-Unity.
The Managed-OSVR library was originally created as a quick means to get Unity support. There are a few things I'd like to refactor, but can't due to backward compatibility.
So, I'm suggesting we can start fresh with a new library, keeping the current code in maintenance mode for compatibility. With the new library, we can apply the following major changes:
OSVR.ClientKit
for both client kit and osvr util functions.OSVR
for top-level classes (not specific to any given OSVR-Core library)OSVR.ClientKit
to be used ONLY for bindings within the actualosvrClientKit
dll/lib.OSVR.Util
to be used for bindings within theosvrUtil
DLL/lib.IntPtr
data elements in custom callbacks).DisplayConfig
API should result in an object tree instead of a flat API that mirrors the C API (which is just a flattening of the corresponding internal hierarchical structure).osvrClientKit
library.The new library would be separate, and renamed to avoid conflicts. Possible names: