MC Toolkit

Руководства / Строительство и ресурсы

Текстура плаща — это 2 048 пикселей, а сам плащ занимает лишь 372 из них

Файл имеет размер 64×32, плащ располагается в углу 22×17, элитры — в блоке рядом, а сторона, которую все видят, — это 160 пикселей, меньше 8% изображения. Плюс смещение на один пиксель, на котором спотыкаются все.

Текстура плаща в Minecraft — это PNG-файл 64 × 32, то есть 2 048 пикселей. Плащ использует 372 из них, элитры читают ещё 520 из блока рядом, а остальная часть файла игнорируется. Та часть, на которую игрок реально смотрит, ещё меньше.

Шесть областей

областьпозицияразмерпиксели
внешняя(1, 1)10 × 16160
внутренняя(12, 1)10 × 16160
верх(1, 0)10 × 110
низ(11, 0)10 × 110
лево(0, 1)1 × 1616
право(11, 1)1 × 1616
итого372

Это 18,2% файла. Внешняя сторона — единственная, которую кто-либо видит, пока вы идёте, — это 160 пикселей, или 7,8% изображения, которое вы редактируете.

Всё это помещается в рамку 22 × 17 в левом верхнем углу. И даже внутри этой рамки не используются всего два пикселя: (0, 0) и (21, 0) — два угла верхнего ряда, до которых не достаёт ни верхняя полоса, ни нижняя.

За пределами плаща и блока элитр файл — мёртвое пространство

Элитры занимают блок 24 × 22, начиная с (22, 0), прямо рядом с плащом. Оставшиеся 1 156 пикселей — это не второй плащ, не маска и не зарезервированная область. Это ничто. Можете оставить их прозрачными, залить своей подписью или вставить фотографию — игра читает шесть прямоугольников для плаща, ещё шесть для элитр и игнорирует остальную часть файла.

Знать это стоит в основном потому, что так задача сильно упрощается. «Нарисовать плащ» звучит как создание изображения 64 × 32. На деле это создание прямоугольника 10 × 16, дважды — спереди и сзади — плюс окантовка шириной в четыре пикселя.

Смещение на один пиксель, на котором спотыкаются все

Посмотрите, где находятся top и bottom:

  • верх занимает x 1–10, прямо над внешней стороной
  • низ занимает x 11–20

Внешняя сторона — это x 1–10, а внутренняя — x 12–21. Значит, верхняя полоса совпадает с внешней стороной, а нижняя не совпадает ни с одной — она на один пиксель левее внутренней стороны.

Этот сдвиг на один столбец — самая частая причина, по которой нарисованный вручную плащ выглядит неправильно. Если выделить диапазон столбцов внутренней стороны и закрасить полосу над ней, нижний край окажется смещён на один пиксель, что в игре проявится тонкой полоской неправильного цвета по нижнему краю. В редакторе это незаметно, потому что полоса высотой всего в один пиксель.

Пропорции не такие, как подсказывает развёрнутая текстура

Видимый плащ — 10 в ширину и 16 в высоту, то есть в 1,6 раза выше, чем шире. В развёрнутой текстуре внешняя и внутренняя стороны лежат рядом, поэтому пара читается как горизонтальный блок 20 × 16, и легко случайно рисовать именно под эту форму.

Всё, что центрировано по обеим сторонам, будет разрезано пополам по линии сгиба. Узор нужно составлять внутри одной половины 10 × 16 или осознанно зеркалить его между двумя.

Этот же файл — ещё и ваши элитры

Одна текстура служит и тем, и другим: предпросмотр на этой странице надевает её как плащ или как элитры из одного и того же изображения, потому что именно так игра это и использует — если только ваша учётная запись не предоставляет отдельную текстуру элитр, которая тогда побеждает. Поэтому дизайн плаща никогда не бывает только дизайном плаща.

Однако они читают не одни и те же пиксели. Плащ свисает с панели 10 × 16 в точке (1, 1); элитры читают свой собственный блок 24 × 22 в точке (22, 0), зеркально отражённый на оба крыла. Дизайн, нарисованный только на панели плаща, оставит элитры пустыми. Проверяйте оба предпросмотра, прежде чем останавливаться на дизайне: файл общий, а области — нет.

Создание плащей →

Другие руководства

Смотреть все →