Azure Kinect Examples for Unity, v1.12.1 (also available in Unity Asset store) is a set of Azure Kinect (aka ‘Kinect for Azure’, K4A) examples that use several major scripts, grouped in one folder. The package currently contains over thirty demo scenes. Apart of the Azure Kinect sensor (aka K4A), the K4A-package supports the “classic” Kinect-v2 (aka Kinect for Xbox One) sensor, as well as Intel RealSense D400-series sensors.
The avatar-demo scenes show how to utilize Kinect-controlled avatars in your scenes, gesture demo – how to use discrete and continuous gestures in your projects, fitting room demos – how to overlay or blend the user’s body with virtual models, background removal demo – how to display user silhouettes on virtual background, point cloud demos – how to show the real environment or users as meshes in your scene, etc. Short descriptions of all demo-scenes are available in the online documentation.
This package works with Azure Kinect (aka Kinect for Azure, K4A), Kinect-v2 (aka Kinect for Xbox One) and Intel RealSense D400-series sensors. It can be used with all versions of Unity – Free, Plus & Pro. Please note, the body tracking demo scenes don’t work with Intel RealSense D400-series sensors.
How to run the demo scenes:
1. (Azure Kinect) Download and install the latest release of Azure-Kinect Sensor SDK. The download link is below. Then open ‘Azure Kinect Viewer’ to check, if the sensor works as expected.
2. (Azure Kinect) Follow the instructions on how to download and install the latest release of Azure-Kinect Body Tracking SDK and its related components. The link is below. Then open ‘Azure Kinect Body Tracking Viewer’ to check, if the body tracker works as expected.
3. (Kinect-v2) Download and install Kinect for Windows SDK 2.0. The download link is below.
4. (RealSense) Download and install RealSense SDK 2.0. The download link is below.
5. Import this package into a new Unity project.
6. Open ‘File / Build settings’ and switch to ‘PC, Mac & Linux Standalone’, Target platform: ‘Windows’ & Architecture: ‘x86_64’.
7. Make sure that ‘Direct3D11’ is the first option in the ‘Auto Graphics API for Windows’-list setting, in ‘Player Settings / Other Settings / Rendering’.
8. Open and run a demo scene of your choice from a subfolder of the ‘AzureKinectExamples/KinectDemos’-folder. Short descriptions of all demo-scenes are available in the online documentation.
* The latest Azure Kinect Sensor SDK (v1.4.0) can be found here.
* The latest Azure Kinect Body Tracking SDK (v1.0.1) can be found here.
* Older releases of Azure Kinect Body Tracking SDK can be found here.
* Instructions how to install the body tracking SDK can be found here.
Please purchase the package at one of the following stores. In this case all future updates will be available to you, free of any charge:
* The K4A-asset may be purchased and downloaded in my online store.
* It may be purchased and downloaded in Unity Asset store, as well.
* If you’d like to try the free version of the K4A-asset, you can find it here.
* The basic documentation is in the Readme-pdf file, in the package.
* The K4A-asset online documentation is available here.
* Many K4A-package tips, tricks and examples are available here.
* If Unity editor freezes or crashes at the scene start, please make sure the path where the Unity project resides does not contain any non-English characters. If it does, please create a new folder and new Unity project with only English characters in their names, import the K4A-asset and then try again.
* If you get syntax errors in console like “The type or namespace name ‘UI’ does not exist…”, please open the Package manager (menu Window / Package Manager) and install the ‘Unity UI’ package. The UI elements are extensively used in the K4A-asset demo scenes. Recently, for unknown reasons, Unity has decided to remove core packages (like the UI-package) from the standard distributions.
* If you get “‘KinectInterop.DepthSensorPlatform’ does not contain a definition for ‘DummyK2′” in the console, please delete ‘DummyK2Interface.cs’ from the KinectScripts/Interfaces-folder. This dummy interface is replaced now with DummyK4AInterface.cs.
* If the Azure Kinect sensor cannot be started, because StartCameras()-method fails, please check again #6 in ‘How to run the demo scenes‘-section above.
* If you get a ‘Can’t create the body tracker’-error message, please check again #2 in ‘How to run the demo scenes‘-section above. Check also, if the Body Tracking SDK is installed into its by-default folder.
* If the body tracking stops working at run-time or the Unity editor crashes without notice, update to the latest version of the Body tracking SDK. This is a known bug in BT SDK v0.9.0.
* The RealSense-interface is still in experimental state. Known issues are that depth and color frames are out of sync, and the body tracking doesn’t work with RealSense D400 sensors.
* If there are errors like ‘Shader error in [System 1]…’, while importing the K4A-asset, please note this is not really an error, but shader issues due to missing HDRP & VFX packages. You only need these packages for the Point-cloud demo. All other scenes should be started without any issues.
* If there are compilation errors in the console, or the demo scenes remain in ‘Waiting for users’-state, make sure you have installed the respective sensor SDKs and the other needed components. Please also check, if the sensor is connected.
What’s New in Version 1.12.x:
1. Added two green-screen demo scenes and related components, to provide better background segmentation, with volumetric blending and lighting options (thanks to Clyde DeSouza).
2. Added ‘Horizontal movement’-setting to the AvatarController-component, to allow in-place avatar movements (thanks to Lawrence Horwitz).
3. Added HmdHeadMover-component, to allow HMD-controlled avatar movement on VR platforms (thanks to Miguel Angel Cienfuegos Tellez).
4. Added optional frame synchronization between the master and subordinate K4A-devices.
5. Added ‘Use synchronized samples’-option to the MultiCameraSetup-component, to allow camera pose estimation on synchronized frames (thanks to Jesse Kirberger).
6. Added MoveLeft & MoveRight gestures (thanks to Indra Adi D. C).
7. Updated most of the scene materials to support HDRP. Some custom shaders may still not work.
8. Updated SimpleHoloCamera-component to respect the camera pose (thanks to Ajay Kumar).
9. Fixed cursor position issue in the MouseControl-component (thanks to Fedor Savchenko).
10. Fixed canvas scaling issue in the InteractionManager-component (thanks to Raymond Tsang).
11. (1.12.1) Fixed the reported issues in v1.12 and improved the multi-camera setup.