44// ** Repository : https://github.com/LTMX/Unity.mathx
55#endregion
66
7- using UnityEngine ;
8-
97namespace Unity . Mathematics
108{
119 public partial class mathx
@@ -21,27 +19,20 @@ public static float4 movetowards(this float4 current, float4 target, float4 maxD
2119 public static float4 movetowards ( this float4 current , float4 target , float maxDistanceDelta )
2220 {
2321 var delta = target - current ;
24- var deltaLength = delta . length ( ) ;
25- return math . mad ( min ( deltaLength , maxDistanceDelta ) , sign ( delta ) , current ) ;
22+ return math . mad ( min ( abs ( delta ) , maxDistanceDelta ) , sign ( delta ) , current ) ;
2623 }
2724 /// <inheritdoc cref="movetowards(Mathematics.float4,Mathematics.float4,float)"/>
2825 public static float3 movetowards ( this float3 current , float3 target , float3 maxDistanceDelta )
2926 {
3027 var delta = target - current ;
31- return math . mad ( min ( abs ( delta ) , maxDistanceDelta ) , sign ( delta ) , current ) ;
28+ return math . mad ( min ( abs ( delta ) , maxDistanceDelta ) , sign ( delta ) , current ) ;
3229 }
3330 /// <inheritdoc cref="movetowards(Mathematics.float4,Mathematics.float4,float)"/>
3431 public static float3 movetowards ( this float3 current , float3 target , float maxDistanceDelta )
3532 {
36- return movetowards ( current , target , maxDistanceDelta ) ;
33+ var delta = target - current ;
34+ return math . mad ( min ( abs ( delta ) , maxDistanceDelta ) , sign ( delta ) , current ) ;
3735 }
38- // /// <inheritdoc cref="movetowards(Mathematics.float4,Mathematics.float4,float)"/>
39- // public static float2 movetowards(this float2 current, float2 target, float2 maxDistanceDelta)
40- // {
41- // var delta = target - current;
42- // var deltaLength = delta.length();
43- // return math.mad(min(deltaLength,maxDistanceDelta),sign(delta),current);
44- // }
4536 /// <inheritdoc cref="movetowards(Mathematics.float4,Mathematics.float4,float)"/>
4637 public static float2 movetowards ( this float2 current , float2 target , float2 maxDistanceDelta )
4738 {
@@ -52,8 +43,7 @@ public static float2 movetowards(this float2 current, float2 target, float2 maxD
5243 public static float2 movetowards ( this float2 current , float2 target , float maxDistanceDelta )
5344 {
5445 var delta = target - current ;
55- var deltaLength = delta . length ( ) ;
56- return math . mad ( min ( deltaLength , maxDistanceDelta ) , sign ( delta ) , current ) ;
46+ return math . mad ( min ( abs ( delta ) , maxDistanceDelta ) , sign ( delta ) , current ) ;
5747 }
5848 /// <inheritdoc cref="movetowards(Mathematics.float4,Mathematics.float4,float)"/>
5949 public static float movetowards ( this float current , float target , float maxDistanceDelta )
@@ -62,6 +52,7 @@ public static float movetowards(this float current, float target, float maxDista
6252 return math . mad ( min ( abs ( delta ) , maxDistanceDelta ) , sign ( delta ) , current ) ;
6353 }
6454
55+ // For Reference
6556 // float3 MoveTowards(float3 current, float3 target, float maxDistanceDelta)
6657 // {
6758 // float3 delta = target - current;
0 commit comments