MC Toolkit

Poradniki / Budowanie i zasoby

Dopasowanie koloru do bloku w Minecraft jest trudniejsze, niż się wydaje

Dwa bloki mogą wyglądać identycznie w RGB i zupełnie inaczej na ścianie, bo gra cieniuje każdą renderowaną ścianę.

Wybierz blok, którego średni kolor jest najbliższy twojemu celowi, a zwykle wybierzesz źle. Minecraft nie rysuje bloku jako średniego koloru jego tekstury — mnoży tę teksturę przez jasność danej ściany, a następnie przez poziom światła w tym miejscu. Kolor, który pobrałeś ze zrzutu ekranu, jest już wynikiem tego cieniowania, więc podanie go bezpośrednio do wyszukiwania najbliższego koloru porównuje go z wartością, której żaden blok faktycznie nie wyświetla.

Dlaczego średnie RGB zawodzi

Średnie RGB traktuje trzy kanały jako równie ważne i zakłada, że zmieniają się liniowo. Ani jedno, ani drugie nie jest prawdą. Ludzki wzrok jest znacznie wrażliwszy na różnice w zieleni niż w błękicie, a różnica koloru o tej samej wartości liczbowej wydaje się znacznie większa w ciemnych tonach niż w jasnych. Dwa bloki mogą znajdować się w tej samej odległości RGB od celu i wyglądać zupełnie inaczej na ścianie.

CIELAB powstał dokładnie po to, by to naprawić: równe odległości liczbowe w Lab odpowiadają w przybliżeniu równym różnicom postrzeganym. Dopasowywanie w Lab sprawia, że narzędzie palety potrafi zaproponować blok, który naprawdę czyta się jako właściwy kolor, a nie taki, który jedynie dzieli ten sam kod hex.

Tekstura to nie jeden kolor

Tekstura bloku to kwadrat pikseli, a większość z nich nie jest jednolita. Tekstura 16×16 zawiera 256 pikseli, a hałaśliwy kamień czy cętkowana tekstura liści rozciąga się na szeroki zakres tonów. Zredukowanie jej do jednej średniej wyrzuca wariancję — czyli tę część, która decyduje o tym, czy mozaika czyta się jako gładka, czy jako nakrapiana. Dopasowywacz palety mierzy względem rzeczywistych plików tekstur, więc raportowana odległość odzwierciedla to, co blok faktycznie zawiera.

Java i Bedrock różnią się tutaj

Oba wydania nie dostarczają identycznych tekstur i nie cieniują identycznie. Java stosuje kierunkową jasność ścian i barwienie biomu przez własny potok; Bedrock obsługuje barwienie i niektóre kolory bloków inaczej. Paleta, która pasuje idealnie w jednym wydaniu, może być widocznie przesunięta w drugim, szczególnie w przypadku trawy, liści i wody. Buduj paletę w tym wydaniu, w którym faktycznie stawiasz bloki.

Od obrazu do mozaiki

Mozaika to siatka, a każda komórka staje się jednym blokiem. Wynikają z tego dwie rzeczy. Po pierwsze, obraz trzeba zmniejszyć do rozmiaru siatki przed dopasowaniem, a nie po — dopasowywanie w pełnej rozdzielczości, a potem pomniejszanie, daje paletę wybraną dla szczegółów, których już nie ma. Po drugie, wynikiem jest .mcfunction, więc cała budowla jest stawiana poleceniem, a nie ręcznie. Liczba poleceń skaluje się z liczbą komórek, a nie z liczbą pikseli obrazu.

Pułapka przezroczystości

Piksele z częściową alfą nie mają jednego odpowiednika blokowego. Zdecyduj z góry, czy staną się powietrzem, wariantem szkła, czy najbliższym nieprzezroczystym dopasowaniem, ponieważ dopasowywacz nie może odgadnąć twoich intencji i w przeciwnym razie wcieli je do najbliższego jednolitego koloru.

Zamień obraz w mozaikę blokową za pomocą gotowego .mcfunction lub znajdź waniliowy blok najbliższy dowolnemu kolorowi w Pixel Art & Block Palette.

Pixel Art & Block Palette →

Więcej poradników

Zobacz wszystkie →

Szukasz innych narzędzi do Minecrafta?

Zestaw generatorów, podglądów i konwerterów działających w przeglądarce — wszystkie za darmo.