Box2D


Box2D — компьютерная программа, свободный открытый физический движок. Box2D является физическим движком реального времени и предназначен для работы с двумерными физическими объектами. Движок разработан Эрином Катто (англ. Erin Catto), написан на языке программирования C++ и распространяется на условиях лицензии MIT.

Движок используется в двумерных компьютерных играх, среди которых Duet, Angry Birds, Limbo, Crayon Physics Deluxe, Rolando, Fantastic Contraption, Incredibots, Transformice, Happy Wheels, Color Infection, Shovel Knight, King of Thieves.

Первая версия Box2D была выпущена под названием «Box2D Lite» в качестве движка, для физической презентации, которую показал Эрин Катто на выставке Game Developers Conference 2006. 11 сентября 2007 года движок стал доступным для скачивания на сайте SourceForge.net.

6 марта 2008 года была выпущена версия движка 2.0, в которой была представлена технология Continuous collision detection (обнаружение продолжающихся (непрерывных) столкновений) и был переработан API.

3 апреля 2010 года была выпущена версия Box2D 2.1.0. В новой версии были добавлены рейкастинг, динамические ААВВ деревья, новые типы джойнтов (связок), был полностью переписан блок обнаружений непрерывных столкновений и т. д.[3][4]

Движок Box2D является кроссплатформенным ПО, он написан на платформо-независимом языке программирования C++, поэтому может работать (выполняться) на любой платформе, на которой присутствует компилятор C++. Движок может быть скомпилирован в режимах с фиксированной запятой и с плавающей запятой.