Skip to content

General‐purpose components

Rumen Filkov edited this page Jan 31, 2024 · 1 revision

Short descriptions of the general-purpose components

Here are the short descriptions of the general-purpose components. Please note, all Kinect-related components need the KinectManager-component in the scene, as well. The KinectManager persists across the scenes. To avoid having multiple KinectManager instances in the scene, see 'Howto-Use-KinectManager-Across-Multiple-Scenes.pdf'-manual in the _Readme-folder of the K2-asset.

Component Description
AvatarController AvatarController is the component that transfers the Kinect-captured user motion to the humanoid model, whose component it is.
AvatarControllerClassic AvatarControllerClassic is an alternative of the AvatarController-component, and allows manual mapping of the model's joints to the body joints, tracked by the sensor.
AvatarScaler AvatarScaler is the component that scales the humanoid model's body, according to the body dimensions of the tracked user.
. .
BackgroundColorImage BackgroundColorImage is component that displays the color camera feed on GUI texture, usually used as scene background.
BackgroundDepthImage BackgroundDepthImage is component that displays the depth camera image on GUI texture, usually used as scene background.
BackgroundRemovalManager BackgroundRemovalManager is component that controls the Kinect background removal functionality, i.e. rendering the selected user bodies on transparent background.
. .
BodySlicer Body slicer is component that estimates the user height, as well as several other body measures, from the depth image data.
FacetrackingManager FaceTrackingManager is the component that controls the head and face tracking of the tracked users.
HeadMover Head mover is a component that tries to move the avatar, according to the user's head position.
. .
InteractionInputModule InteractionInputModule is the input module component that may be added as component to the EventSystem-game object. In combination with the InteractionManager-component it provides mouse-like interaction with the Unity UI elements.
InteractionManager InteractionManager is component that controls the hand cursor and tracks the hand interactions of the tracked user, in means of hand grips and releases.
. .
KinectGestures KinectGestures is the component that manages and detects all programmatic gestures, performed by the tracked users. If you have one or more gesture listeners in the scene, don't forget to add the KinectGestures-component too, in order to detect the user gestures.
KinectManager KinectManager is the main and the most basic Kinect-related component. It controls the sensor and polls the data streams. All other components rely on the data provided by the KinectManager-component.
KinectRecorderPlayer KinectRecorderPlayer is a component that provides API to record and replay previously recorded body-frame data files.
. .
PortraitBackground PortraitBackground is component that, when added to color background image and enabled, sets it to display in portrait mode (9:16 instead of 16:9). The aspect ratio of the game view should be changed as well, to 9:16 for Kinect-v2 or 3:4 for Kinect-v1.
SpeechManager SpeechManager is the component that controls the Kinect speech recognition, provides the needed API to check for the detected voice commands, and invokes the available speech listeners in the scene, when a voice command gets recognized.
VisualGestureManager VisualGestureManager is the component that controls the detection of the visual (VGB) gestures. It invokes the available visual gesture listeners in the scene, when a visual gesture gets detected.
. .