haXe Physics Engine

Кроме собственно haXe Николас Каннассье написал еще физический движок «haXe Physics Engine». Вот только нормальной документации он написать не потрудился.

Сейчас я разбираюсь с движком, и мне нужно будет где-то фиксировать мои «открытия». А какая разница где фиксировать? — Никакой. Поэтому фиксировать буду тут, вдруг ещё кому пригодится.

Внимание! Это никакая не официальная документация. В материалах ниже могут быть неточности и ошибки. Это просто то, как я понимаю движок.

Загрузка библиотеки
Откройте консоль (в Виндоусе Пуск→Выполнить→cmd) и наберите haxelib install physaxe. Библиотека скачается и установится куда нужно сама. Понятно, что для этого у вас должен быть установлен сам haXe.

Подключение библиотеки
Для подключения движка, как и любой другой библиотеки, в FlashDevelop нужно открыть свойства проекта и на вкладке «Compiler Options» в пункте «Libraries» написать physaxe. Это приведет к тому, что при компиляции среда передаст компилятору ключ -lib physaxe.

API
Весь движок находится в пакете phx. В этом пакете есть еще два вложенных пакета phx.col и phx.joint. Классы движка описаны ниже.

Пакет phx

  • Allocator
  • Arbiter
  • Axis
  • Body
  • Circle
  • Collision
  • Const
  • Contact
  • FlashDraw
  • Island
  • JsCanvas
  • Material
  • Polygon
  • Properties
  • Segment
  • Shape
  • Timer
  • Vector
  • World

Пакет phx.col

  • AABB
  • IAABB
  • BroadPhase
  • BruteForce
  • Quantize
  • SortedList

Пакет phx.joint

  • Joint

Комментарии

Я вот под себя

Я вот под себя этот Physaxe достаточно сильно перелопатил, плюс мёржил туда различные стороние разработки - Рейкастинг, Джоинты. Надо бы про это тоже как-нибудь рассказать.
___
Тихо, идёт запись!

очень интересно

elmortem, расскажи - очень интересно, думаю не один я буду очень благодарен. Physaxe с работающими joints это большой шаг вперёд.

APE

а я просто подключил swc с APE. У него тоже немного документации, но она есть! :)

игорь

Physaxe основан в

Physaxe основан в основном (как пишет сам автор на http://code.google.com/p/physaxe/) на 2х движках: Box2D и Glaze, так что возможно имеет смысл почитать доки по этим движкам.
А вот здесь http://code.google.com/p/physaxe/wiki/Tutorial есть туториал

От Box2D Physaxe

От Box2D Physaxe довольно сильно отличается, как по API, так и по возможностям, а к Glaze никакой документации также нет. Так что если какие-то дополнительные материалы появятся, в любом случае будет хорошо и полезно.

На данный момент могу добавить к теме, что в Physaxe пока не реализована поддержка Joints (phx.Joint - просто заготовка).

box2d

Некоторое время назад (для повышения производительности) портировал Box2d на haxe.
Лежит тут (v 2.0.1)
http://code.google.com/p/box2d-haxe/source/checkout

box2d-haxe

спасибо!
обязательно попробую в деле на досуге.
на данный момент для небольших и быстрых AS3 проектов использую ещё вот эту обертку - QuickBox2D. Кода там не много, так что имея уже портированный Box2d, при необходимости наверное и это можно будет адаптировать.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <blockcode> <dd>
  • Строки и параграфы переносятся автоматически.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>.

Подробнее о форматировании

CAPTCHA
Этот вопрос помогает предотвратить автоматический спам
Image CAPTCHA
Enter the characters shown in the image without spaces, also respect upper and lower case.
To prevent automated spam submissions leave this field empty.