public override bool GetClosestPoint(Vector3 position, ref Vector3 closestPoint) { bool canApplyGravity = true; closestPoint = SphereHalf.GetClosestPoint(position); if (canApplyGravity) { closestPoint = ExtMovableShapeAdvanced.GetRightPosWithRange(position, closestPoint, _radiusMin, _radiusMax, out bool outOfRange); if (outOfRange) { canApplyGravity = false; } } return(canApplyGravity); }
public override void Draw() { SphereHalf.Draw(base.GetColor()); if (!_drawRadius) { return; } if (_radiusMin > 0) { SphereHalf.DrawWithExtraRadius(Color.gray, _radiusMin); } if (_radiusMax > 0) { SphereHalf.DrawWithExtraRadius(Color.red, _radiusMax); } }