Estou trabalhando com o AndEngine com extensão Box2d, mas a resposta geral ou uma idéia de conceito também serão apreciadas.
Eu tenho objetos parecidos com penas em um mundo de vista lateral 2D e quero fazer parte da simulação de física. Estou usando o amortecimento linear para fazer a "pena" cair lentamente. Isso pode não ser uma boa ideia, talvez eu deva aplicar força em cada atualização, mas, no entanto, isso funciona e faz com que o objeto pareça "leve" e parece que há ar com resistência.
Agora, como posso fazer com que os objetos pareçam penas caindo no ar?
Especificamente, estou procurando dois tipos de objetos: longos com baixa densidade, que devem se mover para baixo em um movimento de balanço lento e objetos quadrados que mudariam aleatoriamente a trajetória. Seria ótimo se essa pudesse ser uma simulação e o comprimento fosse um parâmetro - quanto mais longo o objeto, mais ele balançaria. No momento, quero simular penas, folhas e flocos de neve em um mundo dos desenhos animados.
Respostas:
Assim como o pouso na lua, você deve fingir . A física da autorotação induzida por vibração, queda e vórtice é complexa. Existem trabalhos sobre a simulação desse efeito , e eles produzem algumas animações adoráveis em Java .
Mas, eu iria ainda mais longe na sua falsificação e implementaria algo como uma onda senoidal crescente para animar o movimento.
Obviamente, você desejará ajustar os valores iniciais, a taxa de aumento independente de amplitude e frequência até obter algo que pareça mais próximo do que você deseja. Você gostaria de ter alguma aleatoriedade para torná-la interessante. Além disso, como mostra o exemplo, objetos muito leves com alta área superficial podem realmente ir subir perto das margens de suas ondas. Portanto, ondas acima de uma certa amplitude devem começar a levar em consideração um valor de varredura, com um valor máximo limitado pequeno.
Quanto menos massa e mais área de superfície um objeto tiver, mais você aumenta a amplitude e a frequência da onda senoidal. Quanto mais massa e menor área de superfície resultar em diminuição da amplitude e frequência.
fonte