Hi,
I've got a very weird effect on an Intel NUC with i7 5557U @3.10GHz with Iris 6100 Broadwell GT3, running Windows 8.1 64 bit.
I programmed a C++ application with Orion beta 3.1.3 (Leap firmware is 1.7, "automatic power saving" is turned off, "allow background apps" is turned on), reading hand data and sending it via UDP to a Unity3D application. For isolating the issue, I removed all the sending/receiving, what I'm left so far is a C++ application trying to read hand data 60 times per second, and an empty Unity application, doing nothing but rendering a 3D cube. The observations are as follows: When I run the C++ application, everything is fine, it grabs 60 frames per second from the Leap, no matter if there are hands visible or not. The internal Leap framerate as reported from the controller is about 115 fps. The CPU load of the LeapSvc64.exe is about 15%. As soon as I start the Unity application (note that there is absolutely no interaction going on between those two, as I removed all the UDP stuff), the framerates remains the same at first. When I move a hand into the Leap frustum, the internal framerate drops to about 100 fps, while the C++ application stops receiving new frames via Leap::Controller::frame(). LeapSvc64.exe consumes up to 55% of CPU now, while the frames returned all have the same IDs -- there are no new frames. The rate of new frames returned this way drops after about three seconds to 0 fps, I get a few new (like three) new frames every 10 to 20 seconds or so. Leap::Controller::Frame::currentFramesPerSecond() returns about 100 (but I suppose this is not an up-to-date value as the related frame instance is not updated, i.e. it keeps its ID throughout the whole time). As soon as I close the Unity application, everything is back to normal. It gets even weirder: When I resize the Unity window down to below about 1500 px window width, everything works fine. When I resize it up again, the framerate is back at 0. What's also strange is that the Leap Diagnostic Visualizer does not show this behaviour, the hands are tracked smoothly all the time.
I must say I'm clueless. Does anybody have an explaination or even the remotest idea what could cause this behaviour and how I could avoid it? Are there any GPU ressources LeapMotion service and Unity renderer have to share that may cause this behaviour? Any suggestions are highly appreciated.