Найти в Дзене

Unity 2D. Ruby's Adventure. Part 6

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

Для технической оптимизации и упрощения создания тайлов, спрайты, для тайлов обычно поставляются в виде одного файла изображения, называемого набором тайлов. Все файлы в проекте с именами, начинающимися с «Floor», на самом деле содержат девять плиток на сетке 3x3 и являются Tilesets (тайлсетами):

Наборы тайлов
Наборы тайлов

Эти наборы тайлов необходимо разделить на 9 разных спрайтов в настройках импорта.

Для этого в окне Проекта перейдите в папку Art > Sprites > Environment и выберите набор тайлов под названием FloorBricksToGrassCorner.

На данный момент существует единственный спрайт , представляющий собой полное изображение. Но нужно сообщить Unity , что это изображение на самом деле содержит девять разных спрайтов. Чтобы это сделать, в Инспекторе измените режим спрайта с Single на Multiple с помощью раскрывающегося меню:

Режим спрайта
Режим спрайта

После этого кликните по сцене мышкой, чтобы появилось окно для подтверждения внесенных изменений, в котором нажмите кнопку "Apply":

Подтверждение изменений
Подтверждение изменений

Снова выберите в окне проекта спрайт FloorBricksToGrassCorner. Чтобы разделить это изображение на 9 спрайтов, в Инспекторе нажмите кнопку "Sprite Editor", после чего откроется окно, в котором мы можем настроить параметры нарезки изображения:

Редактор спрайтов
Редактор спрайтов

В этом окне в верхней части окна нажмите "Slice". Появится окно, в котором нужно указать, как нарезать изображение. Мы задаем первый параметр "Grid by Cell Count", то есть Сетка по количеству ячеек. А количество ячеек указываем 3 на 3, то есть 3 ячейки по горизонтали и 3 ячейки по вертикали. После этого нажимаем кнопку "Slice":

Нарезка спрайта
Нарезка спрайта

Визуально ничего не произойдет, но если теперь кликнуть мышкой по изображению спрайта, то на нем появится сетка нарезки, которую нужно применить, нажав на кнопку Apply сверху:

Применить нарезку
Применить нарезку

Закройте окно редактора спрайта, сохранив внесенные изменения:

Сохранение изменений
Сохранение изменений

Теперь, если нажать на маленькую стрелку на спрайте он раскроется на девять спрайтов, из которых он состоит:

Набор спрайтов
Набор спрайтов

Теперь откройте окно палитры, выберите все эти девять нарезанных спрайтов и перенесите их в палитру так, чтобы они не перекрыли уже созданную плитку:

Добавление в палитру
Добавление в палитру

Опять автоматически откроется окно для выбора папки, куда будут сохраняться тайлы. Проверьте, что выбрана папка Tiles, которую мы создали чуть ранее, и нажмите кнопку "Выбор папки":

Выбор папки для тайлов
Выбор папки для тайлов

После этого в палитре будет еще девять плиток, а в папке Tiles появятся 9 новых файлов.

Не забудьте изменить у спрайта набора плиток (не у каждого кусочка) свойство Pixel Per Unit на 64:

Изменение Pixel Per Unit
Изменение Pixel Per Unit

Иначе отрисовка плиток из этого набора будет также происходить с пустыми границами.

Попробуйте отрисовать какую-то другую плитку. Напомню - в окне палитры выберите вверху элемент кисточки, а ниже ту плитку, которую нужно нарисовать. Обратите внимание, что вокруг плитки должна появиться граница. Можно рисовать не только одной плиткой, а сразу несколькими. Для этого с зажатой левой клавишей мыши выберите в палитре область плиток, которую нужно отрисовать. Эта область выделится тонкой голубой границей. Отпустите левую клавишу мыши и переведите курсор на сцену. Вместо одной плитки вы можете теперь рисовать целым набором, что значительно ускорит процесс создания игрового мира:

Рисование несколькими плитками
Рисование несколькими плитками

В палитре помимо кисти есть еще несколько элементов управления, каждый из которых при наведении на него курсора отображает подсказку:

Элементы палитры
Элементы палитры
  • Select Tool - используется для выделения одной или нескольких ячеек на сетке;
  • Move Tool - используется для переноса выделенной области сетки в другую позицию;
  • Paintbrush Tool - режим кисти, отрисовывает выбранную плитку или область плиток на сетке сцены;
  • Fill Box Tool - режим заполнения области, отрисовывает выбранную плитку или область плиток в области сцены, при этом автоматически дублирует плитки, если область на сцене больше, чем выбранные для рисования плитки. Для использования зажмите левую клавишу мыши на сцене и растягивайте область, которую нужно заполнить:
Fill Box Tool
Fill Box Tool
  • Picker Tool - режим пипетки, с помощью которой можно выбрать на сцене область плиток, которые нужно продублировать. Выбор осуществляется с зажатой левой клавишей мыши на сцене:
Picker Tool
Picker Tool

После выделения области отпустите клавишу мыши и переведите курсор на свободное место, на котором отобразится выбранная область.

  • Eraser Tool - режим ластика, удаляет выбранные плитки с сетки сцены;
  • Fill Tool - режим заливки, заполняет выбранной плиткой или областью плиток пустую область сцены (только пустую!):
Fill Tool
Fill Tool

Есть также несколько полезных сочетаний клавиш:

  • Alt + левая кнопка перетаскивания — панорамирование
  • Перетаскивание кнопки колеса — панорамирование
  • Вращайте колесико — увеличивайте или уменьшайте масштаб

Ваша самостоятельная задача - разбить остальные наборы плиток с именами файлов, начинающимися с "Floor".

Наборы плиток
Наборы плиток

В следующей части правильно настроим персонажа и сетку.