4
4
// ** Repository : https://github.com/LTMX/Unity.mathx
5
5
#endregion
6
6
7
- using UnityEngine ;
8
-
9
7
namespace Unity . Mathematics
10
8
{
11
9
public partial class mathx
@@ -21,27 +19,20 @@ public static float4 movetowards(this float4 current, float4 target, float4 maxD
21
19
public static float4 movetowards ( this float4 current , float4 target , float maxDistanceDelta )
22
20
{
23
21
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 ) ;
26
23
}
27
24
/// <inheritdoc cref="movetowards(Mathematics.float4,Mathematics.float4,float)"/>
28
25
public static float3 movetowards ( this float3 current , float3 target , float3 maxDistanceDelta )
29
26
{
30
27
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 ) ;
32
29
}
33
30
/// <inheritdoc cref="movetowards(Mathematics.float4,Mathematics.float4,float)"/>
34
31
public static float3 movetowards ( this float3 current , float3 target , float maxDistanceDelta )
35
32
{
36
- return movetowards ( current , target , maxDistanceDelta ) ;
33
+ var delta = target - current ;
34
+ return math . mad ( min ( abs ( delta ) , maxDistanceDelta ) , sign ( delta ) , current ) ;
37
35
}
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
- // }
45
36
/// <inheritdoc cref="movetowards(Mathematics.float4,Mathematics.float4,float)"/>
46
37
public static float2 movetowards ( this float2 current , float2 target , float2 maxDistanceDelta )
47
38
{
@@ -52,8 +43,7 @@ public static float2 movetowards(this float2 current, float2 target, float2 maxD
52
43
public static float2 movetowards ( this float2 current , float2 target , float maxDistanceDelta )
53
44
{
54
45
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 ) ;
57
47
}
58
48
/// <inheritdoc cref="movetowards(Mathematics.float4,Mathematics.float4,float)"/>
59
49
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
62
52
return math . mad ( min ( abs ( delta ) , maxDistanceDelta ) , sign ( delta ) , current ) ;
63
53
}
64
54
55
+ // For Reference
65
56
// float3 MoveTowards(float3 current, float3 target, float maxDistanceDelta)
66
57
// {
67
58
// float3 delta = target - current;
0 commit comments