Up to date
This page is up to date for Godot 4.2
.
If you still find outdated information, please open an issue.
Настройка типов узлов при помощи суффиксов в названиях¶
Часто при редактировании сцены есть общие задачи, которые необходимо выполнить после экспорта:
Добавление обнаружения столкновений объектов.
Настройка объектов в качестве навигационной сетки.
Deleting nodes that are not used in the game engine (like specific lights used for modeling).
To simplify this workflow, Godot offers several suffixes that can be added to the names of the objects in your 3D modeling software. When imported, Godot will detect suffixes in object names and will perform actions automatically.
Предупреждение
All the suffixes described below are case-sensitive.
Удаление узлов (-noimp)¶
Объекты с суффиксом`` -noimp`` будут удалены во время импорта независимо от их типа. Они не появятся в импортированной сцене.
This is equivalent to enabling Skip Import for a node in the Advanced Import Settings dialog.
Создание столкновений (-col, -convcol, -colonly, -convcolonly)¶
Параметр -col
будет работать только для объектов Mesh. Если это обнаружено, будет добавлен дочерний статический узел столкновения, использующий ту же геометрию, что и сетка. Это создаст форму столкновения треугольной сетки, которая является медленным, но точным вариантом для обнаружения столкновений. Этот параметр обычно подходит для геометрии уровня (но см. также -colonly
ниже).
The option -convcol
will create a ConvexPolygonShape3D instead of
a ConcavePolygonShape3D. Unlike triangle meshes which can be concave,
a convex shape can only accurately represent a shape that doesn't have any
concave angles (a pyramid is convex, but a hollow box is concave). Due to this,
convex collision shapes are generally not suited for level geometry. When
representing simple enough meshes, convex collision shapes can result in better
performance compared to a triangle collision shape. This option is ideal for
simple or dynamic objects that require mostly-accurate collision detection.
However, in both cases, the visual geometry may be too complex or not smooth enough for collisions. This can create physics glitches and slow down the engine unnecessarily.
To solve this, the -colonly
modifier exists. It will remove the mesh upon
importing and will create a StaticBody3D collision instead.
This helps the visual mesh and actual collision to be separated.
The option -convcolonly
works in a similar way, but will create a
ConvexPolygonShape3D instead using convex decomposition.
With Collada files, the option -colonly
can also be used with Blender's
empty objects. On import, it will create a StaticBody3D with a
collision node as a child. The collision node will have one of a number of
predefined shapes, depending on Blender's empty draw type:
Single arrow will create a SeparationRayShape3D.
Cube will create a BoxShape3D.
Image will create a WorldBoundaryShape3D.
Sphere (and the others not listed) will create a SphereShape3D.
По возможности, попробуйте использовать несколько примитивных форм столкновения вместо треугольной сетки (triangle mesh) или выпуклых фигур (convex shapes). Примитивные формы часто имеют лучшую производительность и надёжность.
Примечание
For better visibility on Blender's editor, you can set the "X-Ray" option on collision empties and set some distinct color for them by changing Edit > Preferences > Themes > 3D Viewport > Empty.
If using Blender 2.79 or older, follow these steps instead: User Preferences > Themes > 3D View > Empty.
См.также
См. Формы столкновений (3D) для исчерпывающего обзора форм столкновения.
Create Occluder (-occ, -occonly)¶
If a mesh is imported with the -occ
suffix an Occluder3D node
will be created based on the geometry of the mesh, it does not replace the mesh.
A mesh node with the -occonly
suffix will be converted to an
Occluder3D on import.
Создать VehicleBody (-vehicle) (тело-транспортное средство)¶
A mesh node with the -vehicle
suffix will be imported as a child to a
VehicleBody3D node.
Создать VehicleWheel (-wheel) (колесо транспортного средства)¶
A mesh node with the -wheel
suffix will be imported as a child to a
VehicleWheel3D node.
Твердое тело (-rigid)¶
A mesh node with the -rigid
suffix will be imported as a RigidBody3D.
Цикл анимации (-loop, -cycle)¶
Animation clips in the source 3D file that start or end with the token loop
or cycle
will be imported as a Godot Animation with the loop flag set.
Unlike the other suffixes described above, this does not require a hyphen.
В Blender для этого требуется использование NLA редактора и именование Действия (Action) с суффиксом или префиксом loop
или cycle
.