public void PointInDirection(List <IMyGyro> gyros, MatrixD reference, Vector3D direction, Vector3D up)
            {
                double yaw, pitch, roll;

                GyroUtils.DirectionToPitchYawRoll(reference, direction, up, out yaw, out pitch, out roll);

                double timeSinceLast = (ingameTime.Time - lastTime).TotalSeconds;

                lastTime = ingameTime.Time;

                yaw   = yawPid.NextValue(yaw, timeSinceLast);
                pitch = pitchPid.NextValue(pitch, timeSinceLast);
                roll  = rollPid.NextValue(roll, timeSinceLast);


                GyroUtils.ApplyGyroOverride(gyros, reference, pitch, yaw, roll, onlyUpdateOne);
            }