Jak zrobić animowane tekstury
Animowana tekstura to wysoki obrazek z klatkami jedna pod drugą, które gra pokazuje po kolei. Tak działają woda, lawa, ogień i portale, a paczka może animować też inne bloki i przedmioty. Edytor paczek tekstur robi animację z każdego bloku i przedmiotu, odtwarza ją podczas malowania w tempie gry, importuje GIF-y i zapisuje pliki, których potrzebuje każda edycja: plik .png.mcmeta do Javy i wpis flipbooka do Bedrocka.
Krok po kroku
- Otwórz edytor paczek tekstur i zrób paczkę albo otwórz paczkę, którą już masz.
- Otwórz teksturę bloku albo przedmiotu i wybierz w jej menu (⋮) Animuj. Dostanie dwie klatki, a pod obszarem rysowania pojawi się pasek klatek.
- Pomaluj każdą klatkę. + dodaje kopię wybranej klatki; menu ⋯ duplikuje, kopiuje, wkleja, przesuwa i usuwa klatki. Włącz kalkę, żeby podczas malowania widzieć poprzednią klatkę na blado.
- Zegar otwiera Czasy: ile ticków trwa każda klatka (20 ticków to 1 sekunda), czasy pojedynczych klatek i Płynne przejścia. Przyciskiem Play zobaczysz wszystko w tempie gry.
- Kliknij Eksportuj. Paczki do Javy dostają pasek klatek z plikiem
.png.mcmeta, a paczki do Bedrocka wpis wflipbook_textures.json.
Klatki, kalka i pasek klatek
- Przeciągnij klatkę myszką w nowe miejsce. Na telefonie i tablecie użyj Do przodu i Do tyłu w menu ⋯.
- Po kliknięciu klatki: Alt + strzałki ją przesuwają, Delete ją usuwa, a Ctrl+C i Ctrl+V kopiują ją i wklejają jako nową klatkę, do każdej animacji w paczce. Przecinkiem i kropką przechodzisz między klatkami podczas malowania.
- Kalka pokazuje poprzednią klatkę na blado nad tą, którą malujesz, żeby ruchy do siebie pasowały. W menu ⋯ możesz dodać też następną klatkę.
- Kiedy usuniesz wszystkie klatki oprócz jednej albo wybierzesz Wyłącz animację, tekstura znowu jest nieruchoma. Oba da się cofnąć.
Czas w tickach
Minecraft mierzy czas w tickach: 20 ticków to 1 sekunda, więc jeden tick to 0,05 sekundy. Każda klatka trwa całkowitą liczbę ticków:
| Ticki na klatkę | Sekundy | Klatki na sekundę |
|---|---|---|
| 1 | 0,05 s | 20 |
| 2 | 0,1 s | 10 |
| 4 | 0,2 s | 5 |
| 10 | 0,5 s | 2 |
| 20 | 1 s | 1 |
- Każda klatka trwa ustawia tempo wszystkich klatek. Nowa animacja zaczyna od 4 ticków.
- Czas klatki daje pojedynczym klatkom własny czas, na pauzę albo krótki błysk.
- Płynne przejścia przenika każdą klatkę w następną tick po ticku, jak płynąca woda. Najładniej wygląda przy wolnych klatkach.
- Kolejność odtwarza klatki w dowolnej kolejności i tyle razy, ile chcesz:
1, 2, 3, 2wraca w tył,1-8odtwarza zakres, a3:40trzyma klatkę 3 przez 40 ticków.
Java Edition: plik .png.mcmeta
Java czyta animację z pliku, który nazywa się tak jak tekstura, z dopiskiem .mcmeta, i leży tuż obok niej: stone.png dostaje stone.png.mcmeta. Klatki idą od góry do dołu, frametime to tempo w tickach (1, jeśli go brakuje), a frames to kolejność, z time dla klatek, które trwają dłużej:
{
"animation": {
"interpolate": true,
"frametime": 4,
"frames": [
0,
1,
{
"index": 2,
"time": 10
},
1
]
}
}Klatki, które nie są kwadratami, od 1.13 potrzebują swojego rozmiaru. Gra czyta je wtedy rzędami, od lewej do prawej:
{
"animation": {
"width": 32,
"height": 16,
"frametime": 2
}
}| Wersja | Co potrafi animacja |
|---|---|
| 1.6.1 – 1.7.10 | Tempo (frametime) i kolejność z czasami (frames). Klatki to kwadraty o szerokości tekstury. |
| 1.8 – 1.12.2 | Do tego płynne przejścia (interpolate). |
| 1.13 i nowsze | Klatki w dowolnym rozmiarze (width, height). |
| 1.21.2 i nowsze | Płynne przejścia przenikają też przezroczyste piksele. Wcześniej przenikają się tylko kolory, a każda klatka zachowuje własną przezroczystość. |
Edytor zapisuje to, co czyta najstarsza wersja twojej paczki, i przy eksporcie ostrzega, jeśli jakaś wersja w jej zakresie nie umie odtworzyć części animacji. Java animuje tekstury, które zbiera na atlasie tekstur: bloki i przedmioty w każdej wersji, cząsteczki, obrazy i ikony efektów od 1.14, skrzynie, łóżka, tabliczki, sztandary, tarcze i shulkerowe skrzynie od 1.15 i sprite’y interfejsu od 1.20.2. Skiny mobów, zbroje, czcionki, mapy kolorów i ikona paczki są rysowane osobno i zostają nieruchome, dlatego edytor to mówi, zamiast je animować.
Bedrock Edition: tekstury flipbook
Bedrock wymienia swoje animacje w textures/flipbook_textures.json. Każdy wpis podaje teksturę i kafelek bloku z terrain_texture.json, który ją pokazuje:
[
{
"flipbook_texture": "textures/blocks/glowstone",
"atlas_tile": "glowstone",
"ticks_per_frame": 4,
"frames": [0, 1, 1],
"blend_frames": false
}
]| Pole | Co robi |
|---|---|
flipbook_texture | Ścieżka tekstury, bez rozszerzenia pliku. |
atlas_tile | Kafelek bloku w terrain_texture.json, który jest animowany. |
atlas_index, atlas_tile_variant | Która tekstura kafelka, jeśli ma ich kilka (od 0). |
ticks_per_frame | Ticki na klatkę (20 ticków = 1 sekunda). Jedno tempo dla wszystkich klatek. |
frames | Kolejność. Klatka, która trwa dłużej, występuje w niej kilka razy. |
blend_frames | Przenika klatki jedna w drugą; włączone, jeśli go brakuje. Edytor zapisuje false, chyba że włączysz „Płynne przejścia”. |
replicate | Używa go gra dla płynącej wody i lawy; zostaje bez zmian. |
Klatki to kwadraty o szerokości tekstury, od góry do dołu. Edytor zapisuje wpisy z gry razem z twoimi, żeby woda, lawa, ogień i inne animowane bloki dalej się ruszały.
Import GIF-a, zapis jako GIF
- Importuj GIF albo obrazki… w menu tekstury albo w menu ⋯ bierze animowany GIF, arkusz sprite’ów (klatki w rozmiarze tekstury obok siebie albo pasek z kwadratów) albo kilka obrazków, w kolejności ich nazw. GIF możesz też przeciągnąć na obszar rysowania.
- Każda klatka jest zmieniana do rozmiaru tekstury bez wygładzania, żeby pixel art został ostry.
- Czasy w GIF-ach to setne części sekundy: 5 setnych to jeden tick, więc czasy GIF-a są zaokrąglane do ticków. Możesz zamiast tego zostawić obecne tempo.
- Zapisz jako GIF… zapisuje animację do udostępnienia, aż do 16 razy większą. Klatki z płynnymi przejściami są zapisywane tick po ticku, tak jak pokazuje je gra. GIF-y nie znają półprzezroczystych pikseli: stają się one kryjące albo przezroczyste.
Otwieranie paczki z animacjami
Otwórz .zip z Javy albo .mcpack z Bedrocka, a jego animacje będą działać w edytorze, gotowe do zmian: klatki, tempo, czasy klatek i płynne przejścia pochodzą z jego plików .png.mcmeta albo listy flipbooka. Animacje są zapisywane z projektem, więc pliki projektów i kopie zapasowe też je zachowują.
Częste pytania
Moja animacja nie rusza się w grze. Dlaczego?
W Javie .png.mcmeta musi leżeć obok obrazka i mieć dokładnie jego nazwę z dopiskiem .mcmeta, a tekstura musi być taka, którą gra animuje (bloki, przedmioty i inne tekstury z atlasu). W Bedrocku ruszają się tylko tekstury bloków z wpisem flipbooka. Sprawdź, czy paczka jest aktywna i leży nad innymi paczkami, które zmieniają tę samą teksturę.
Mogę animować przedmioty w Bedrocku?
Nie. Paczki zasobów do Bedrocka mogą animować tylko tekstury bloków, przez flipbook_textures.json. Paczki do Javy mogą animować przedmioty.
Jak szybka może być animacja?
Najszybciej jedna klatka na tick: 20 klatek na sekundę. Edytor przyjmuje do 12 000 ticków (10 minut) na jedną klatkę.
Czy wszystkie klatki muszą mieć ten sam rozmiar?
Tak. Klatki są wycinane z jednej tekstury, więc mają jej szerokość i tę samą wysokość. Importowane obrazki są zmieniane do rozmiaru klatki.