azure-kinect-unreal icon indicating copy to clipboard operation
azure-kinect-unreal copied to clipboard

Unreal freezes and becoming Non Responding when running on rtx 3090/3080/3070/3060

Open aylum123 opened this issue 2 years ago • 4 comments

Bug

As described in this issue https://github.com/microsoft/Azure-Kinect-Sensor-SDK/issues/1125 something in this plugin is not supported on nvidia rtx 30 series.

Solution - rebuild plugin with 1.1.0 sdk; how I did it:

(I read somewhere that v1.1.1 is "broken")

0. Set to windows PATH: C:\Program Files\Azure Kinect SDK v1.4.1\tools and C:\Program Files\Azure Kinect Body Tracking SDK\tools
1. Copy files from C:/Program Files/Azure Kinect Body Tracking SDK/tools to Plugins/AzureKinectUnreal/Binaries/Win64 as shown on Screenshot 1
2. Replace
    Plugins/AzureKinectUnreal/ThirdParty/AzureKinectBodyTracking/amd64/lib/k4abt.lib
    with
    C:\Program Files\Azure Kinect Body Tracking SDK/sdk/windows-desktop/amd64/release/lib/k4abt.lib
3. Replace
    Plugins/AzureKinectUnreal/ThirdParty/AzureKinectBodyTracking/include
    with
    C:/Program Files/Azure Kinect Body Tracking SDK/sdk/include
4. In file
    Plugins/AzureKinectUnreal/ThirdParty/AzureKinectBodyTracking/include/k4abttypes.h
    set "// default processing_mode for Windows" to
    K4ABT_TRACKER_PROCESSING_MODE_GPU_CUDA (instead of K4ABT_TRACKER_PROCESSING_MODE_GPU_DIRECTML)
5. Open unreal project from this repo in UE5, convert in place, go to plugins, choose AzureKinect plugin, and click package plugin, choose folder, close unreal. (You will also need vs studio 2019, with components as shown on picture bellow).
6. For some reason in your new plugin there is no folder called ThirdParty and in Binaries/Win64 thre is no needed binaries. So copy those files again
7. Now replace the old pugin with one you've built.
8. When shipping project, it throws error SECURE CRT: Invalid parameter detected. Add to every file (even .cpp) in your project #define _CRT_SECURE_NO_WARNINGS.
Every time you ship your project unreal wil generate some new files in AzueKinect plugin, so you will need to write #define _CRT_SECURE_NO_WARNINGS again. (For now I don't know how to specify this flag to compiler)

https://github.com/secretlocation/azure-kinect-unreal/issues/16

0.

image

1.

image

4.

image

5.

image

Also I tested if kinect works at all on rtx 3090 with Unity project https://github.com/microsoft/Azure-Kinect-Samples/tree/master/body-tracking-samples/sample_unity_bodytracking (open uinty project, open any script in vs studio, install via nuget azure kinect body tracking sdk v1.1.0, close everything, run MoveLibraryFiles.bat) (video https://docs.microsoft.com/en-us/shows/mixed-reality/azure-kinect-body-tracking-unity-integration)

SDK and UE5 versions

UE5 Azure Kinect AK Body Tracking
5.0.2 1.4.1 1.1.0

aylum123 avatar Jun 06 '22 13:06 aylum123

Can confirm this works

UE5 Azure Kinect AK Body Tracking
5.0.2 1.4.1 1.1.0

RTX 3070ti

BigSadge avatar Jun 09 '22 23:06 BigSadge

Thank you for your detailed explanation! I could finally open unreal project file in UE5 but even after closing unreal engine, I can see third party folder and binaries/win64 folder in the new plugin folder. Do you have any idea for this error?

Ooon-x avatar Jun 17 '22 11:06 Ooon-x

Just want to confirm that these steps got Kinect working for me with:

UE5 Azure Kinect AK Body Tracking GPU GPU driver
5.0.2 1.4.1 1.1.2 RTX 2080TI 516.94
5.0.3 1.4.1 1.1.2 RTX 3070 516.94

On the second pc with the 3070, I ran a copy of the upgraded project and did not need Azure Kinect SDK v1.4.1\tools in path.

I assume 1.1.2 has some improved driver compatibility, looking at these docs.

timbotimbo avatar Aug 17 '22 10:08 timbotimbo

Could you explain your steps and process because I am unable to get this running properly in UE5, following all of the steps here.

The plugins always say they have modules missing or need to be rebuilt.

BaazarStudios avatar Aug 20 '22 01:08 BaazarStudios