Open Dynamics Engine
Open Dynamics Engine | |
---|---|
Тип | Физический движок |
Написана на | C++ |
Операционная система | Кроссплатформенное программное обеспечение |
Первый выпуск | 8 мая2001 |
Аппаратная платформа | кроссплатформенность |
Последняя версия | 0.16.3 (19 декабря2022) |
Репозиторий | bitbucket.org/odedevs/ode |
Лицензия | BSD licenseиLGPL |
Сайт | ode.org |
Медиафайлы на Викискладе |
Open Dynamics Engine (ODE)— это открытыйфизический движок,распространяемый бесплатно в виде динамически подключаемой библиотеки. Его основными компонентами являются система динамикиабсолютно твёрдого телаи система обнаружения столкновений.
Например, ODE хорошо подходит для симуляции транспортных средств, существ с ногами и движущихся объектов в изменяемом окружении виртуального пространства. ODE имеет очень высокую стабильность интегрирования, поэтому ошибки симуляции не должны выходить из под контроля. С физической точки зрения это значит, что система не должна «взрываться» без причины.
ODE придаёт больше значение скорости и стабильности, чем физической точности. Он быстр, гибок и прост. Движок относится ксвободному программному обеспечениюи распространяется по двум лицензиям:BSD licenseиLGPL.
Разработка ODE была начата в 2001 году. Движок успешно используется во многих приложениях и играх, например, вToribash,BloodRayne 2,Call of Juarez,серии игр S.T.A.L.K.E.R.,World of Goo.
Возможности и особенности
[править|править код]- Имеет встроенную систему определения столкновений.
- Возможность использовать свою систему определения столкновений.
- Имеет C интерфейс (хотя почти вся ODE написана на C++).
- C++ интерфейс поверх C интерфейса.
- Написано множество юнит тестов, и много пишутся сейчас.
- Специфические оптимизации для различных платформ.
- Поддерживаемые базовые геометрические формы:
- Луч(ray)
- Плоскость(plane)
- Параллелепипед(box)
- Сфера(sphere)
- Капсула (capsule,цилиндр с двумя полусферами на концах)
- Цилиндр(cylinder,реализован в нестабильном варианте)
- Выпуклыймногогранник(convex)
- Карта высот (heightmap)
- Треугольная сетка (triangle mesh,динамические сетки и обнаружение столкновений для двух сеток пока реализованы не до конца)
- Поддерживаемые типы соединений (joints) твёрдых тел
- Контактное соединение (между соприкасающимися телами)
- Шаровое шарнирное соединение (ball joint,соединяет тела в одной точке, не ограничивая вращения)
- Шарнир(hinge joint,соединение с одной осью вращения)
- Двухосное соединение (hinge2 joint,соединение с двумя осями вращения, которое часто используют для реализации автомобильной подвески)
- Кардан(universal joint)
- Фиксирующее соединение (fixed joint)
- Угловой мотор (angular motor,управляет относительным вращением двух тел)
- Телескопическое соединение (piston joint)
Примечания
[править|править код]Ссылки
[править|править код]- Домашняя страница проекта ODEАрхивная копияот 27 сентября 2019 наWayback Machine
- Wiki-ресурс проекта
- Наиболее полный мануал поддерживаемый сообществом
- Документация к версии 0.5 на русскомАрхивная копияот 2 октября 2008 наWayback Machine
- Страница проекта на SourceForgeАрхивная копияот 5 октября 2008 наWayback Machine
- Список проектов, использующих ODEАрхивная копияот 28 февраля 2007 наWayback Machine
- OPAL— библиотекаC++-классов, первоначально основанная на ODE
- Описание движка ODEАрхивная копияот 16 июня 2008 наWayback Machineна сайтеGameDev.ru
Этозаготовка статьиопрограммном обеспечении.Помогите Википедии, дополнив её. |