Ripristinare fotogrammi Aseprite rifilati da un foglio di sprite e JSON
Un foglio Aseprite compattato risparmia spazio nella texture ritagliando i pixel vuoti attorno a ogni posa. Se ritagli quei rettangoli senza tenerne conto, il personaggio si sposta a scatti, perché ogni ritaglio ha un’origine diversa. Il JSON allegato è la mappa che manca per ricollocarli nell’area di disegno originale.
Esporta due file dalla stessa sessione Aseprite
- Apri l’animazione in Aseprite e usa File → Export Sprite Sheet. Esporta un foglio PNG e attiva l’output dei dati JSON. Lo strumento di estrazione di ImageMint accetta JSON sia come hash sia come array.
- Conserva insieme foglio e JSON. Un JSON di un’esportazione precedente può indicare rettangoli non più corrispondenti, anche se entrambi i file hanno nomi simili.
- Se attivi rifilatura o disposizione impacchettata, conserva il JSON. Un semplice ritagliatore di celle uguali non può dedurre dal solo foglio la posizione originale di fotogrammi ritagliati diversamente.
- Carica il foglio esportato e il JSON nello strumento di estrazione. Visualizza diverse pose prima di scaricare lo ZIP; non affidarti solo al primo fotogramma.
Tre rettangoli, tre compiti diversi
Considera un personaggio disegnato su una tela di 64 × 64. Una posa rifilata occupa un rettangolo di 22 × 38, situato a 19 pixel da sinistra e 20 dall’alto della tela originale. L’impacchettamento può posizionare quel ritaglio a x=128, y=0 nel foglio esportato. Il JSON richiede tutte e tre le informazioni:
| Campo JSON | Esempio | Cosa significa |
|---|---|---|
frame | x=128, y=0, w=22, h=38 | Da dove ritagliare i pixel nel foglio esportato. |
spriteSourceSize | x=19, y=20, w=22, h=38 | Dove collocare quel ritaglio sulla tela del fotogramma originale. |
sourceSize | w=64, h=64 | Le dimensioni complete della tela da ripristinare. |
Lo strumento di estrazione crea un fotogramma trasparente da 64 × 64, copia il ritaglio da 22 × 38 dal foglio e lo disegna a (19, 20). Ripetere l’operazione per ogni posa conserva la linea di base del personaggio. Questi ruoli dei campi corrispondono a Documentazione di esportazione fogli/JSON di Aseprite; le posizioni esatte provengono dal tuo JSON.

Cosa esaminare nello ZIP scaricato
Ogni fotogramma ripristinato è un PNG numerato. manifest.json elenca nomi dei fotogrammi sorgente, durate in millisecondi, dimensioni e tag dei fotogrammi. Apri fianco a fianco una posa di attesa e quella di attacco più estrema: le tele dovrebbero essere uguali e i piedi o l’ancoraggio scelto dovrebbero restare stabili. Se la riproduzione salta ancora, i disegni potrebbero avere un allineamento incoerente nel progetto Aseprite originale; ripristinare gli offset dei ritagli non può correggere quel problema della grafica.
.aseprite file o fotogrammi impacchettati ruotati. Supporta fino a 100 fotogrammi, 1024 pixel per lato di ogni fotogramma ricostruito e 20 milioni di pixel complessivi nei fotogrammi. Se compare un errore relativo alla rotazione, esporta senza rotazione e riprova.Se ti servono solo celle equidistanti, il normale Ritagliatore di fogli di sprite è più semplice. Usa la ricostruzione JSON quando impacchettamento o rifilatura hanno distrutto la griglia uniforme.
Diagnostica una coppia corrispondente che sembra ancora sbagliata
| Sintomo | Primo controllo | Correzione sicura |
|---|---|---|
| meta.size non corrisponde | Il foglio è stato ridimensionato dopo l’esportazione? | Riesporta entrambi i file dallo stesso progetto. |
| In un fotogramma compare la posa sbagliata | Il JSON proviene da un altro impacchettamento? | Sostituisci la coppia, anche se le dimensioni corrispondono. |
| La tela è corretta ma il personaggio si sposta | Confronta le pose originali di Aseprite. | Correggi l’allineamento della sorgente; non cancellare gli scostamenti della rifilatura. |
| Errore di rotazione | La rotazione durante l’impacchettamento era attiva? | Esporta fotogrammi non ruotati. |
Un nome di file corrispondente non costituisce una verifica e neppure dimensioni uguali dimostrano che le coordinate di ritaglio descrivano l’immagine caricata. Due atlanti possono avere le stesse dimensioni ma disporre le pose diversamente. Controlla una posa riconoscibile, come un attacco con un’arma protesa, invece di giudicare soltanto un fotogramma di riposo quasi identico.
Trasferisci tempi e tag nell’applicazione successiva
Un fotogramma di 200 ms deve mantenere una pausa più lunga di uno di 80 ms. I PNG ripristinati contengono i pixel, mentre manifest.json contiene durationMs e i tag dei fotogrammi. Conserva entrambi. Se provi i PNG in un lettore a FPS uniformi, è normale ottenere un ritmo diverso anche quando il posizionamento è perfetto.
I tag identificano intervalli come riposo e camminata, ma conservarli non configura uno stato di animazione del motore. Controlla intervalli e direzione nella destinazione. L’anteprima ImageMint aiuta l’allineamento; non esporta automaticamente il controller del motore.
Prova il flusso di lavoro
Carica foglio e JSON corrispondente per vedere fotogrammi allineati e scaricare PNG a dimensioni originali.
Ripristina fotogrammi Aseprite →