Working Cloaks in C6 Interlude

Разыгрываем старый родной вариант?

  • Да

  • Нет

  • Разыграть нормальный красивый


Results are only viewable after voting.

NevesOma

Heir
Project Partner
Project Partner
Game Client Dev

Завёз рабочие плащи на Interlude через родной слот плащей который в клиенте по сути был вырезан и нормально не использовался. Единственное можно было бы видеть это на видосе из прелюд альфы 2002 или типа такого, вот эти:
1790806415452.webp

Это не статичная модель. Есть физика с настройкой коллизии, силы, пружин, жёсткости, гибкости и реакции на движение. Под разные формы плащей можно делать отдельные настройки. По поведению старался приблизить к High Five и также попотел и создал доп. скины как на хф (хотя идея изначально была поставить на рельсы базовый плащ из ИЛ)

1790806325886.webp

По оптимизации физика считается только у ближайших к камере плащей. Дальние работают без физики и сглаживания. При падении FPS количество активных плащей автоматически уменьшается и потом возвращается обратно. Также ускорено сглаживание, убраны лишние debug расчёты, облегчены меши и добавлен кэш по костям

По тестам один плащ с физикой после оптимизации около 37 мкс вместо ~100 мкс, без физики около 16 мкс. Сам персонаж для сравнения около 44 мкс.
  • 26 плащей в кадре около 0.95 мс и ~180 FPS
  • 60 плащей около 1.6 мс и ~130 FPS
  • 131 плащ около 2.1 мс и ~80 FPS

Для понимания по нагрузке это не как ещё один персонаж целиком. Обычная шапка или скин стоят примерно 5–10 мкс, плащ без физики около 16 мкс, с физикой около 37 мкс. При лимите в 30 активных симуляций остальные плащи уже считаются в упрощённом режиме, поэтому нагрузка не растёт линейно вместе с количеством людей в кадре. Но такова их цена, зато не кусок картонки за спиной который прикреплен к голове (там тоже пластин хватает), не шибко идеально, но завелось :)

Интерфейсы не нужны, в датнике работает как базовый плащ который и так в игре существует, на сервере юзается его тип и слот (можно комбинировать с аксессурами)

Родной плащ тоже завёлся, возможно его разыграем позднее. Чуть позже отдельно опишу сам метод и как именно удалось это завести на Interlude

1790806451429.webp
1790806468972.webp





I got working cloaks running on Interlude through the original cloak slot that was basically cut/unused in the client. The only place you could really see something similar was in old Prelude Alpha footage from around 2002.

This is not a static mesh. The cloaks have actual simulation with adjustable collision, force, spring stiffness, flexibility, movement response and overall behavior.
Different cloak shapes can use different settings. I tried to get the behavior closer to High Five, and I also spent quite a bit of time making additional cloak variations like H5, even though the original idea was simply to get the basic Interlude cloak working properly.

For optimization, physics is calculated only for the cloaks closest to the camera. Distant cloaks run without physics and smoothing. If FPS drops, the number of actively simulated cloaks is reduced automatically and restored again when performance recovers. Smoothing calculations were also optimized, unnecessary debug calculations were removed, meshes were simplified and bone data is cached.
In testing, one cloak with physics went from around 100 μs down to about 37 μs after optimization. Without physics it is around 16 μs. For comparison, the character itself is around 44 μs in the same test.

  • 26 cloaks on screen: about 0.95 ms at ~180 FPS
  • 60 cloaks: about 1.6 ms at ~130 FPS
  • 131 cloaks: about 2.1 ms at ~80 FPS

For reference, the load is not equal to adding another full character. A normal hat or skin is roughly 5–10 μs, a cloak without physics is around 16 μs, and a cloak with physics is around 37 μs. With the limit set to 30 active simulations, the rest are already processed in simplified mode, so the load does not scale linearly with the number of players on screen.

That is basically the cost of having actual moving cloaks instead of a piece of cardboard attached behind the character’s head. It is not perfectly ideal yet, but it works :)

No custom interface is needed. In the dat files it works like the original cloak that already exists in the game, and on the server side it uses its own type and slot, so it can also be combined with accessories.
The original Interlude cloak is working too. Maybe we will give that one away later. I’ll describe the method and how exactly I got it working on Interlude a bit later
 
Back
Top