La imagen es una tira vertical
Una textura de 16×16 con cuatro fotogramas de animación es un PNG de 16×64: cada fotograma es un cuadrado, apilados de arriba a abajo, con el primer fotograma arriba. El juego infiere el tamaño del fotograma a partir del ancho, por lo que la altura simplemente tiene que ser un múltiplo entero de este. Así es exactamente como el juego base anima cosas como el fuego, el agua y la prismarina.
prismarine.png 16 wide × 64 tall = 4 frames of 16×16
┌────────┐ frame 0
├────────┤ frame 1
├────────┤ frame 2
├────────┤ frame 3
└────────┘El archivo .mcmeta
Junto a la textura se encuentra un archivo con el mismo nombre más .mcmeta — así prismarine.png va acompañado de prismarine.png.mcmeta. Ten en cuenta que mantiene el .png en medio; esto confunde a la gente constantemente.
{
"animation": {
"frametime": 2,
"interpolate": true
}
}Sin este archivo, un PNG alto no se trata como una animación, sino como una textura aplastada y de tamaño incorrecto. La tira por sí sola no hace nada.
frametime
Cuántos ticks del juego se mantiene cada fotograma. Hay 20 ticks en un segundo, así que frametime: 2 es diez fotogramas por segundo y frametime: 20 es un fotograma por segundo. El valor predeterminado es 1: un fotograma cada tick, lo cual es muy rápido y rara vez es lo que quieres.
interpolate
Con interpolate: true, Minecraft mezcla suavemente entre un fotograma y el siguiente en lugar de cortar. Así es como el juego base obtiene un brillo lento a partir de solo un puñado de fotogramas: genera todo lo que hay en medio por ti.
Úsalo para cosas graduales: brillos, agua, cambios de color suaves. Desactívalo para cualquier cosa que deba leerse como pasos distintos, como una luz parpadeante o un patrón giratorio, donde la mezcla solo produce una mancha.
Controlar el orden y el tiempo de los fotogramas
Por defecto, los fotogramas se reproducen en orden de archivo y en bucle. Un frames array lo anula: puedes reordenar fotogramas, repetirlos y dar a cada fotograma su propia duración:
{
"animation": {
"frametime": 4,
"frames": [
0,
1,
{ "index": 2, "time": 20 },
1
]
}
}Eso reproduce los fotogramas 0, 1, 2, 1 (un ping-pong en lugar de un bucle) y mantiene el fotograma 2 durante un segundo completo mientras los demás usan los 4 ticks predeterminados. Reutilizar fotogramas de esta manera mantiene el PNG pequeño; un rebote no necesita que sus fotogramas estén duplicados en la imagen.
Mantenlo corto
Hacerlo sin escribir JSON
El editor maneja la animación como fotogramas en lugar de como un formato de archivo: tú construyes los fotogramas, ajustas la velocidad, y la tira junto con su .mcmeta se generan al exportar con el nombre correcto. También puedes importar un GIF y convertirlo en fotogramas, lo cual suele ser más rápido que dibujar un bucle a mano.
Si algo se anima en el orden incorrecto o no se anima, casi siempre es el nombre del .mcmeta; comprueba texture.png.mcmeta en lugar de texture.mcmeta. Otros fallos se cubren en por qué tu pack de texturas no funciona.
