mirror of
https://github.com/Outer-Wilds-New-Horizons/new-horizons.git
synced 2025-12-11 20:15:44 +01:00
Fix longitude of ascending node (orbits and rings)
This commit is contained in:
parent
b0e93ab8e9
commit
b1e66f14fb
@ -42,7 +42,7 @@ namespace NewHorizons.Builder.Body
|
||||
ringGO.transform.position = planetGO.transform.position;
|
||||
ringGO.transform.rotation = planetGO.transform.rotation;
|
||||
ringGO.transform.Rotate(ringGO.transform.TransformDirection(Vector3.up), ring.LongitudeOfAscendingNode);
|
||||
ringGO.transform.Rotate(ringGO.transform.TransformDirection(Vector3.right), ring.Inclination);
|
||||
ringGO.transform.Rotate(ringGO.transform.TransformDirection(Vector3.left), ring.Inclination);
|
||||
|
||||
var ringMF = ringGO.AddComponent<MeshFilter>();
|
||||
var ringMesh = ringMF.mesh;
|
||||
|
||||
@ -107,10 +107,11 @@ namespace NewHorizons.Components.Orbital
|
||||
|
||||
public static Vector3 Rotate(Vector3 vector, float longitudeOfAscendingNode, float inclination, float argumentOfPeriapsis)
|
||||
{
|
||||
var R1 = Quaternion.AngleAxis(longitudeOfAscendingNode + argumentOfPeriapsis, Vector3.up);
|
||||
var R2 = Quaternion.AngleAxis(inclination, R1 * Vector3.left);
|
||||
var R1 = Quaternion.AngleAxis(longitudeOfAscendingNode, Vector3.up);
|
||||
var R2 = Quaternion.AngleAxis(argumentOfPeriapsis, Vector3.up);
|
||||
var R3 = Quaternion.AngleAxis(inclination, R1 * Vector3.left);
|
||||
|
||||
return R1 * R2 * vector;
|
||||
return R3 * R2 * R1 * vector;
|
||||
}
|
||||
|
||||
public OrbitalParameters GetOrbitalParameters(Gravity primaryGravity, Gravity secondaryGravity)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user