/// <summary>
        /// Constructor.
        /// </summary>
        public WindowsMixedRealityArticulatedHand(TrackingState trackingState, Handedness controllerHandedness, IMixedRealityInputSource inputSource = null, MixedRealityInteractionMapping[] interactions = null)
            : base(trackingState, controllerHandedness, inputSource, interactions)
        {
            handDefinition = new WindowsMixedRealityArticulatedHandDefinition(inputSource, controllerHandedness);
#if (UNITY_WSA && DOTNETWINRT_PRESENT) || WINDOWS_UWP
            articulatedHandApiAvailable = ApiInformation.IsMethodPresent("Windows.UI.Input.Spatial.SpatialInteractionSourceState", "TryGetHandPose");
#endif
        }
 /// <summary>
 /// Constructor.
 /// </summary>
 public WindowsMixedRealityArticulatedHand(TrackingState trackingState, Handedness controllerHandedness, IMixedRealityInputSource inputSource = null, MixedRealityInteractionMapping[] interactions = null)
     : base(trackingState, controllerHandedness, inputSource, interactions)
 {
     handDefinition = new WindowsMixedRealityArticulatedHandDefinition(inputSource, controllerHandedness);
     articulatedHandApiAvailable = WindowsApiChecker.IsMethodAvailable(
         "Windows.UI.Input.Spatial",
         "SpatialInteractionSourceState",
         "TryGetHandPose");
 }
 /// <summary>
 /// Constructor.
 /// </summary>
 public WindowsMixedRealityXRSDKArticulatedHand(TrackingState trackingState, Handedness controllerHandedness, IMixedRealityInputSource inputSource = null, MixedRealityInteractionMapping[] interactions = null)
     : base(trackingState, controllerHandedness, inputSource, interactions)
 {
     handDefinition = new WindowsMixedRealityArticulatedHandDefinition(inputSource, controllerHandedness);
 }