termin-collision¶
termin-collision — библиотека обнаружения столкновений для движка Termin.
Основная модель:
- Коллайдеры (
Collider) — абстрактный интерфейс с запросами closest-point и raycast. - Примитивы (
ColliderPrimitive) — Box, Sphere, Capsule, ConvexHull с support-функциями. - Составные —
AttachedCollider(привязка к entity transform),UnionCollider(объединение). - CollisionWorld — централизованное управление коллайдерами, broad-phase через BVH, narrow-phase через аналитику и GJK/EPA.
- Scene Extension — CollisionWorld встраивается в
tc_sceneкак extension, доступен через C API.
Документация описывает архитектуру, алгоритмы и публичный API текущей реализации.
Рекомендуемый маршрут¶
| # | Раздел | Описание |
|---|---|---|
| 1 | Архитектура | Слои, поток данных, broad/narrow phase |
| 2 | Коллайдеры | Типы коллайдеров, transform-модель, double dispatch |
| 3 | Алгоритмы | SAT, GJK, EPA, Quickhull, Sutherland-Hodgman |
| 4 | CollisionWorld | BVH, управление коллайдерами, детекция контактов |
| 5 | C API | Публичные C-заголовки, scene extension |
| 6 | Python API | nanobind-биндинги, модули colliders и collision |