private void MoveObject(HandyGripObject hgo) { var midpoint = 0.5f * (_thumb.GetTip().transform.position + _fingers[0].GetTip().transform.position); hgo.SetGrabPosition(midpoint); var targetDirection = (_fingers[0].GetTip().transform.position - _thumb.GetTip().transform.position).normalized; hgo.SetGrabRotation(targetDirection); }
private void FixedUpdate() { if (AreObjectsWithinGrasp()) { _currentlyCollidedObject = SetObjectCollision(); } else { _currentlyCollidedObject = null; } UpdatePotentiallyGrabbableSet(); }
private void FixedUpdate() { var thumbColl = _thumb.GetTip().GetCurrentCollidedObject(); var indexColl = _fingers[0].GetTip().GetCurrentCollidedObject(); if ((!thumbColl || !indexColl) || thumbColl != indexColl) { if (_lastHeldObject) { _lastHeldObject.ReleaseObject(); } _lastHeldObject = null; return; } MoveObject(thumbColl); _lastHeldObject = thumbColl; }
public void AddRecord(HandyGripObject hgo, HandyHitInfo hhi) { objectsWithinGrasp.Add(hgo); hitInfos.Add(hhi); }
public void OnCollisionExit(Collision other) { _currentlyCollidedObject = null; }