ОПИСАНИЕ:
Geometry Collection State Saver — инструмент для Unreal Engine, который позволяет сохранять и восстанавливать реальное разрушенное состояние Geometry Collection.
Плагин запоминает обломки после физического разрушения, их положения, повороты, внутренние связи, состояние кластеров и позволяет вернуть тот же разрушенный вид после выгрузки и повторной загрузки области мира.
Дополнительно плагин умеет создавать поверх разрушенной кучи обломков отдельную процедурную walkable-коллизию, по которой стандартный Blueprint Character может ходить, бегать, приземляться и прыгать без застревания в физических осколках.
Возможности:
• Сохранение фактического состояния разрушенных обломков
• Восстановление разрушенного вида без повторного применения разрушения
• Поддержка сохранения данных в обычный SaveGame
• Восстановление после выгрузки и загрузки World Partition
• Заморозка обломков после восстановления
• Проверка наличия сохранённого состояния
• Очистка сохранённых данных по уникальному имени состояния
• Работа с Blueprint-акторами
• Поддержка пользовательских Blueprint-нод
• Защита от ложного успешного восстановления цельного объекта вместо обломков
• Создание процедурной коллизии поверх основной кучи обломков
• Игнорирование дальних одиночных обломков при построении поверхности
• Создание единой связной walkable-поверхности без отдельных островков
• Поддержка стандартного Character Movement: ходьба, приземление, повторный прыжок
• Отключение блокировки Pawn у исходной Geometry Collection, чтобы персонаж взаимодействовал только с процедурной поверхностью
• Проверка созданной поверхности настоящим Capsule Sweep
• Debug-отрисовка зелёной сетки созданной процедурной поверхности
Blueprint-ноды:
• Save Geometry Collection State
Сохраняет текущее разрушенное состояние Geometry Collection во внутреннюю память плагина по уникальному имени состояния.
• Restore Geometry Collection State
Восстанавливает Geometry Collection из внутренней памяти плагина по уникальному имени состояния.
• Freeze Geometry Collection State
Замораживает Geometry Collection, отключает симуляцию и фиксирует обломки на месте.
• Has Saved Geometry Collection State
Проверяет, есть ли сохранённое состояние во внутренней памяти.
• Clear Geometry Collection State
Удаляет сохранённое состояние из внутренней памяти по уникальному имени состояния.
• Save Geometry Collection State To SaveGame Data
Сохраняет реальное разрушенное состояние Geometry Collection в структуру, которую можно записать в обычный SaveGame.
• Restore Geometry Collection State From SaveGame Data
Восстанавливает Geometry Collection из данных SaveGame и возвращает обломки на сохранённые места.
• Create Simplified Debris Collision
Создаёт отдельную процедурную walkable-коллизию поверх основной кучи разрушенных обломков.
Нода строит компактную зелёную процедурную поверхность, проверяет её Capsule Sweep’ом стандартного персонажа и настраивает как
Исходная Geometry Collection переводится в режим
Параметры ноды:
• Geometry Collection Component
Geometry Collection, по разрушенному состоянию которой строится процедурная поверхность.
• Cell Size
Размер ячейки сетки процедурной поверхности.
Меньшее значение даёт более детальную поверхность, но создаёт больше вершин и треугольников.
Большее значение делает поверхность проще и дешевле, но менее точной.
Рекомендуемое значение:
• Surface Offset
Небольшой подъём поверхности над фактическими обломками.
Используется, чтобы коллизия не пересекалась с камнями.
Рекомендуется держать значение небольшим:
По умолчанию:
• Coverage Padding
Дополнительный радиус покрытия вокруг основной кучи обломков.
Помогает поверхности закрывать края разрушения, но слишком большое значение может сделать поверхность слишком широкой.
По умолчанию:
• Smooth Strength
Сила базового сглаживания поверхности.
Чем выше значение, тем мягче переходы между соседними вершинами.
Слишком большое значение может сделать поверхность менее точно повторяющей обломки.
По умолчанию:
• Smooth Iterations
Количество проходов базового сглаживания.
Больше итераций — более плавная поверхность, но выше стоимость генерации.
По умолчанию:
• Top Smooth Strength
Дополнительное сглаживание верхней ходовой части поверхности.
Позволяет сделать движение персонажа более плавным, не меняя общую форму покрытия.
Параметр не должен поднимать поверхность выше фактически измеренного верха обломков.
• Edge Falloff Distance
Расстояние, на котором края поверхности плавно опускаются к земле.
Нужно, чтобы у procedural collision не было резких вертикальных стенок, в которые упирается капсула персонажа.
По умолчанию:
• Character Walkable Angle
Максимальный допустимый угол поверхности для персонажа.
Используется при проверке нормалей треугольников и совместимости с Character Movement.
Обычно соответствует
По умолчанию:
• Disable Original Pawn Collision
Если включено, исходная Geometry Collection перестаёт блокировать
Это нужно, чтобы персонаж ходил только по процедурной поверхности и не застревал в настоящих физических обломках.
Рекомендуется оставить включённым.
• Draw Debug
Показывает зелёную debug-сетку созданной процедурной поверхности.
Используется только для визуальной проверки.
На саму коллизию не влияет.
• Created Components Count
Возвращает количество созданных procedural collision components.
При успешном создании обычно возвращает
• Return Value
Возвращает
Возвращает
• Clear Simplified Debris Collision
Удаляет созданную процедурную коллизию с актора и восстанавливает сохранённые collision-настройки Pawn у Geometry Collection.
Используется, если нужно пересоздать поверхность, очистить разрушенный объект или вернуть актор в исходное состояние.
Рекомендуемый Blueprint-порядок:
После разрушения:
После загрузки уровня или World Partition:
Процедурная коллизия не сохраняется в SaveGame как готовый компонент. Её нужно пересоздавать после восстановления разрушенного состояния.
Плагин запоминает обломки после физического разрушения, их положения, повороты, внутренние связи, состояние кластеров и позволяет вернуть тот же разрушенный вид после выгрузки и повторной загрузки области мира.
Дополнительно плагин умеет создавать поверх разрушенной кучи обломков отдельную процедурную walkable-коллизию, по которой стандартный Blueprint Character может ходить, бегать, приземляться и прыгать без застревания в физических осколках.
Возможности:
• Сохранение фактического состояния разрушенных обломков
• Восстановление разрушенного вида без повторного применения разрушения
• Поддержка сохранения данных в обычный SaveGame
• Восстановление после выгрузки и загрузки World Partition
• Заморозка обломков после восстановления
• Проверка наличия сохранённого состояния
• Очистка сохранённых данных по уникальному имени состояния
• Работа с Blueprint-акторами
• Поддержка пользовательских Blueprint-нод
• Защита от ложного успешного восстановления цельного объекта вместо обломков
• Создание процедурной коллизии поверх основной кучи обломков
• Игнорирование дальних одиночных обломков при построении поверхности
• Создание единой связной walkable-поверхности без отдельных островков
• Поддержка стандартного Character Movement: ходьба, приземление, повторный прыжок
• Отключение блокировки Pawn у исходной Geometry Collection, чтобы персонаж взаимодействовал только с процедурной поверхностью
• Проверка созданной поверхности настоящим Capsule Sweep
• Debug-отрисовка зелёной сетки созданной процедурной поверхности
Blueprint-ноды:
• Save Geometry Collection State
Сохраняет текущее разрушенное состояние Geometry Collection во внутреннюю память плагина по уникальному имени состояния.
• Restore Geometry Collection State
Восстанавливает Geometry Collection из внутренней памяти плагина по уникальному имени состояния.
• Freeze Geometry Collection State
Замораживает Geometry Collection, отключает симуляцию и фиксирует обломки на месте.
• Has Saved Geometry Collection State
Проверяет, есть ли сохранённое состояние во внутренней памяти.
• Clear Geometry Collection State
Удаляет сохранённое состояние из внутренней памяти по уникальному имени состояния.
• Save Geometry Collection State To SaveGame Data
Сохраняет реальное разрушенное состояние Geometry Collection в структуру, которую можно записать в обычный SaveGame.
• Restore Geometry Collection State From SaveGame Data
Восстанавливает Geometry Collection из данных SaveGame и возвращает обломки на сохранённые места.
• Create Simplified Debris Collision
Создаёт отдельную процедурную walkable-коллизию поверх основной кучи разрушенных обломков.
Нода строит компактную зелёную процедурную поверхность, проверяет её Capsule Sweep’ом стандартного персонажа и настраивает как
WorldStatic collision component, блокирующий Pawn.Исходная Geometry Collection переводится в режим
Pawn: Ignore, чтобы персонаж не сталкивался с настоящими осколками, а ходил только по созданной процедурной поверхности.Параметры ноды:
• Geometry Collection Component
Geometry Collection, по разрушенному состоянию которой строится процедурная поверхность.
• Cell Size
Размер ячейки сетки процедурной поверхности.
Меньшее значение даёт более детальную поверхность, но создаёт больше вершин и треугольников.
Большее значение делает поверхность проще и дешевле, но менее точной.
Рекомендуемое значение:
30.• Surface Offset
Небольшой подъём поверхности над фактическими обломками.
Используется, чтобы коллизия не пересекалась с камнями.
Рекомендуется держать значение небольшим:
1–3.По умолчанию:
2.• Coverage Padding
Дополнительный радиус покрытия вокруг основной кучи обломков.
Помогает поверхности закрывать края разрушения, но слишком большое значение может сделать поверхность слишком широкой.
По умолчанию:
50.• Smooth Strength
Сила базового сглаживания поверхности.
Чем выше значение, тем мягче переходы между соседними вершинами.
Слишком большое значение может сделать поверхность менее точно повторяющей обломки.
По умолчанию:
0.5.• Smooth Iterations
Количество проходов базового сглаживания.
Больше итераций — более плавная поверхность, но выше стоимость генерации.
По умолчанию:
6.• Top Smooth Strength
Дополнительное сглаживание верхней ходовой части поверхности.
Позволяет сделать движение персонажа более плавным, не меняя общую форму покрытия.
0.0 — поверхность максимально повторяет обломки.0.2–0.4 — лёгкое сглаживание.0.5–0.7 — заметно более плавная ходьба.1.0 — максимальное сглаживание верхней части.Параметр не должен поднимать поверхность выше фактически измеренного верха обломков.
• Edge Falloff Distance
Расстояние, на котором края поверхности плавно опускаются к земле.
Нужно, чтобы у procedural collision не было резких вертикальных стенок, в которые упирается капсула персонажа.
По умолчанию:
60.• Character Walkable Angle
Максимальный допустимый угол поверхности для персонажа.
Используется при проверке нормалей треугольников и совместимости с Character Movement.
Обычно соответствует
Walkable Floor Angle у Character Movement Component.По умолчанию:
45.• Disable Original Pawn Collision
Если включено, исходная Geometry Collection перестаёт блокировать
Pawn.Это нужно, чтобы персонаж ходил только по процедурной поверхности и не застревал в настоящих физических обломках.
Рекомендуется оставить включённым.
• Draw Debug
Показывает зелёную debug-сетку созданной процедурной поверхности.
Используется только для визуальной проверки.
На саму коллизию не влияет.
• Created Components Count
Возвращает количество созданных procedural collision components.
При успешном создании обычно возвращает
1.• Return Value
Возвращает
true, если процедурная поверхность успешно создана, блокирует Pawn и проходит проверку как walkable floor для Character Movement.Возвращает
false, если коллизия не была создана или не прошла проверку Capsule Sweep / walkable normal.• Clear Simplified Debris Collision
Удаляет созданную процедурную коллизию с актора и восстанавливает сохранённые collision-настройки Pawn у Geometry Collection.
Используется, если нужно пересоздать поверхность, очистить разрушенный объект или вернуть актор в исходное состояние.
Рекомендуемый Blueprint-порядок:
После разрушения:
Destroy / Apply Strain → Delay / Freeze → Save Geometry Collection State To SaveGame Data → Create Simplified Debris CollisionПосле загрузки уровня или World Partition:
BeginPlay → Load SaveGame → Restore Geometry Collection State From SaveGame Data → Delay → Freeze Geometry Collection State → Create Simplified Debris CollisionПроцедурная коллизия не сохраняется в SaveGame как готовый компонент. Её нужно пересоздавать после восстановления разрушенного состояния.
Платформа: UE 5.7-5.8
Формат: .uplugin
Производительность: Зависит от мощности ПК
Настройки: Сохранение состояния Geometry Collection, восстановление состояния Geometry Collection, заморозка состояния, сохранение в SaveGame, восстановление из SaveGame, проверка состояния, очистка состояния. Для процедурной коллизии рекомендуется подбирать значение параметров
Cell Size и Smooth Iterations в зависимости от размера кучи обломков.