Artbarian Games решила одну из самых раздражающих проблем жанра soulslike: резкий удар при падении. В Dark Roll 2 они внедрили деформируемую подушку, которая смягчает приземления. Решение — не простой визуальный эффект; это физическая система, которая сравнивает каждую вершину меша со SphereCollider, применяя квинтический smootherstep. Результат — отточенная механика, улучшающая отклик без ущерба для производительности.
Техника: квинтический smootherstep для предотвращения складок 🧮
Пользовательский скрипт проходит по вершинам меша и вычисляет их расстояние до сферического коллайдера. На основе этих данных применяется квинтическая интерполяция, которая сглаживает переход между деформированным состоянием и состоянием покоя. Это позволяет избежать видимых складок, которые появляются при линейной или кубической интерполяции. Кроме того, система позволяет независимо настраивать скорости деформации и восстановления. Таким образом, подушка может быстро прогибаться, но медленно возвращаться в исходное состояние, или наоборот, в зависимости от потребностей каждой поверхности. Оптимизация — ключевой момент: процесс выполняется только в кадрах, где есть контакт, что снижает нагрузку в сценариях с множеством объектов.
Потому что падение в пустоту больше не должно быть (слишком) болезненным 🛏️
В любой другой игре падение с башни означало бы наблюдать, как твоя полоска здоровья исчезает. В Dark Roll 2, напротив, ты приземляешься на невидимую подушку, которая будто сошла с рекламы вязкоэластичных матрасов. Персонаж погружается с достоинством, словно земля извиняется за то, что такая твердая. И самое лучшее: система не жалуется и не просит прибавки к зарплате. Она просто делает свою работу, сравнивая вершины, пока ты задаешься вопросом, почему тебе самому это не пришло в голову. Правда, не пытайся использовать её, чтобы прыгать выше; у подушки нет призвания быть батутом.