Actualmente estoy viendo cómo simular fácilmente algunos sistemas estelares (es decir, algunas estrellas centrales y luego algunos planetas con quizás satélites), para permitir más adelante algún juego de estrategia basado en el espacio (por lo tanto, con naves espaciales moviéndose). Todo esto debería basarse en el tiempo (por lo que el estado de cada sistema difiere en el tiempo)
Estoy luchando bastante con las matemáticas detrás de este tema, como por ejemplo:
- matemáticas relacionadas con elipse,
- creando el camino del planeta A a B teniendo en cuenta el tiempo (las posiciones respectivas cambiarán con el tiempo) ...
¿Conoces algún recurso para eso? Ni siquiera me importaría comprar libros al respecto ...
nota al margen: cómo mostrar todo esto no es un problema en este momento, haré planes simples para eso (básicamente apegado a 2D y una "vista de alto nivel" sin detalles de naves espaciales / planetas, solo marcadores)
fuente
Respuestas:
No soy un cerebro matemático, pero mi lectura de SF y Google me llevan a esta página sobre mecánica orbital . Comienza con explicaciones que puedo seguir y sigue con ecuaciones que no puedo. El tipo de movimiento que estaba buscando se llama órbita de transferencia de Hohmann, que utiliza menos combustible.
fuente
Hay otro problema en el que es posible que desee reflexionar, además de la física de simular un sistema estelar.
La precisión de punto flotante probablemente será un problema dependiendo de la cantidad de "simulación" que sea. Cuando lo piensas, las distancias reales entre un planeta en relación con la distancia de un objeto que orbita alrededor de uno de esos planetas es enorme. Intentar simular tanto un planeta distante como un objeto en órbita en el mismo "entorno" probablemente se rompería bajo las limitaciones de la precisión del punto flotante.
http://www.floatingorigin.com/mirror/oneil_01.htm
fuente
Como Jason menciona anteriormente, eche un vistazo a esta página web: profundiza bastante en la mecánica orbital ...
http://www.braeunig.us/space/orbmech.htm
Me pregunto si podría elaborar un sistema simple basado en reglas para la navegación. Simplemente "lance" el vehículo en algún vector, luego en cada pasada de su ciclo de eventos, haga que mire su trayectoria actual en relación con el destino y aplique una corrección.
Cuando se pone difícil es donde debes tener en cuenta lo que podrías llamar las motivaciones de la nave espacial. ¿Tiene un suministro de combustible finito? ¿Es mejor llegar más rápido o usar menos combustible? ¿Es importante la velocidad a la que te acercas al objetivo? Es decir, ¿puede venir volando a gran velocidad o necesita reducir la velocidad para entrar en órbita?
fuente
¿Necesitas resolver esto? Órbitas de transferencia Hohmann son LENTO --1 / 2 el periodo orbital del cuerpo exterior y que también requieren una alineación correcta de los planetas a trabajar.
¿Realmente quieres limitar a los jugadores a tales movimientos? Y si está haciendo eso, obviamente está utilizando algún tipo de unidad de salto para llegar a los otros sistemas estelares, ¿por qué no puede usar eso dentro de un sistema?
Si tiene algún tipo de sistema de empuje continuo de potencia no trivial, no necesita hacer cálculos orbitales tan sofisticados. En lugar:
1) Calcule el cambio de velocidad necesario entre los cuerpos. Esta es la velocidad orbital y la energía necesaria para moverse a la nueva órbita.
2) Calcule la distancia entre A y B en sus posiciones actuales.
3) Ajuste esto para la quemadura necesaria en la parte # 1. Si vas hacia afuera, calcula una quemadura adicional al comienzo para el cambio de velocidad, si vas a quemarla al final. Resta esta distancia de la distancia entre los planetas, suma el tiempo necesario al tiempo total.
4) Tome la distancia restante, divídala por la mitad y calcule cuánto tiempo le tomará a su cohete hacer esto. Duplica el resultado.
5) Agregue los tiempos involucrados, calcule dónde estará el planeta objetivo después de que termine esa quemadura. Si se movió demasiado, usa la nueva ubicación del planeta como objetivo, rehace los cálculos. Esto convergerá rápidamente.
Sí, esto no está a la altura de las especificaciones de la NASA, pero está lo suficientemente cerca para el uso del juego.
fuente
Búsqueda de interpolación lineal. Le permite actualizar una posición desde el punto A a B a lo largo de una línea recta utilizando una función del tiempo.
Este enlace puede ayudar.
fuente