Files
UE_SpaceStudio/SpaceStudioClient/Plugins/NeoKinectUnreal/Source/NeoKinectUnreal/Public/NeoKinectEnums.h
T

135 lines
4.1 KiB
C

// Copyright 2015-2023 Rodrigo Villani Pereira
#pragma once
#include "CoreMinimal.h"
#include "NeoKinectEnums.generated.h"
/**
* The types of frames that can be read from the Kinect sensor.
*/
UENUM(BlueprintType, Category = "NeoKinect|Enums")
enum class EKinectFrame : uint8
{
/** Normal camera texture. Standard RGBA format (alpha = 1) */
Color = 0,
/** Depth sensor texture. Red channel only. Values are in millimeters */
Depth = 1,
/** Depth sensor ranging from 0 to 1. Standard RGBA format (alpha = 1) */
NormalizedDepth = 2,
/** Body index value in Red channel. In material editor, multiply Red by 255
* to get actual index value (0~5) */
BodyIndex = 3,
/** Body indexes with a color for each index. Standard RGBA format.
* Alpha = 1 where there's a body, 0 otherwise */
BodyIndexColor = 4 UMETA(DisplayName = "Colored Body Index"),
/** Not implemented */
Color_DepthSpace = 5 UMETA(DisplayName = "Color in Depth Space"),
/** Depth sensor image remapped to fit the color frame. Red channel only.
* Values in millimeters, 0 where remapping is not possible. */
Depth_ColorSpace = 6 UMETA(DisplayName = "Depth in Color Space"),
/** Body index values remapped to fit the bodies in the color frame.
* Red channel only. In material editor, multiply Red by 255 to get actual
* index value (0~5). */
BodyIndex_ColorSpace= 7 UMETA(DisplayName = "Body Index in Color Space"),
/** Infrared sensor image. Red channel only, usually very dark. */
Infrared = 8,
/** Long exposure infrared sensor image. Red channel only. Can lower the
* sensor's FPS to get brighter image */
LongExposureInfrared= 9,
/** Cast to int to get the number of frame types */
Count = 10
};
/**
* Body sides.
*/
UENUM(BlueprintType, Category = "NeoKinect|Enums")
enum class EKinectBodySide : uint8
{
Left = 0,
Right = 1
};
/**
* Possible hand states
*/
UENUM(BlueprintType, Category = "NeoKinect|Enums")
enum class EKinectHandState : uint8
{
/** Pretty close to NotTracked. */
Unknown = 0,
NotTracked = 1,
Open = 2,
Closed = 3,
/** Closed hand with index and middle fingers pointing up, near each other */
Lasso = 4
};
/**
* Tracking confidence.
*/
UENUM(BlueprintType, Category = "NeoKinect|Enums")
enum class EKinectTrackingState : uint8
{
NotTracked = 0,
/** Tracked by deduction. Sometimes good, many times terrible. */
Inferred = 1,
Tracked = 2
};
/**
* The joints that the Kinect sensor tracks on each body. 25 total.
*/
UENUM(BlueprintType, Category = "NeoKinect|Enums")
enum class EKinectJointType : uint8
{
/** Near the pelvis */
SpineBase = 0,
/** Near the stomach */
SpineMid = 1 UMETA(DisplayName = "Spine Middle"),
Neck = 2,
Head = 3,
ShoulderLeft = 4 UMETA(DisplayName = "Left Shoulder"),
ElbowLeft = 5 UMETA(DisplayName = "Left Elbow"),
WristLeft = 6 UMETA(DisplayName = "Left Wrist"),
/** In the palm center */
HandLeft = 7 UMETA(DisplayName = "Left Hand"),
ShoulderRight = 8 UMETA(DisplayName = "Right Shoulder"),
ElbowRight = 9 UMETA(DisplayName = "Right Elbow"),
WristRight = 10 UMETA(DisplayName = "Right Wrist"),
/** In the palm center */
HandRight = 11 UMETA(DisplayName = "Right Hand"),
/** Femur/Hip joint */
HipLeft = 12 UMETA(DisplayName = "Left Hip"),
KneeLeft = 13 UMETA(DisplayName = "Left Knee"),
AnkleLeft = 14 UMETA(DisplayName = "Left Ankle"),
/** Tip of the foot */
FootLeft = 15 UMETA(DisplayName = "Left Foot"),
/** Femur/Hip joint */
HipRight = 16 UMETA(DisplayName = "Right Hip"),
KneeRight = 17 UMETA(DisplayName = "Right Knee"),
AnkleRight = 18 UMETA(DisplayName = "Right Ankle"),
/** Tip of the foot */
FootRight = 19 UMETA(DisplayName = "Right Foot"),
/** Between the collar bones */
SpineShoulder = 20,
HandTipLeft = 21 UMETA(DisplayName = "Left Hand Tip"),
ThumbLeft = 22 UMETA(DisplayName = "Left Thumb"),
HandTipRight = 23 UMETA(DisplayName = "Right Hand Tip"),
ThumbRight = 24 UMETA(DisplayName = "Right Thumb")
};
/**
* Face properties detection results
*/
UENUM(BlueprintType, Category = "NeoKinect|Enums")
enum class EDetectionResult : uint8
{
Unknown = 0,
No = 1,
/** Consider it more as a "No" */
Maybe = 2,
Yes = 3
};