// -------------------------------------------------------------------------------------------------------------------- // // Copyright (c) VRMADA, All rights reserved. // // -------------------------------------------------------------------------------------------------------------------- using UltimateXR.Devices; namespace UltimateXR.Avatar.Controllers { public sealed partial class UxrStandardAvatarController { #region Private Types & Data /// /// Stores relevant information of a hand required by the at runtime. /// private class HandInfo { #region Public Types & Data /// /// Gets or sets the index of the grab animation event. That is, the event whose animation is /// / . /// public int GrabEventIndex { get; set; } /// /// Gets or sets the hand pose name of at the beginning. /// public string InitialHandGrabPoseName { get; set; } /// /// Gets or sets the required to activate the /// at the beginning. /// public UxrInputButtons InitialHandGrabButtons { get; set; } /// /// Gets or sets whether the hand is currently grabbing. /// public bool IsGrabbing { get; set; } /// /// Gets or sets whether the hand is currently pointing. /// public bool IsPointing { get; set; } /// /// Gets or sets whether the hand has currently a finger tip inside a . /// public bool IsInsideFingerPointingVolume { get; set; } /// /// Gets or sets whether the hand was grabbing last frame. /// public bool WasGrabbingLastFrame { get; set; } /// /// Gets or sets whether the hand was pointing last frame. /// public bool WasPointingLastFrame { get; set; } /// /// Gets or sets whether the hand should be let grab again. Used to control grab/release. /// public bool LetGrabAgain { get; set; } /// /// Gets or sets the value between range [0.0, 1.0] that controls the grab pose blending. /// public float GrabBlendValue { get; set; } #endregion } #endregion } }