Gostaria de saber como o sistema de animação funciona no minecraft. Tenho a sensação de que todos os monstros estão codificados no jogo. Entalhe realmente ficou lá e criou as matrizes para todos os ossos da animação manualmente?
Eu gosto de recriar jogos por diversão, então eu gostaria de saber como ele fez isso. Além disso, se ele realmente os codifica ... existe uma maneira melhor?
animation
geometry
minecraft-modding
radenon
fonte
fonte
Respostas:
Como outros já disseram, sim, os modelos e as animações são codificados. Se você gostaria de ver como isso foi feito, vá para o wiki Minecraft Coder Pack .
As classes que você deseja examinar são: ModelBase, ModelBiped e ModelRenderer.
ModelBiped contém as seguintes funções que fazem as animações humanóides:
Os balanços do braço são simplesmente funções cosseno. O braço direito é deslocado pelo PI para fazê-los girar em direções opostas.
Espero que responda sua pergunta =)
Se você quiser obter mais informações sobre como realmente modificar o Minecraft, confira esta pergunta:
Como adiciono um mob personalizado ao Minecraft?
fonte
Os modelos no Minecraft são codificados. Não há noção de hierarquia de blocos (apenas uma lista de blocos). Isso significa que as animações são feitas proceduralmente (de uma maneira muito básica) ou valores codificados com interpolação.
Existem alguns editores de modelos do Minecraft, como o Techne ou o FMCModeler, que permitem importar / exportar o código do modelo do Minecraft para mods, mas eles não suportam animações, pois provavelmente são tratados de maneira diferente para cada modelo.
Aqui está uma amostra rápida gerada com o FMCModeler:
Uma maneira melhor de fazer isso seria criar um modelador completo baseado em bloco com algumas noções de hierarquia de blocos, para que você possa animar os modelos com quadros-chave e interpolação.
Atualmente, estou construindo uma ferramenta de criação de jogos multiplayer que faz exatamente isso (entre outras coisas, http://craftstud.io/ ). Ele já permite a construção de modelos estáticos texturizados complexos e mais está a caminho.
Aqui está um modelo complexo criado com o CraftStudio Como você pode ver, os blocos estão dispostos em uma árvore à direita:
Cada bloco é serializado em disco / pela rede com os seguintes dados:
Pretendo adicionar suporte à animação armazenando um mapa com nomes de animação como chave e uma lista de quadros-chave como valor. Cada quadro-chave será associado a um bloco e um valor para animar. Entre os quadros-chave, os valores devem ser interpolados (linearmente para posição ou esfericamente para ângulos, procure lerp e slerp).
fonte
Na verdade, os modelos de blocos do Minecraft não são codificados no jogo a partir do 1.8 e podem ser editados usando pacotes de recursos. O sistema de modelagem JSON é bastante fácil de entender e os modelos existem em / models / block. Você pode ver o código para ver como ele interpreta os modelos JSON.
fonte