Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
Використання TileMaps (Карти Плиток)
Дивись також
Ця сторінка передбачає, що ви вже створили або завантажили TileSet. Якщо ні, спершу прочитайте Використання TileSets, оскільки вам знадобиться TileSet для створення TileMap.
Вступ
Tilemap — це сітка плиток, яка використовується для створення макета гри. Є кілька переваг використання вузлів TileMapLayer для розробки ваших рівнів. По-перше, вони дають змогу малювати макет, «розмальовуючи» плитки на сітці, що набагато швидше, ніж розміщувати окремі вузли Sprite2D по одному. По-друге, вони дозволяють створювати набагато більші рівні, оскільки вони оптимізовані для малювання великої кількості плиток. Нарешті, ви можете додавати форми зіткнення, оклюзії та навігації до плиток, додаючи більше функціональних можливостей TileMap.
Вказівка TileSet у TileMapLayer
Якщо ви стежили за попередньою сторінкою Використання TileSets, у вас повинен бути ресурс TileSet, вбудований у вузол TileMapLayer. Це добре для створення прототипів, але в реальному проекті ви, як правило, матимете кілька рівнів, які повторно використовують той самий набір елементів.
Рекомендований спосіб повторного використання того самого TileSet у кількох вузлах TileMapLayer — зберегти TileSet на зовнішньому ресурсі. Для цього клацніть спадне меню поруч із ресурсом TileSet і виберіть Зберегти:
Збереження вбудованого ресурсу TileSet у файл зовнішнього ресурсу
Кілька шарів TileMap і налаштувань
Під час роботи з картами фрагментів зазвичай рекомендується використовувати кілька вузлів TileMapLayer, коли це доречно. Використання кількох шарів може бути корисним, наприклад, це дозволяє відрізнити плитки переднього плану від плиток фону для кращої організації. Ви можете розмістити одну плитку на шар у певному місці, що дає змогу перекривати кілька плиток разом, якщо у вас більше одного шару.
Кожен вузол TileMapLayer має кілька властивостей, які можна налаштувати:
Увімкнено: якщо
true, шар буде видно в редакторі та під час запуску проекту.TileSet Набір фрагментів, який використовується вузлом TileMapLayer.
Рендеринг
Початок сортування по осі Y: Вертикальне зміщення, яке використовується для сортування по осі Y на кожній плитці (у пікселях). Діє, лише якщо Y Sort Enabled у налаштуваннях CanvasItem має значення
true.X Draw Order Reversed Змінює порядок малювання плиток на осі X. Вимагає, щоб Y Sort Enabled у налаштуваннях CanvasItem було
true.Розмір квадранта візуалізації Квадрант — це група плиток, намальованих разом на одному CanvasItem з метою оптимізації. Цей параметр визначає довжину сторони квадрата в системі координат карти. Розмір квадранта не застосовується до TileMapLayer, відсортованого по осі Y, оскільки в цьому випадку плитки групуються за положенням Y.
Фізика
Collision Enabled Вмикає або вимикає зіткнення.
Використовувати кінематичні тіла, коли справжні форми зіткнення TileMapLayer будуть створені як кінематичні тіла.
Режим видимості зіткнень Чи видно форми зіткнень TileMapLayer чи ні. Якщо встановлено за замовчуванням, це залежить від параметрів налагодження колізій.
Перевпорядкування шарів
Ви можете змінити порядок шарів, перетягнувши їх вузол на вкладці «Сцена». Ви також можете перемикатися між вузлом TileMapLayer, над яким ви працюєте, за допомогою кнопок у верхньому правому куті редактора TileMap.
Примітка
Ви можете створювати, перейменовувати або змінювати порядок шарів у майбутньому, не впливаючи на наявні плитки. Проте будьте обережні, оскільки видалення шару також видаляє всі плитки, які були розміщені на шарі.
Відкриття редактора TileMap
Виберіть вузол TileMapLayer, а потім відкрийте панель TileMap у нижній частині редактора:
Відкриття панелі TileMap у нижній частині редактора. Спочатку потрібно вибрати вузол TileMapLayer.
Вибір плитки для фарбування
По-перше, якщо ви створили додаткові шари вище, переконайтеся, що ви вибрали шар, на якому хочете малювати:
Вибір шару для малювання в редакторі TileMap
Порада
У 2D-редакторі шари, які ви зараз не редагуєте з того самого вузла TileMapLayer, відображатимуться сірим кольором у редакторі TileMap. Ви можете вимкнути цю поведінку, натиснувши піктограму поруч із меню вибору шару (підказка Виділити вибраний шар TileMap).
Ви можете пропустити наведений вище крок, якщо ви не створили додаткові шари, оскільки перший шар вибирається автоматично під час входу в редактор TileMap.
Перш ніж ви зможете розмістити плитки в 2D-редакторі, ви повинні вибрати одну або кілька плиток на панелі TileMap, розташованій у нижній частині редактора. Для цього клацніть плитку на панелі TileMap або утримуйте кнопку миші, щоб вибрати кілька плиток:
Вибір плитки в редакторі TileMap клацанням
Порада
Як і в редакторах 2D і TileSet, ви можете панорамувати панель TileMap за допомогою середньої або правої кнопки миші та масштабувати за допомогою коліщатка миші або кнопок у верхньому лівому куті.
Ви також можете утримувати Shift, щоб додати до поточного виділення. Якщо ви вибираєте більше однієї плитки, кілька плиток розміщуватимуться кожного разу, коли ви виконуєте операцію малювання. Це можна використовувати для малювання структур, що складаються з кількох плиток, одним клацанням миші (наприклад, великих платформ або дерев).
Остаточний вибір не обов’язково має бути суміжним: якщо між виділеними плитками є порожній простір, він залишиться порожнім у візерунку, який буде намальовано у 2D-редакторі.
Вибір кількох плиток у редакторі TileMap, утримуючи ліву кнопку миші
Якщо ви створили альтернативні плитки у своєму TileSet, ви можете вибрати їх для малювання праворуч від базових плиток:
Вибір альтернативної плитки в редакторі TileMap
Нарешті, якщо ви створили колекцію сцен у TileSet, ви можете розмістити плитки сцен у TileMap:
Розміщення тайла сцени, що містить частинки, за допомогою редактора TileMap
Режими та інструменти малювання
Використовуючи панель інструментів у верхній частині редактора TileMap, ви можете вибрати між кількома режимами малювання та інструментами. Ці режими впливають на роботу під час клацання в 2D-редакторі, а не на самій панелі TileMap.
Зліва направо можна вибрати режими малювання та інструменти:
Вибір
Виберіть плитки, клацнувши одну плитку, або утримуючи ліву кнопку миші, щоб вибрати кілька прямокутників у 2D-редакторі. Зауважте, що порожній простір не можна виділити: якщо ви створюєте виділення прямокутником, буде виділено лише непорожні плитки.
Щоб додати до поточного виділення, утримуйте Shift і виберіть плитку. Щоб вилучити з поточного виділення, утримуйте Ctrl і виберіть плитку.
Потім виділення можна використовувати в будь-якому іншому режимі малювання, щоб швидко створити копії вже розміщеного візерунка.
Ви можете видалити вибрані плитки з TileMap, натиснувши Del.
Ви можете тимчасово перемкнути цей режим у режимі малювання, утримуючи Ctrl і виконуючи виділення.
Порада
You can copy and paste tiles that were already placed by performing a selection, pressing Ctrl + C then pressing Ctrl + V. The selection will be pasted after left-clicking. You can press Ctrl + V another time to perform more pastes this way. Right-click or press Escape to cancel pasting.
Фарба
Стандартний режим Paint дозволяє розміщувати плитки, клацаючи або утримуючи ліву кнопку миші.
Якщо клацнути правою кнопкою миші, поточну вибрану плитку буде стерто з карти плиток. Іншими словами, його замінить порожній простір.
Якщо ви вибрали кілька плиток у TileMap або за допомогою інструмента Selection, вони розміщуватимуться кожного разу, коли ви клацаєте або перетягуєте мишу, утримуючи натиснутою ліву кнопку миші.
Порада
У режимі Paint ви можете намалювати лінію, утримуючи Shift перш ніж утримуючи ліву кнопку миші, а потім перетягнувши мишу до кінцевої точки лінії. Це ідентично використанню інструмента «Лінія», описаного нижче.
Ви також можете намалювати прямокутник, утримуючи Ctrl і Shift перед утримуючи ліву кнопку миші, а потім перетягнувши мишу до кінцевої точки прямокутника. Це ідентично використанню інструмента «Прямокутник», описаного нижче.
Нарешті, ви можете вибрати існуючі плитки в 2D-редакторі, утримуючи Ctrl, а потім клацнувши плитку (або утримуючи та перетягуючи мишу). Це перемкне поточну намальовану плитку(и) на плитку(и), яку ви щойно клацнули. Це ідентично використанню інструмента вибору, описаного нижче.
лінія
Вибравши режим малювання лінії, ви можете малювати лінію, яка завжди має товщину в 1 плитку (незалежно від її орієнтації).
Якщо ви клацнете правою кнопкою миші в режимі малювання лінії, ви зітрете лінію.
Якщо ви вибрали кілька плиток у TileMap або за допомогою інструмента Selection, ви можете розмістити їх у повторюваному візерунку вздовж лінії.
Ви можете тимчасово перемкнути цей режим у режимі Paint або Eraser, утримуючи Shift, а потім малюючи.
Використовуйте інструмент лінії після вибору двох плиток, щоб намалювати платформи по діагоналі
Прямокутник
Після вибору режиму зафарбовування прямокутником ви можете малювати прямокутник, вирівняний за віссю.
Якщо ви клацнете правою кнопкою миші в режимі Rectangle Paint, ви зітрете прямокутник, вирівняний по осі.
Якщо ви вибрали кілька плиток у TileMap або за допомогою інструмента Selection, ви можете розмістити їх у вигляді повторюваного візерунка всередині прямокутника.
Ви можете тимчасово перемкнути цей режим у режимі Paint або Eraser, утримуючи Ctrl і Shift, а потім малюючи.
Залиття
Вибравши режим Bucket Fill, ви можете вибрати, чи обмежувати малювання лише суміжними ділянками, установивши прапорець Contiguous, який з’являється праворуч на панелі інструментів.
Якщо ввімкнути Суміжні (за замовчуванням), буде замінено лише відповідні плитки, які торкаються поточного виділення. Ця суміжна перевірка виконується по горизонталі та вертикалі, але не по діагоналі.
Якщо вимкнути Суміжні, усі плитки з однаковим ідентифікатором у всій TileMap буде замінено поточною вибраною плиткою. Якщо вибрати порожню плитку без прапорця Суміжні, замість неї буде замінено всі плитки в прямокутнику, який охоплює ефективну область TileMap.
Якщо ви клацнете правою кнопкою миші в режимі Bucket Fill, відповідні плитки буде замінено порожніми.
Якщо ви вибрали кілька плиток у TileMap або за допомогою інструмента Selection, ви можете розмістити їх у повторюваному візерунку в межах заповненої області.
Використання інструменту Bucket Fill
Пікер
Після вибору режиму вибору ви можете вибрати наявні плитки в 2D-редакторі, утримуючи Ctrl і клацнувши на плитці. Це призведе до зміни поточної намальованої плитки на плитку, яку ви щойно клацнули. Ви також можете вибрати кілька плиток одночасно, утримуючи ліву кнопку миші та сформувавши виділення прямокутника. Вибирати можна лише непорожні плитки.
Ви можете тимчасово перемкнути цей режим у режимі малювання, утримуючи Ctrl, а потім клацаючи або перетягуючи мишею.
Гумка
Цей режим поєднується з будь-яким іншим режимом малювання (фарба, лінія, прямокутник, заливка ковша). Коли ввімкнено режим стирання, під час клацання лівою кнопкою миші плитки замінюватимуться порожніми плитками замість малювання нових ліній.
Ви можете тимчасово перемкнути цей режим у будь-якому іншому режимі, клацнувши правою кнопкою миші замість лівої.
Малювання хаотично з використанням розсипу
Під час малювання ви можете додатково ввімкнути рандомізацію. Якщо ввімкнено, під час малювання між усіма поточними вибраними плитками буде вибрано випадкову плитку. Це підтримується інструментами Paint, Line, Rectangle і Bucket Fill. Для ефективної рандомізації малювання необхідно вибрати кілька плиток у редакторі TileMap або використати розсіювання (обидва підходи можна комбінувати).
Якщо Розсіювання встановлено на значення більше 0, існує ймовірність того, що плитка не буде розміщена під час малювання. Це можна використовувати для додавання періодичних неповторюваних деталей до великих територій (наприклад, додавання трави чи крихт на великій TileMap зверху вниз).
Приклад використання режиму Paint:
Виберіть із кількох разів для довільного вибору, а потім розфарбуйте, утримуючи ліву кнопку миші
Приклад використання режиму Bucket Fill:
Використання інструмента Bucket Fill з однією плиткою, але з увімкненою рандомізацією та розсіюванням
Примітка
Режим Eraser не враховує рандомізацію та розсіювання. Усі плитки в межах виділення завжди видаляються.
Збереження та завантаження готових розміщень плиток за допомогою шаблонів
Хоча ви можете копіювати та вставляти плитки, перебуваючи в режимі вибору, ви можете зберегти готові шаблони плиток, щоб одразу помістити разом. Це можна зробити на основі TileMap, вибравши вкладку Patterns у редакторі TileMap.
Щоб створити новий шаблон, перейдіть у режим виділення, виконайте виділення та натисніть Ctrl + C. Клацніть порожнє місце на вкладці Шаблони (навколо порожнього простору має з’явитися блакитний прямокутник фокусу), потім натисніть Ctrl + V:
Створення нового шаблону з виділення в редакторі TileMap
Щоб використати наявний шаблон, клацніть його зображення на вкладці Візерунки, переключіться в будь-який режим малювання, а потім клацніть лівою кнопкою миші десь у 2D-редакторі:
Розміщення існуючого шаблону за допомогою редактора TileMap
Подібно до вибору кількох плиток, візерунки повторюватимуться, якщо використовувати їх із режимами малювання «Лінія», «Прямокутник» або «Заливка ковша».
Примітка
Незважаючи на редагування в редакторі TileMap, шаблони зберігаються в ресурсі TileSet. Це дозволяє повторно використовувати шаблони в різних вузлах TileMapLayer після завантаження ресурсу TileSet, збереженого у зовнішньому файлі.
Автоматична обробка з’єднань плиток за допомогою ландшафтів
Щоб використовувати рельєф, вузол TileMapLayer повинен містити принаймні один набір рельєфу та рельєф у цьому наборі рельєфу. Перегляньте Створення наборів місцевості (автомозаїка), якщо ви ще не створили набір місцевості для TileSet.
Є 3 види режимів малювання, доступних для зв’язків із місцевістю:
З’єднати, де плитки з’єднуються з навколишніми плитками на тому самому TileMapLayer.
Шлях, де плитки з’єднані з плитками, намальованими одним штрихом (доки не відпущено кнопку миші).
Перевизначення окремих тайлів для вирішення конфліктів або врегулювання ситуацій, не охоплених системою рельєфу.
Режим Connect легший у використанні, але Path є більш гнучким, оскільки він дає більше контролю художнику під час малювання. Наприклад, Path може дозволити дорогам бути безпосередньо поруч одна з одною, не будучи з’єднаними одна з одною, тоді як Connect примусово з’єднає обидві дороги.
Вибір режиму підключення на вкладці Terrains редактора TileMap
Вибір режиму Path на вкладці Terrains редактора TileMap
Нарешті, ви можете вибрати конкретні плитки на місцевості, щоб вирішити конфлікти в певних ситуаціях:
Розмальовування певними плитками на вкладці Terrains редактора TileMap
Будь-яка плитка, для якої принаймні один біт має значення, встановлене для відповідного ідентифікатора ландшафту, з’явиться у списку плиток для вибору.
Обробка відсутніх плиток
Якщо ви видаляєте плитки з TileSet, на які посилається TileMap, TileMap відображатиме заповнювач, щоб вказати, що розміщено недійсний ідентифікатор плитки:
Відсутні плитки в редакторі TileMap через пошкодження посилання TileSet
Ці заповнювачі не відображаються у запущеному проекті, але дані плитки все ще зберігаються на диску. Це дозволяє безпечно закривати та знову відкривати такі сцени. Щойно ви повторно додасте плитку з відповідним ідентифікатором, плитки відображатимуться у новому вигляді.
Примітка
Відсутні заповнювачі плиток можуть не відображатися, доки ви не виберете вузол TileMapLayer і не відкриєте редактор TileMap.