Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Box2D - это бесплатный движок для симулятора двухмерной физики с открытым исходным кодом, написанный на C ++ Эрин Катто и опубликованный по лицензии MIT . Она была использована в Crayon Physics Deluxe , , Limbo , Роландо , IncrediBots , Angry Birds , Tiny Wings , Лопата Knight , Transformice , Happy Wheels , [3] и много онлайн флеш игры, [4] , а также iPhone, IPad и Android игры используя Cocos2d или игровой движок Moscrif и фреймворк Corona .

История [ править ]

Box2D был впервые выпущен как "Box2D Lite", демонстрационный движок, сопровождающий физическую презентацию, сделанную Эрин Катто на GDC 2006. 11 сентября 2007 года он был выпущен как открытый исходный код на Sourceforge . 17 января 2010 года Box 2D перенес проект в Google Code для хостинга. [5] 12 июля 2015 года хостинг снова был перенесен, на этот раз на GitHub . [6]

6 марта 2008 года была запущена версия 2.0, в которой реализовано постоянное обнаружение столкновений и обновлен API .

27 июля 2020 года была запущена версия 2.4 с множеством изменений, в частности лицензия была изменена на лицензию MIT . [7]

Кроссплатформенная доступность [ править ]

Сам Box2D написан на независимом от платформы C ++ (может использоваться в любой системе с доступным компилятором C ++). Движок может быть скомпилирован в режимах с фиксированной и плавающей запятой и использовался на Nintendo DS , Wii и нескольких мобильных телефонах (включая Android , BlackBerry 10 и iOS ), а также в большинстве основных операционных систем.

Движок был портирован на многие другие языки программирования и среды, включая Java , [8] Adobe Flash (на языках ActionScript [9] и Haxe [10] ), C # , [11] Lua , JavaScript , [12] [13] и D . [14] Существуют привязки для использования скомпилированной библиотеки из Python , [15] DarkBASIC и BBC_BASIC .

30 октября 2009 года было объявлено, что Box2D интегрируется в (теперь уже более старый) игровой движок Torque 2D . [16]

Программы, использующие движок [ править ]

  • BlitzBasic
  • GameMaker: Studio , использует движок для моделирования физики.
  • LibGDX использует физический движок для игр и освещения.
  • Stencyl использует физический движок для игр и позволяет экспортировать во Flash и iOS.
  • Единство
  • Construct2
  • LÖVE , использует физический движок для игр [17]
  • Solar2D

Особенности [ править ]

Box2D выполняет моделирование твердого тела с ограничениями . Он может моделировать тела, состоящие из выпуклых многоугольников , окружностей и ребер. Тела соединяются вместе с суставами и действовали силами . Двигатель также применяет силу тяжести , трение и возмещение ущерба .

Система обнаружения и разрешения столкновений Box2D состоит из трех частей: инкрементальной развертки и обрезки широкой фазы , блока непрерывного обнаружения столкновений и стабильного контактного решателя с линейным временем. Эти алгоритмы позволяют эффективно моделировать быстрые тела и большие скопления без пропуска столкновений или возникновения нестабильности. [18]

Связанные системы [ править ]

Ранняя версия движка Box2D, теперь известная как Box2D Lite, была выпущена в основном в образовательных целях на основе серии ежегодных презентаций Game Developers Conference, которые проводила Эрин Катто. Box2D Lite использует многие из тех же алгоритмов, что и Box2D, но имеет меньший набор функций.

Бурундук физический движок (написан на C) [19] и Phys2D (написанный на Java) [20] оба частично основаны на Box2D Lite. Физический движок, используемый в SpriteKit для iOS и OS X, внутренне использует Box2D. [21]

LiquidFun физический движок форк Box2D от Google , [22] , который добавляет имитацию жидкости к двигателю.

LibGDX использует оболочку Java вокруг собственного кода Box2D, написанного на C ++, в качестве своего физического движка. [23]

Статьи [ править ]

Иттерхейм и Вендерлих описывают использование Box2D в движке iPhone Cocos2d . [24] [25] В статье информационного бюллетеня Adobe Edge обсуждается использование Box2D во Flash-играх. [26]

См. Также [ править ]

  • Бурундук (программное обеспечение)

Ссылки [ править ]

  1. ^ Эрин Катто. «Последний выпуск» . GitHub .
  2. ^ "Box2D на GitHub" .
  3. ^ «Играйте в Happy Wheels Online - AndroidFantasy» . Архивировано из оригинала на 5 сентября 2015 года . Проверено 14 августа 2015 года .
  4. ^ "Игры Box2d на Jayisgames" . Jayisgames.
  5. ^ "Box2D - Дом" . Box2D. Архивировано из оригинального 23 октября 2007 года.
  6. ^ "Хостинг GitHub | Box2D" . box2d.org . Проверено 6 апреля 2018 года .
  7. ^ "Выпуск v2.4.0" . github.com . Проверено 14 августа 2020 года .
  8. ^ "JBox2D: физический механизм Java" . JBox2D.
  9. ^ "AS3 Flash Physics Engine Box2DFlashAS3 2.0.1" . Box2D.
  10. ^ «Архив Google Code - Долгосрочное хранилище для хостинга проектов Google Code» . Google.
  11. ^ «Архив Google Code - Долгосрочное хранилище для хостинга проектов Google Code» . Google.
  12. ^ "Box2DJS" . Box2D.
  13. ^ «GitHub - hecht-software / box2dweb: автоматически экспортируется с code.google.com/p/box2dweb» . GitHub .
  14. ^ "пламя" . Dsource.
  15. ^ "Pybox2d / pybox2d: Физика 2D-игр для Python" . GitHub . Проверено 19 февраля 2016 года .
  16. Перри, Майкл (30 октября 2009 г.). «Блог разработчиков Torque 2D - Обзор Box2D» . garagegames.com . Проверено 26 февраля, 2016 .
  17. ^ https://love2d.org/wiki/love.physics
  18. ^ «Глава 1 Введение» . Box2D. Архивировано из оригинального 27 марта 2009 года.
  19. ^ «Архив Google Code - Долгосрочное хранилище для хостинга проектов Google Code» . Google.
  20. ^ "Индекс / Phys2d" . Кокс и код.
  21. ^ "tm4ko - Ghostbin" . Ghostbin. Архивировано из оригинального 27 июля 2013 года .
  22. ^ «LiquidFun» . google.github.io . Проверено 12 марта 2017 года .
  23. ^ https://github.com/libgdx/libgdx/wiki/Physics
  24. ^ Штеффен Иттерхайм. (2010). «Изучите разработку игр Cocos2d для iPhone и iPad». Апресс.
  25. ^ Род Строуго и Рэй Вендерлих. (2011). «Изучение Cocos2d: практическое руководство по созданию игр для iOS с помощью Cocos2d, Box2d и Chipmunk». Эддисон-Уэсли Профессионал.
  26. ^ «Adobe Edge: апрель 2010 г. - Разработка игр на основе физики с помощью Adobe Flash Professional» . Adobe. Архивировано из оригинала на 11 августа 2011 года . Проверено 19 июля, 2016 .

Внешние ссылки [ править ]

  • Официальный веб-сайт