Comments (7)
Minimum repro:
https://gist.github.com/mdutton3/403fe508459ac4a2664b42f9e6d8873f
from osvr-rendermanager.
The HDKs are known to go AWOL after multiple DirectMode connections/disconnections. This may be taking the server down with it. Unplugging the HDK from wall, then HDMI, then USB and then plugging back in in the same order fixes things for me. Does this explain the behavior you are seeing?
This is a hardware/firmware issue that is being worked on.
from osvr-rendermanager.
@russell-taylor I have seen the HDK issue that you're describing and I think that this is separate. I'm using a custom OSVR device plugin for the HDK IMU that can handle the IMU coming and going. Even with that plugin, the RM starting and stopping will cause problems with the osvr_server. Once the problem presents, even a vanilla osvrClientInit
from another app will not be able to enumerate the path tree.
from osvr-rendermanager.
From a very cursory review of createRenderManager
, it doesn't look like osvrClientShutdown
is called anywhere (or anywhere else in OSVR-RenderManager). It isn't called if createRenderManager
early returns because it couldn't retrieve/parse config settings and it isn't called by the RenderManager destructor.
Some of this isn't terribly hard to fix (e.g. handling the early out) but I'm not sure what the life-cycle contract is when passing a context to the RM constructor. If the contract is that RM does not own the context but the context must out-survive the RM (which is what it looks like), then we have nowhere to store the context created in createRenderManager
.
If you have preference on the direction to take for this issue, I can kick out a pull request.
from osvr-rendermanager.
Well apparently someone already noticed this and had a @todo
in createRenderManager
for it. I overlooked it.
from osvr-rendermanager.
The RenderManager is going to need its own context. That context may be a clone of a parent context. For now, just assume it creates its own and manages destroying it, presumably in the destructor. Thanks for looking into this! Looking forward to the pull request.
from osvr-rendermanager.
I've pulled the create/destroy of the contexts into the constructor and destructor for the RenderManager, so it should be handled now as of commit 03a422d
from osvr-rendermanager.
Related Issues (20)
- ATW not operating as expected with example programs on DK2/GeForce 1080 HOT 10
- AMD sub-module no longer uses NDA s.d.k? HOT 2
- ATW: "bubbles" of missed vsyncs in D3D11 ATW implementation HOT 1
- expose an interface for detecting HDMI will be better... HOT 3
- distortion mesh with multiple video inputs HOT 10
- D3D11 backend appears to hard-depend on SDL in code, but not in build system HOT 1
- OSVR-Unity Android crash traces to RenderManagerOpenGL::checkShaderError HOT 2
- Direct Mode w/ DK1 results in [NVAPI_RESOURCE_NOT_ACQUIRED] after 12 seconds of rendering HOT 3
- Overfill factor and distortion correction HOT 2
- Check the distortion correction texture lookups HOT 1
- Why have the OpenGL rendering examples stopped working? HOT 4
- Why is there a band of black at the top of the display?
- Direct mode doesn't work with mobile Nvidia GPUs HOT 8
- cmake policy warning FindOpenGL
- When there is only one eye, don't offset it
- OpenGL state is not restored when using a single eye
- Rendering broken on a mac HOT 1
- Shared-context apps fail to get an OpenGL context when run on a mac HOT 2
- Add synchronization primitive to indicate to the app when buffer is complete
- Another source for Windows precompiled binaries ? HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from osvr-rendermanager.