private static float GetRotationSpeed(double blackHoleMass, float distance) { // 0.01, 2.5 // 0.009, 1.0 double newDistance = 0.009 + ((distance - 0.01) * (1.0 - 0.009)) / (2.5 - 0.01); double timeDilation = PhysicsCalculations.getTimeDilationAmount(1.0, blackHoleMass, newDistance); float rotationSpeed = (1.0f - (float)timeDilation) + 0.2f; return(rotationSpeed); }
void Update() { if (isBlackHole) { float distance = Vector3.Distance(blackHole.transform.position, properTimeFrame.transform.position); float newDistance = 0.005f + (distance - 0) * (0.1f - 0.005f) / (20f - 0); float timeDilation = 1.0f - (float)PhysicsCalculations.getTimeDilationAmount(1.0, orbitObject.mass, distance); //Debug.Log(timeDilation); } // transform.position = new Vector3(Mathf.PingPong(Time.time * timeDilation, 0.5f), transform.position.y, transform.position.z); //} else //{ // transform.position = new Vector3(Mathf.PingPong(Time.time, 1), transform.position.y, transform.position.z); //} }