Fixed orbit orientations

This commit is contained in:
Nick 2022-05-01 01:43:52 -04:00
parent 6b07ee8bf3
commit 98b2097091

View File

@ -106,11 +106,10 @@ namespace NewHorizons.Components.Orbital
public static Vector3 Rotate(Vector3 vector, float longitudeOfAscendingNode, float inclination, float argumentOfPeriapsis) public static Vector3 Rotate(Vector3 vector, float longitudeOfAscendingNode, float inclination, float argumentOfPeriapsis)
{ {
var R1 = Quaternion.AngleAxis(longitudeOfAscendingNode, Vector3.up); var R1 = Quaternion.AngleAxis(longitudeOfAscendingNode + argumentOfPeriapsis, Vector3.up);
var R2 = Quaternion.AngleAxis(inclination, Vector3.forward); var R2 = Quaternion.AngleAxis(inclination, R1 * Vector3.left);
var R3 = Quaternion.AngleAxis(argumentOfPeriapsis, Vector3.up);
return R1 * R2 * R3 * vector; return R1 * R2 * vector;
} }
} }
} }