В этой статье не процитировать какие - либо источники . ( декабрь 2008 г. ) ( Узнайте, как и когда удалить этот шаблон сообщения ) |
Уровень абстракции физики ( PAL ) - это кроссплатформенная система абстракции API физического моделирования с открытым исходным кодом . Он похож на оболочку физического движка , но гораздо более гибок и предоставляет расширенные возможности. PAL - это бесплатное программное обеспечение, выпущенное под лицензией BSD.
PAL - это высокоуровневый интерфейс для низкоуровневых физических движков, используемых в играх, системах моделирования и других 3D-приложениях. Он поддерживает ряд методологий динамического моделирования , включая твердое тело , жидкости , мягкое тело , тряпичную куклу и динамику транспортного средства . PAL имеет простой API C ++ и интуитивно понятные объекты (например, твердые тела , соединения , приводы , датчики и материалы ). Он также имеет COLLADA , Scythe Physics Editor и хранилище файлов на основе XML .
Уровень абстракции физики предоставляет ряд преимуществ по сравнению с непосредственным использованием физического движка:
- Гибкость - позволяет разработчикам переключаться между различными физическими движками, чтобы увидеть, какой движок отвечает их потребностям, а также быстро тестировать новый движок.
- Переносимость - разработчики могут использовать физический движок, который обеспечивает лучшую производительность для различных платформ, и могут писать независимый от платформы код.
- Безопасность - если поставщик промежуточного программного обеспечения приобретен другой компанией или разработка прекращена, разработчики могут переключить механизмы.
- Масштабируемость - уровень абстракции позволяет разработчикам запускать свой код на портативных консольных платформах вплоть до суперкомпьютеров.
- Простота использования - детали реализации физического движка абстрагируются, что обеспечивает более понятный интерфейс для разработчика.
- Бенчмаркинг - исследователи могут напрямую сравнивать производительность различных систем динамического моделирования .
PAL разработан с подключаемой абстрактной фабрикой, позволяющей писать и компилировать код один раз и позволять во время выполнения выбирать различные физические движки , а также обновлять функции.
Поддерживаемые движки [ править ]
PAL поддерживает несколько физических движков , в том числе:
- Box2D
- Пуля
- Newton Game Dynamics
- Open Dynamics Engine
- PhysX (ранее NovodeX и включающий Meqon )
- Физический движок токамака
Поддерживаемые форматы файлов [ править ]
PAL поддерживает несколько форматов файлов, в том числе:
- КОЛЛАДА
- Формат файлов Scythe Physics Editor
- XML
Контрольный показатель [ править ]
Проект PAL предоставляет набор стандартных тестов, позволяющих разработчикам напрямую сравнивать физические движки и выбирать движок, обеспечивающий лучшее решение с точки зрения вычислительной эффективности и физической точности. Однако следует проявлять осторожность при принятии решения о том, какой движок на самом деле использовать, поскольку движки могут быть изменены способами, которые PAL не поддерживает.
Ссылки [ править ]
Внешние ссылки [ править ]
- Официальный сайт PAL
- Интерактивный тест PAL