private void Update() { transform.eulerAngles = new Vector3(0, lon, -lat); if (translated) { translated.position = SphereUtility.SphericalToCartesian(new Vector3(r, lat, lon)); } }
// Update is called once per frame void Update() { Spherical3 sc = new Spherical3(); Vector3 where = toTrack.transform.position - origin.transform.position; SphereUtility.CartesianToSpherical(where, out sc); // reflecting sc.p *= -1; Vector3 nwhere = new Vector3(); SphereUtility.SphericalToCartesian(sc, out nwhere); transform.position = startPos + nwhere; }