I'm having a few issues integrating a SpaceNavigator with Cinder (https://libcinder.org/). First, using the driver seems to take over the application's update loop. I'm not super familiar with Windows application programming, so I can't say for sure what's causing it, but it happens once I call this: https://github.com/heisters/Cinder-3DCo ... n.cpp#L122
Additionally, initializing the mouse seems to prevent the application from receiving a keyboard event when the Escape key is pressed. Other keys work ok, but I haven't tested them all.
Lastly, I can't seem to find a way to disable the driver-implemented button behaviors so that I can handle button presses in the application. The event handling code never seems to get a button event https://github.com/heisters/Cinder-3DCo ... n.cpp#L150, and pressing the button causes a radial menu to open. I tried reassigning the buttons using
Code: Select all
SiSyncSetButtonAssignment( mHandle, bt, 0 /* the button event is to be passed straight thru */ );
I'm guessing a lot of these issues are related. I'd love to find a way to integrate the device in a manner that is consistent with other Cinder device integrations. Unfortunately, I'm having trouble finding documentation on doing this kind of thing.