Interested Article - Box2D
- 2020-04-05
- 1
Box2D — компьютерная программа , свободный открытый физический движок . Box2D является физическим движком реального времени и предназначен для работы с двумерными физическими объектами. Движок разработан Эрином Катто ( англ. Erin Catto ), написан на языке программирования C++ и распространяется на условиях лицензии MIT .
Движок используется в двумерных компьютерных играх, среди которых Duet , Angry Birds , Limbo , Crayon Physics Deluxe , Rolando, Fantastic Contraption, Incredibots, Transformice , Happy Wheels , , Shovel Knight , King of Thieves .
История
Первая версия Box2D была выпущена под названием «Box2D Lite» в качестве движка, для физической презентации, которую показал Эрин Катто на выставке Game Developers Conference 2006. 11 сентября 2007 года движок стал доступным для скачивания на сайте SourceForge.net .
6 марта 2008 года была выпущена версия движка 2.0, в которой была представлена технология (обнаружение продолжающихся (непрерывных) столкновений) и был переработан API .
3 апреля 2010 года была выпущена версия Box2D 2.1.0. В новой версии были добавлены рейкастинг, динамические ААВВ деревья, новые типы джойнтов (связок), был полностью переписан блок обнаружений непрерывных столкновений и т. д.
Кроссплатформенность
Движок Box2D является кроссплатформенным ПО , он написан на платформо-независимом языке программирования C++ , поэтому может работать (выполняться) на любой платформе, на которой присутствует компилятор C++. Движок может быть скомпилирован в режимах с фиксированной запятой и с плавающей запятой.
Box2D используется на Nintendo DS , Wii и нескольких мобильных телефонах (включая iPhone ), а также на большинстве основных операционных систем для ПК .
Движок был портирован на многие языки программирования и программные среды, включая Java , Adobe Flash (в ActionScript и языках haXe ), C# , JavaScript , D и Delphi . Присутствует связывание ( англ. bindings ) для использования откомпилированной библиотеки движка на Python и DarkBasic .
Box2D встроен в такие open source конструкторы игр , как кроссплатформенный Novashell и Scirra Construct для Windows , а также в движок Love 2D .
30 октября 2009 года было объявлено о том, что Box2D будет интегрирован в игровой движок .
В версии 2.1 так же используется Box2D (прим.)
Технические характеристики
Box2D предназначен для симуляции механики твёрдых тел с учётом ограничений. Движок может симулировать физические тела, составленные из выпуклых многоугольников , окружностей и линий. Тела могут быть связаны ограничителями в кинематические пары и подвергаться действию разных физических сил, таких как гравитация , трение и удар. Тела также могут подвергаться действию внутренних сил, таких как упругость .
Системы обнаружения столкновений и обработки ограничений состоят из трёх частей: возрастающей широкой фазы Sweep and prune , блока непрерывных (продолжающихся) обнаружений столкновений и стабильного линейного во времени блока решения столкновений. Эти алгоритмы предоставляют эффективную симуляцию быстро движущихся тел и больших массивов объектов без упускания пересечений и появления нестабильностей.
Связанные физические движки
Ранняя версия движка Box2D называлась Box2D Lite и использовалась в презентациях Эрина Катто, которые он показывал на выставке Game Developers Conference . Box2D Lite использует те же алгоритмы, что и у Box2D, но имеет меньший набор функций.
Физические движки C ) и (написан на Java ) частично основаны на Box2D Lite.
(написан наПримечания
- Erin Catto. (англ.) . box2d.org (9 октября 2007). Дата обращения: 2 апреля 2010. 24 октября 2007 года.
- . Дата обращения: 28 июля 2022. 28 июля 2022 года.
- Erin Catto. (англ.) . Официальный сайт Box2D (3 апреля 2010). Дата обращения: 17 апреля 2010. Архивировано из 23 апреля 2012 года.
- . (5 апреля 2010). Дата обращения: 16 апреля 2010. Архивировано из 23 апреля 2012 года.
- Erin Catto. (англ.) . JBox2D.org. Дата обращения: 2 апреля 2010. Архивировано из 23 апреля 2012 года.
- (англ.) . SourceForge.net . Дата обращения: 2 апреля 2010. Архивировано из 23 апреля 2012 года.
- (англ.) . code.google.com. Дата обращения: 2 апреля 2010. Архивировано из 23 апреля 2012 года.
- (англ.) . code.google.com. Дата обращения: 2 апреля 2010. Архивировано из 23 апреля 2012 года.
- (англ.) . SourceForge.net . Дата обращения: 2 апреля 2010. Архивировано из 23 апреля 2012 года.
- (англ.) . dsource.org. Дата обращения: 2 апреля 2010. Архивировано из 23 апреля 2012 года.
- (англ.) . SourceForge.net . Дата обращения: 3 июня 2010. Архивировано из 23 апреля 2012 года.
- (англ.) . Дата обращения: 2 апреля 2010. Архивировано из 23 апреля 2012 года.
- Centaur Mich. (англ.) . Дата обращения: 2 апреля 2010. 16 января 2010 года.
- Erin Catto. (англ.) . box2d.org. Дата обращения: 2 апреля 2010. Архивировано из 23 апреля 2012 года.
- . Дата обращения: 17 апреля 2010. Архивировано из 30 марта 2014 года.
- (англ.) . code.google.com. Дата обращения: 2 апреля 2010. Архивировано из 23 апреля 2012 года.
- (англ.) . cokeandcode.com. Дата обращения: 2 апреля 2010. Архивировано из 23 апреля 2012 года.
Ссылки
- ( )
- от 18 мая 2011 на Wayback Machine
- 2020-04-05
- 1