Вопрос по поводу Foliage

Начинающий
Статус
Оффлайн
Регистрация
14 Апр 2024
Сообщения
53
Реакции[?]
8
Поинты[?]
10K
Здравствуйте, русы

Как сделать механику рубки деревьях как в the Forest и Ark Survival?

Задача такая

1. Есть ландшафт, на котором десятки тысяч foliage instanced деревьев

2. Нужно чтобы при interaction выбранное дерево уничтожалось, а на его месте спавнились бы дрова

Решение, что у меня есть технически работает. Я могу уничтожить выбранное дерево и поставить на его место actor blueprint с здоровьем, интерфейсом урона, логикой спавна дров при падении переменной здоровья.

Однако уничтожение единицы фолиажа заставляет его всего заново простраиваться, в результате чего происходит посадка фпс на несколько секунд.

Есть ли какой-нибудь другой способ?

Пробовал спавнить блюпринт акторы деревьев с готовой логикой, но так как это не инстансд меши - фпс снижается до неиграбельных значений и иметь десятки тысяч деревьев не получается.
 
Пользователь
Статус
Оффлайн
Регистрация
23 Авг 2020
Сообщения
82
Реакции[?]
164
Поинты[?]
63K
видел решение, просто скидывать "срубленное" дерево под землю - менять положение по горизонтали
 
Начинающий
Статус
Оффлайн
Регистрация
14 Апр 2024
Сообщения
53
Реакции[?]
8
Поинты[?]
10K
видел решение, просто скидывать "срубленное" дерево под землю - менять положение по горизонтали
Спасибо за помощь
Я попробовал этот способ, но к сожалению игра всеравно подвисает на несколько секунд


upd
Нашел решение, возможно кому-то поможет:

До 10К инстансев конкретного типа фолиажа - подвисания терпимые. Все упирается в количество, чем меньше - тем лучше. Что делать, если инстансев нужно много?

Можно схитрить и добавить несколько одинаковых внешне, но с разным названием мешей в фолиаж эдитор, таким образом можно будет использовать каждый из них до 10К.

Сейчас сделал 30К инстансев и работает неплохо. 10К это так, порог терпимости, лучше конечно брать до тысячи инстансев.
 
Последнее редактирование:
Сверху Снизу