I am old fan of OpenNI when there was no other readable frame work for using Kinect, and when OpenNI 2 released I was shocked by its nice new design and architect so I decided to give it a try as soon as I can. Fortunately I had access to it even more than two months before its public launch (thanks to PrimeSense for their trust) but first time I tried it seriously was with public release of OpenNI 2.
First thing I found very annoying was lake of .Net Wrapper so I wrote one my self named NiWrapper.Net to solve this problem. Then I tried to port my old 3D Photo Capture app using NiWrapper to OpenNI 2 and it was successful, you can download it from here. But now at last step I re-wrote my old Kinect Virtual Camera this time with OpenNI 2 Virtual Webcam name (aka NiVirtualCam). NiVirtualCam is actually a DirectShow filter and a C# server app that stream and send data to DirectShow filter. This way is very affective for streaming data to more than one application after new changes in OpenNI architect in version 2 which limits using of a device from multiple applications.