Manuals
Manuals




This translation is community contributed and may not be up to date. We only maintain the English version of the documentation. Read this manual in English

Карта плиток

Карта плиток (Tile Map) — це компонент (component), який дає змогу складати або малювати плитки з джерела плиток (Tile Source) на великій сітці. Карти плиток зазвичай використовують для створення оточення ігрових рівнів. Ви також можете використовувати форми колізій (Collision Shapes) із джерела плиток у своїх картах для виявлення колізій і фізичної симуляції (приклад).

Перш ніж створювати карту плиток, потрібно створити джерело плиток. Щоб дізнатися, як це зробити, зверніться до посібника з джерел плиток.

Створення карти плиток

Щоб створити нову карту плиток:

  • Клацніть правою кнопкою миші потрібне місце в браузері Assets, а потім виберіть New... ▸ Tile Map.
  • Задайте ім’я файлу.
  • Нова карта плиток автоматично відкриється в редакторі карт плиток.

    Нова карта плиток

  • У властивості Tile Source вкажіть підготовлений файл джерела плиток.

Щоб малювати плитками на карті плиток:

  1. Виберіть або створіть шар (Layer) для малювання в панелі Outline.
  2. Виберіть плитку, яку використовуватимете як пензель (натисніть Space, щоб показати палітру плиток), або виберіть кілька плиток, натиснувши й перетягнувши вказівник у палітрі, щоб створити прямокутний пензель із кількох плиток.

    Палітра

  3. Малюйте вибраним пензлем. Щоб стерти плитку, виберіть порожню плитку та використовуйте її як пензель або виберіть гумку (Edit ▸ Select Eraser).

    Малювання плитками

Ви можете вибирати плитки безпосередньо з шару та використовувати виділення як пензель. Утримуючи Shift, клацніть плитку, щоб вибрати її як поточний пензель. Утримуючи Shift, ви також можете натиснути й перетягнути вказівник, щоб вибрати блок плиток і використовувати його як більший пензель. Так само можна вирізати плитки, утримуючи Shift+Ctrl, або стирати їх, утримуючи Shift+Alt.

Щоб повернути пензель за годинниковою стрілкою, натисніть Z. Використовуйте X для горизонтального віддзеркалення пензля та Y для вертикального.

Вибір плиток

Додавання карти плиток до гри

Щоб додати карту плиток до гри:

  1. Створіть ігровий об’єкт (game object), який міститиме компонент карти плиток. Ігровий об’єкт може бути у файлі або створений безпосередньо в колекції (collection).
  2. Клацніть правою кнопкою миші корінь ігрового об’єкта та виберіть Add Component File.
  3. Виберіть файл карти плиток.

Використання карти плиток

Керування під час виконання

Ви можете керувати картами плиток під час виконання за допомогою різних функцій і властивостей (відомості про їх використання наведено в документації API).

Змінення плиток зі скрипту

Ви можете динамічно читати та записувати вміст карти плиток під час роботи гри. Для цього використовуйте функції tilemap.get_tile() і tilemap.set_tile():

local tile = tilemap.get_tile("/level#map", "ground", x, y)

if tile == 2 then
    -- Replace grass-tile (2) with dangerous hole tile (number 4).
    tilemap.set_tile("/level#map", "ground", x, y, 4)
end

Властивості карти плиток

Окрім властивостей Id, Position, Rotation і Scale, цей компонент має такі властивості:

Tile Source
Ресурс джерела плиток, який використовуватиметься для карти плиток.
Material
Матеріал для рендерингу карти плиток.
Blend Mode
Режим змішування, який використовуватиметься під час рендерингу карти плиток.

Режими змішування

Властивість Blend Mode визначає, як графіка компонента (component) змішується з графікою позаду нього. Доступні такі режими змішування з відповідними формулами:

Alpha
Звичайне змішування: src.a * src.rgb + (1 - src.a) * dst.rgb
Add
Освітлює тло значеннями кольорів відповідних пікселів компонента: src.rgb + dst.rgb
Multiply
Затемнює тло значеннями відповідних пікселів компонента: src.rgb * dst.rgb
Screen
Протилежність Multiply. Освітлює тло та значення відповідних пікселів компонента: src.rgb - dst.rgb * dst.rgb

Змінення властивостей

Карта плиток має низку властивостей, якими можна керувати за допомогою go.get() і go.set():

tile_source
Джерело плиток карти плиток (hash). Його можна змінити за допомогою властивості ресурсу джерела плиток і go.set(). Приклад наведено в довіднику API.
material
Матеріал карти плиток (hash). Його можна змінити за допомогою властивості ресурсу матеріалу й go.set(). Приклад наведено в довіднику API.

Константи матеріалу

Стандартний матеріал компонента tilemap має такі константи, які можна змінювати за допомогою go.set() або go.animate() (докладніше див. у посібнику з матеріалів). Приклади:

go.set("#tilemap", "tint", vmath.vector4(1,0,0,1))
go.animate("#tilemap", "tint", go.PLAYBACK_LOOP_PINGPONG, vmath.vector4(1,0,0,1), go.EASING_LINEAR, 2)
tint
Колірний відтінок карти плиток (vector4). Тип vector4 використовується для подання відтінку, де x, y, z і w відповідають червоній, зеленій, синій та альфа-складовій відтінку.

Налаштування проєкту

У файлі game.project є кілька налаштувань проєкту, пов’язаних із картами плиток.

Зовнішні інструменти

Існують зовнішні редактори карт і рівнів, які можуть експортувати безпосередньо в карти плиток Defold:

Tiled

Tiled — відомий і широко використовуваний редактор ортогональних, ізометричних і шестикутних карт. Tiled підтримує широкий набір можливостей і може експортувати безпосередньо в Defold. Докладніше про експорт даних карт плиток і додаткових метаданих читайте в цій статті блогу користувача Defold «goeshard»

Tilesetter

Tilesetter можна використовувати для автоматичного створення повних наборів плиток із простих базових плиток. Він також має редактор карт, який може експортувати безпосередньо в Defold.