

Hitbox Api
Активный0.0
Установок
Последнее обновление
Версии
Hitbox Api
Добавление расширенных систем коллизий для Minecraft
Модификация предоставляет разработчикам комплексный набор геометрических примитивов для точного определения столкновений в игровом пространстве.
Основные возможности:
- Ориентированные ограничивающие контуры (OBB) - прямоугольные области с произвольной ориентацией
- Сферы - классические круглые области столкновений
- Капсулы - цилиндрические формы с закруглёнными концами
- Лучи - линейные сегменты для проверки видимости и трассировки
- Составные коллайдеры - возможность комбинировать несколько примитивов в одну сложную форму, включая вложенные структуры
Применение в разработке
Для использования функционала в любом месте игры, где требуется проверка столкновений, достаточно создать объект коллайдера и применить методы из ColliderUtil для определения факта пересечения.
Для работы с сущностями можно задействовать систему кэширования через присоединение HitboxDataAttachments#COLLISION. Сохранённые формы столкновений становятся видимыми при нажатии комбинации клавиш F3 + B. Следует учитывать, что данные кэша не сохраняются между сеансами игры.
Производительность системы
Методика тестирования:
- JMH бенчмаркинг
Тестовое окружение:
- Процессор: AMD R5 5600G
- Оперативная память: 32 ГБ
- JDK: Microsoft OpenJDK 21.0
Параметры тестирования:
- Разогрев: 5 циклов
- Основные замеры: 5 циклов
Объекты тестирования:
- Определение столкновений между однотипными коллайдерами
Результаты производительности
Тип коллайдера | Результат | Погрешность | Единица измерения |
---|---|---|---|
Выровненные по осям BBOX | 3561837865.930 | 157982649.213 | оп/с |
Капсула | 22350681.198 | 238993.658 | оп/с |
Повёрнутая капсула | 16842309.523 | 103959.918 | оп/с |
Ориентированный BBOX | 5528493.224 | 64548.996 | оп/с |
Повёрнутый ориентированный BBOX | 4648963.750 | 111369.535 | оп/с |
Сфера | 119556589.705 | 1711146.560 | оп/с |
Важно: более высокие значения указывают на лучшую производительность. Термин "Повёрнутый" означает вращение коллайдера с соответствующим пересчётом векторных величин.