Estoy haciendo un juego en 2D en el que controlas una nave espacial y vuelas entre planetas en forma de disco de diferentes tamaños (masa/tracción). Los planetas son pequeños y puedes volar cerca de varios a la vez. Necesito calcular la gravedad producida por cada uno de estos planetas tirando de la nave, incluida la velocidad de la nave.
Descubrí una manera de aproximarlo:
Esta puede ser una buena aproximación, y la precisión no es un gran problema en mi caso, pero me pregunto si hay una mejor manera de hacer esto con fórmulas físicas. Todavía no he tomado una clase de física. El otro gran problema de esta solución es que debe calcularla paso a paso o fotograma a fotograma. Si hay una fórmula para hacer esto, la ruta podría calcularse desde el principio antes.
La fórmula de la gravedad es . Así que almacene variables para su y velocidades (o una matriz o cualquier método que desee) y cambie su posición por su velocidad en cada cuadro. Además, cada cuadro, use un ciclo (no sé qué idioma está usando, así que no puedo dar el código exacto) para mirar cada planeta y conectar todo en la fórmula y cambiar la velocidad por la cantidad que devuelve, en la dirección del planeta. Multiplícalo o divídelo por lo que quieras para que sea razonable, a menos que estés usando unidades reales, en cuyo caso, divide el número por la masa del barco. Haga esto para cada planeta en el sistema.
Acerca de calcular de antemano, esto probablemente sea técnicamente posible, pero requeriría una cantidad ridícula de matemáticas y podría ser más difícil (para la computadora) que actualizar cuadro por cuadro. Sin embargo, si hay un cuerpo, la trayectoria no es demasiado difícil de predecir.
basureroDoofus
Keavon
basureroDoofus