1. Вики
  2. /Текстуры и модели
  3. /Пиксельные текстуры

Пиксельные текстуры

Как работают текстуры в Minecraft Bedrock: PNG 16x16, куда их класть, короткие имена, прозрачность, анимированные блоки и советы по хорошему пиксель-арту.

Каждый предмет, блок и моб в Minecraft раскрашен маленькими пиксельными картинками. Хорошие текстуры делают так, что аддон выглядит как часть игры. В этом гайде мы разберём, куда кладутся файлы текстур, как игра их находит и как рисовать пиксель-арт, который смотрится уместно рядом с ванильным.

Быстрый способ: GodCraft

В GodCraft есть встроенный пиксельный редактор, и он сохраняет каждую текстуру в нужное место с нужным коротким именем.

  1. Откройте Мастерскую и откройте любой предмет, блок или моба.
  2. Нажмите на текстуру, чтобы открыть пиксельный редактор.
  3. Начните с ванильной текстуры и перекрасьте её или нарисуйте с нуля.
  4. Сохраните. При экспорте файлы PNG и списки текстур будут записаны за вас.

Начинать с ванильной текстуры - отличный приём: вы бесплатно получаете стиль затенения Minecraft и меняете только цвета и форму.

Вручную

Основы: PNG 16x16

Текстуры Minecraft - это картинки в формате PNG. У предметов и блоков обычно размер 16x16 пикселей. Это совсем крошечно, поэтому важен каждый пиксель.

  • Используйте программу для пиксель-арта, а не обычный фоторедактор, который размывает края. Выключите сглаживание и рисуйте карандашом в 1 пиксель.
  • Сохраняйте в PNG с прозрачностью (RGBA). JPG не сохраняет прозрачные пиксели и добавляет размытый шум.
  • Имена файлов пишите строчными буквами с подчёркиваниями, например ruby_sword.png.

Куда кладутся текстуры

Текстуры хранятся в пакете ресурсов (RP):

ВидПапкаПример
ПредметыRP/textures/items/ruby.png
БлокиRP/textures/blocks/ruby_block.png
Скины мобовRP/textures/entity/critter.png

Скины мобов не 16x16: их размер совпадает с texture_width и texture_height модели, например 64x32. См. Ваш первый моб.

Короткие имена: item_texture.json и terrain_texture.json

Предметы и блоки не ссылаются на PNG напрямую. Они используют короткое имя, а два файла-списка превращают короткие имена в пути. Обратите внимание: в конце путей нет .png.

Для предметов:

RP/textures/item_texture.json
{
  "resource_pack_name": "myname",
  "texture_name": "atlas.items",
  "texture_data": {
    "ruby": {
      "textures": "textures/items/ruby"
    }
  }
}

Затем предмет использует короткое имя ruby в компоненте иконки. См. Ваш первый предмет.

Для блоков:

RP/textures/terrain_texture.json
{
  "resource_pack_name": "myname",
  "texture_name": "atlas.terrain",
  "texture_data": {
    "ruby_block": {
      "textures": "textures/blocks/ruby_block"
    }
  }
}

Затем блок использует ruby_block в minecraft:material_instances. См. Ваш первый блок.

Один файл, много текстур

В каждом пакете всегда только один item_texture.json и один terrain_texture.json. Добавляйте каждую новую текстуру ещё одной записью внутри texture_data.

Прозрачность

Полностью прозрачные пиксели (alpha 0) позволяют делать фигуры, которые не являются квадратами: мечи, цветы и стеклянные панели.

  • Предметы: пустое место вокруг предмета должно быть полностью прозрачным. Полупрозрачные пиксели тоже работают.
  • Блоки: что вы увидите, зависит от render_method блока в material_instances:
    • opaque: никакой прозрачности. Прозрачные пиксели превращаются в сплошной цвет. Лучше всего для камня, руд и досок.
    • alpha_test: каждый пиксель либо полностью виден, либо полностью скрыт. Хорошо для листвы, цветов и обычного стекла.
    • blend: разрешает полупрозрачные пиксели, как у цветного стекла.
  • Мобы: используйте материал entity_alphatest в клиентской сущности, чтобы полностью прозрачные пиксели исчезали.

Высокое разрешение

Можно использовать текстуры 32x32, 64x64 и больше. Помните эти правила:

  • Для предметов и блоков картинка должна быть квадратной, а размер - степенью двойки (16, 32, 64, 128).
  • Держите один размер для всего набора, чтобы всё выглядело единообразно. Меч 64x64 рядом с ванильными мечами 16x16 может смотреться чужеродно.
  • Большие текстуры занимают больше памяти, особенно на телефонах. 16x16 - классический вид Minecraft и самый надёжный выбор.

Анимированные текстуры блоков (флипбуки)

Блоки вроде морского фонаря, магмы и лавы анимированы. Они используют флипбук (flipbook): одну высокую картинку, где все кадры сложены друг над другом.

  1. Сделайте PNG шириной 16 пикселей и высотой 16, умноженное на число кадров. Четыре кадра - это 16x64.
  2. Добавьте её в terrain_texture.json как обычную текстуру блока, например под именем glowing_ore.
  3. Создайте flipbook_textures.json, чтобы сказать игре, что текстура анимирована:
RP/textures/flipbook_textures.json
[
  {
    "flipbook_texture": "textures/blocks/glowing_ore",
    "atlas_tile": "glowing_ore",
    "ticks_per_frame": 8
  }
]
  • flipbook_texture - путь к высокому PNG, без .png.
  • atlas_tile - короткое имя из terrain_texture.json.
  • ticks_per_frame - сколько держится каждый кадр. В секунде 20 тиков, поэтому 8 означает, что каждый кадр показывается 0,4 секунды.
  • Необязательный frames - список номеров кадров, которые проигрываются в своём порядке, начиная с 0. Ванильный призмарин использует его, чтобы показывать одни кадры дольше других.
  • Необязательный blend_frames со значением false заставляет кадры резко переключаться, а не плавно перетекать друг в друга.

Заметка

Флипбуки нужны для блоков. Иконки предметов не используют flipbook_textures.json.

Советы для хорошего пиксель-арта

Используйте маленькую палитру

Выберите от 3 до 5 оттенков одного цвета, от тёмного к светлому, и придерживайтесь их. Слишком много цветов делают рисунок 16x16 шумным. Ванильные текстуры часто используют всего несколько цветов на материал.

  • Делайте тёмные оттенки чуть насыщеннее или слегка сдвигайте их к синему или фиолетовому. Светлые оттенки сдвигайте к жёлтому. Такой «сдвиг оттенка» выглядит гораздо живее, чем просто добавление чёрного или белого.
  • Берите палитры у ванильных текстур, чтобы ваш аддон сочетался с игрой.

Свет падает слева сверху

Предметы и многие блоки Minecraft затенены так, будто свет падает слева сверху:

  1. Залейте фигуру средним оттенком.
  2. Положите самый светлый оттенок вдоль верхнего и левого краёв.
  3. Положите самый тёмный оттенок вдоль нижнего и правого краёв.
  4. Добавьте несколько самых ярких пикселей как блик, например отблеск на кристалле.

Обводка и читаемость

  • У иконок предметов обычно есть тёмная обводка, чтобы они выделялись на любом фоне инвентаря.
  • Избегайте одиноких пикселей случайного цвета: в маленьком размере они выглядят как шум.
  • Почаще отдаляйте картинку. На экране ваша текстура будет крошечной, поэтому проверяйте её в масштабе 100%.

Блоки должны стыковаться

Текстуры блоков повторяются рядом друг с другом. Следите, чтобы левый край переходил в правый, а верхний в нижний, иначе на больших стенах будет видна сетка. Избегайте яркой рамки по всем сторонам, если только вы не хотите эффект плитки, как у кирпичей.

Проблемы с текстурами

Фиолетово-чёрная шахматная доска

Игра не нашла текстуру. Проверьте, что короткое имя везде написано одинаково и что путь в списке текстур совпадает с настоящим файлом без .png.

  • Текстура размытая. PNG масштабировали со сглаживанием. Перерисуйте в настоящем размере или масштабируйте методом «по соседним пикселям» (nearest neighbor).
  • Прозрачные места на блоке видны как чёрные или белые. Поменяйте render_method блока на alpha_test или blend.
  • Изменения не появляются. Убедитесь, что вы экспортировали новую версию и перезагрузили мир. См. Когда что-то сломалось.

We use cookies to improve your experience and analyse site traffic. Learn more