public HandGraph GetHandInfo() { HandGraph handGraph = new HandGraph(); NetworkHandInfo.UpdateHandGraph(ref handGraph); return(handGraph); }
public void CmdUpdateHand(HandGraph handGraph) { if (!HandSceneGraphs.ContainsKey(handGraph.HandID)) { HandGraph hg = new HandGraph(); hg.SetHandGraphInfo(handGraph); if (SubscribedSyncHands.ContainsKey(handGraph.HandID)) { SubscribedSyncHands[handGraph.HandID].UpdateHand(handGraph); } else { Debug.LogError("Couldn't find HandID: " + handGraph.HandID); } HandSceneGraphs.Add(handGraph.HandID, handGraph); } else { HandGraph hg = HandSceneGraphs[handGraph.HandID]; hg.SetHandGraphInfo(handGraph); if (SubscribedSyncHands.ContainsKey(handGraph.HandID)) { SubscribedSyncHands[handGraph.HandID].UpdateHand(handGraph); } else { Debug.LogError("Couldn't find HandID: " + handGraph.HandID); } HandSceneGraphs[handGraph.HandID] = hg;//(handGraph.HandID,handGraph); } }
public void SetHandGraphInfo(HandGraph info) { IndexFinger.SetFingerInfo(info.IndexFinger); MiddleFinger.SetFingerInfo(info.MiddleFinger); RingFinger.SetFingerInfo(info.RingFinger); PinkyFinger.SetFingerInfo(info.PinkyFinger); Thumb.SetFingerInfo(info.Thumb); Palm.UpdateTransform(info.Palm); }
public void UpdateHand(HandGraph handGraph, SceneGraphPoseSyncType syncType, float speedModifier, float rotationModifier) { IndexFinger.UpdateFinger(handGraph.IndexFinger, syncType, speedModifier, rotationModifier); MiddleFinger.UpdateFinger(handGraph.MiddleFinger, syncType, speedModifier, rotationModifier); RingFinger.UpdateFinger(handGraph.RingFinger, syncType, speedModifier, rotationModifier); PinkyFinger.UpdateFinger(handGraph.PinkyFinger, syncType, speedModifier, rotationModifier); Thumb.UpdateFinger(handGraph.Thumb, syncType, speedModifier, rotationModifier); handGraph.Palm.UpdateTransform(Palm, syncType, speedModifier, rotationModifier); }
public void UpdateHandGraph(ref HandGraph handGraph) { handGraph.Palm.localPosition = Palm.localPosition; handGraph.Palm.localRotation = Palm.localRotation; IndexFinger.UpdateFinger(ref handGraph.IndexFinger); MiddleFinger.UpdateFinger(ref handGraph.MiddleFinger); RingFinger.UpdateFinger(ref handGraph.RingFinger); PinkyFinger.UpdateFinger(ref handGraph.PinkyFinger); Thumb.UpdateFinger(ref handGraph.Thumb); }
// Update is called once per frame public void UpdateHand(HandGraph info) { myHandGraph = info; isNetworkSync = true; GetComponent <Leap.Unity.RiggedHand>().enabled = false; }
void OnHandGraphChange(SyncDictionary <int, HandGraph> .Operation op, int itemIndex, HandGraph newItem) { if (op == SyncDictionary <int, HandGraph> .Operation.OP_SET || op == SyncDictionary <int, HandGraph> .Operation.OP_ADD) { if (!isLocalPlayer) { if (SubscribedSyncHands.ContainsKey(newItem.HandID)) { SubscribedSyncHands[newItem.HandID].UpdateHand(newItem); } else { Debug.LogError("Couldn't find Hand ID: " + newItem.HandID); } } } }