Estoy trabajando con AndEngine con la extensión Box2d, pero también agradeceré una respuesta general o una idea conceptual.
Tengo objetos similares a plumas en un mundo de vista lateral en 2D que quiero ser parte de la simulación física. Estoy usando amortiguación lineal para hacer que la "pluma" caiga lentamente. Esto podría no ser una buena idea, tal vez debería aplicar la fuerza en cada actualización, pero sin embargo, esto funciona y hace que el objeto se vea "ligero" y se siente como si hubiera aire con resistencia.
Ahora, ¿cómo puedo hacer que los objetos parezcan plumas cayendo por el aire?
Específicamente, estoy buscando dos tipos de objetos: largos con baja densidad, que se muevan hacia abajo en un movimiento de balanceo lento y objetos cuadrados que simplemente cambiarían la trayectoria al azar. Sería genial si esto pudiera ser una simulación y la longitud sería un parámetro: cuanto más largo sea el objeto, más oscilará. En este momento quiero simular plumas, hojas y copos de nieve en un mundo de dibujos animados.
Respuestas:
Al igual que el alunizaje, debes fingirlo . La física de la autorrotación inducida por aleteo, caída y vórtice es compleja. Hay documentos sobre la simulación de este efecto , y producen algunas animaciones de Java encantadoras .
Pero, incluso iría más lejos en tu falsedad e implementaría algo como una onda sinusoidal creciente para animar el movimiento.
Obviamente, querrá ajustar los valores iniciales, la tasa de aumento independiente de la amplitud y la frecuencia hasta que obtenga algo que se parezca más a lo que desea. Desea que se agregue algo de aleatoriedad para que sea interesante. Además, como muestra su ejemplo, los objetos muy ligeros con un área de superficie alta podrían subir cerca de los bordes de sus olas. Entonces, las ondas por encima de cierta amplitud deberían comenzar a tener en cuenta un valor de barrido, con un valor máximo limitado.
Cuanta menos masa y más área de superficie tenga un objeto, más aumentará la amplitud y la frecuencia de la onda sinusoidal. La mayor masa y menor área de superficie debería resultar en una disminución de la amplitud y frecuencia.
fuente