I need to get the angle between the direction ball **A** is moving and Ball **B** on the x and z axis. Also i am using Unity Netcode (idk if it makes a difference or not)

so far i have tried to get i with 3 points

**A***-ball A position*,

**B***-ball B position*,

**C***-ball A position on last frame*.

i’ve tried

```
float angle = Mathf.Atan2(B.y - A.y, B.x - A.x) - Mathf.Atan2(A.y - C.y, A.x - C.x);
```

and it gave me an angle but it was nowhere close to what it should have been. Then i copied some Acos code off of here but that didn’t work ither.

```
float dot = C.x * B.x + C.y * B.y;
float angle = Mathf.Acos(dot);
```

then i tried Vector3.Angle and it sometimes worked but sometimes it didn’t.

```
float angle = Vector3.Angle(B, C);
```

plz help, i’m new to this.

### >Solution :

`A`

, `B`

and `C`

are not vectors, they are points. If you want to compute the angle between two vectors, you should use `B - A`

and `A - C`

.

```
float angle = Vector3.Angle(B - A, A - C);
```