
O ponto amarelo anda numa direção, determinada pelo teclado. O resto segue a cabeça, conforme o esperado :). Melhor que muito jogo retail por aí ;). Agradecimentos ao Dalton pelas dicas que, apesar de serem muita areia pro meu caminhão (tradução: não entendo bolotas de física), me levaram a fazer o código.
Uma explicação rápida e rasteira. Como apenas a cabeça (ponto amarelo) se move, fazer o resto do corpo andar é resolvido "por partes", do segundo ao último nó. Todos eles seguem uma restrição física bem simples, a distância entre os nós é fixa. Assim, ao fazer a cabeça andar, basta calcular a posição do segundo nó. Calculado ele, passamos para o terceiro e assim por diante. Em resumo, exceto pelo primeiro nó, a posição de um nó é relativa ao nó anterior.
Para calcular a posição relativa, basta calcular o ângulo formado pelo nó anterior (nova posição) com o nó atual (que está na velha posição). Aí é só "puxar" o nó atual nesta direção. Basta usar a relação de triângulo retângulo e calcular, a partir do nó anterior, a posição do nó atual com o ângulo e a distância. Faz isso do segundo nó para o último e o Minhocão vai que é uma beleza :).

Um comentário:
Show! Quando vai rolar um demo para o s amigos?
Postar um comentário