Up to date
This page is up to date for Godot 4.2
.
If you still find outdated information, please open an issue.
Використання GridMap (Карт ґратки)¶
Вступ¶
Gridmap (Карта ґратки) - це інструмент для створення рівнів 3D-ігор, подібно до, TileMap (Карти плиток) в 2D. Ви починаєте з попередньо визначеної колекції 3D-мешів (MeshLibrary), які можна розміщувати на ґратці і будувати рівень так, ніби це необмежена кількість блоків Lego.
Як і плиткам з карти плиток, мешам також можна додати зіткнення та навігацію.
Приклад проекту¶
To learn how GridMaps work, start by downloading the sample project: gridmap_starter.zip.
Розпакуйте цей проект і додайте його до Керівника проектів за допомогою кнопки "Імпорт".
Створення MeshLibrary (Бібліотеки мешів)¶
To begin, you need a MeshLibrary, which is a collection of individual meshes that can be used in the gridmap. Open the "mesh_library_source.tscn" scene to see an example of how to set up the mesh library.
As you can see, this scene has a Node3D node as its root, and a number of MeshInstance3D node children.
Якщо вам не потрібна фізика у сцені, то ви закінчили. Однак у більшості випадків вам захочеться призначити мешам тіла зіткнення.
Зіткнення¶
You can manually assign a StaticBody3D and CollisionShape3D to each mesh. Alternatively, you can use the "Mesh" menu to automatically create the collision body based on the mesh data.
Відзначимо, що Опукле тіло зіткнення буде краще працювати для простих мешів (сіток). Для складніших фігур виберіть Створити увігнуте статичне тіло. Після того, як кожен меш отримає фізичне тіло та форму зіткнення, ваша бібліотека мешів буде готова до використання.
Матеріали¶
При генеруванні бібліотеки мешів використовуються тільки матеріали мешів. Матеріали, встановлені на вузлі, будуть проігноровані.
Експортування MeshLibrary¶
To export the library, click on Scene > Export As... > MeshLibrary..., and save it as a resource.
Ви можете знайти вже експортований MeshLibrary в проекті під назвою MeshLibrary.tres
.
Використання GridMap¶
Створіть нову сцену та додайте вузол GridMap. Додайте бібліотеку мешів, перетягнувши файл ресурсу з панелі Файлової системи у властивість "MeshLibrary" в Інспекторі.
Властивість "Cell/Size" має бути виставлена під розмір ваших мешів. В цьому занятті ви можете не змінювати її значення. Зніміть галочку "Увімкнено" з властивості "Center Y".
Now you can start designing the level by choosing a tile from the palette and placing it with Left-Click in the editor window. Use Right-click to remove a tile.
Use the arrows next to the "GridMap" menu to change the floor that you are working on.
Натисніть на меню Карта ґратки, щоб побачити опції та параметри. Наприклад, натискання S обертає плитку навколо осі y.
Утримуючи Shift та обводячи лівою кнопкою миші, можна намалювати поле виділення. Ви можете дублювати, або очищати, вибрану область за допомогою відповідних параметрів меню.
У меню також можна змінити вісь, на якій ви малюєте, а також змістити площину малювання вище, або нижче, по осі.
Використання GridMap в коді¶
Докладніше про методи та змінні-члени вузла дивіться в GridMap.