Есть ли альтернативные JS-порты Box2D?

19

Я думал о создании двухмерной автомобильной игры для HTML5. Для моей первой игры я сам написал физику и столкновения, но для этой игры я бы хотел использовать готовую библиотеку.

Я узнал Box2D и его порт JS.

http://box2d-js.sourceforge.net

Похоже, это довольно старый порт, созданный в 2008 году. В нем нет многих функций текущего Box2D или есть серьезные проблемы с ним? И есть ли альтернативы этому?

Петтери Хиетавирта
источник
3
-1 потому что есть известные проблемы со всем программным обеспечением. Конкретные вопросы, пожалуйста.
Я не знаю, был ли ваш комментарий до или после редактирования, но я думаю, что совершенно ясно, что ОП задает серьезные проблемы, которые могут быть серьезными (например, использование более чем X соединений приведет к сбою программы), а не любая известная проблема
Коммунистическая утка
Это было до редактирования, но я все еще думаю, что это плохой вопрос. Например, использование более 10 000 000 соединений наверняка приведет к сбою программы. Без особых проблем этот вопрос фактически звучит как «Пожалуйста, просмотрите <программное обеспечение>» - это не очень хороший вопрос. Формат SE хорош для сфокусированных вопросов; Google лучше для общих обзоров. (Вы заметите, что ни один из ответов не дает реальных проблем с Box2D JS, просто указывает на альтернативу, которая могла бы также повторно задать вопрос.)
Теперь вопрос отредактирован до неузнаваемости - и когда его задают таким образом, он становится тривиально Googleable - и, поскольку он запрашивает список вещей, он, вероятно, лучше всего подходит для CW.
1
Аналогичный вопрос: stackoverflow.com/questions/7628078/…
платный ботаник

Ответы:

10

Box2D имеет своего рода поддерживаемую версию на github:

https://github.com/thinkpixellab/pl/tree/master/src/box2d

Microsoft использует его, по крайней мере, на своих демонстрационных тестах IE9.

oberhamsi
источник
5
«Microsoft использует его по крайней мере в своих демонстрационных тестах IE9». это действительно то, чем можно гордиться?
rightfold
17
@WTP Вы даже пробовали некоторые из демонстраций JS и Canvas в IE9? Весь браузер с аппаратным ускорением и имеет одни из самых высоких показателей производительности HTML5. То, что версия браузера высосана 10 лет назад, еще не значит, что она так и есть.
AttackingHobo
1
@AttackingHobo, +1, IE6, 7 действительно отстой. 8 Более или менее. 9 или 10 - приличные браузеры. Прекратите ненавидеть всю семью из-за нескольких устаревших членов семьи.
lukas.pukenis
16

Есть box2dweb, который является намного более новым портом и имеет гораздо меньше проблем, чем box2djs. Я очень рекомендую это.

http://code.google.com/p/box2dweb/

DariusK
источник
Так есть три версии на данный момент? box2d-js.sourceforge.net github.com/thinkpixellab/box2d и code.google.com/p/box2dweb
Петтери Хиетавирта,
3
Да, хотя похоже, что Box2Dweb активно развивается (последняя проверка 1/23/11), тогда как github менее успешна (последняя проверка 29.10.10). Кроме того, Box2Dweb имеет активную дорожную карту для того, чтобы двигаться дальше: code.google.com/p/box2dweb/wiki/Roadmap
DariusK
Эта версия также хороша - github.com/HBehrens/box2d.js
onedayitwillmake
Я начал играть с box2dweb. Это выглядит хорошо на данный момент. Также - есть хорошая документация: box2dflash.org/docs/2.1a/reference
Сабиланд
3

Популярной альтернативой (хотя и не портом) является cannon.js , «легкий трехмерный физический движок» для Интернета.

Сэм
источник
2

Также:

Я также помню порт для исходного кода C ++ для JavaScript с помощью Emscripten т.е. LLVM, но я не могу найти его обратно. Найден только https://github.com/kripken/emscripten/issues/22
Жаль, что мне интересно адаптировать оригинальный код, а не порт порта ...

PhiLho
источник
Хорошо знакомый JBox2D также поддерживает GWT прямо из коробки!
Groomblecom
1
@ Groomblecom Возможно, не в то время, когда я писал это, потому что GWT не поддерживает всю Java (и все еще не, я думаю). Java и GWT развивались с тех пор. Хорошо знать. Благодарю.
PhiLho
1

Хотя это не Box2D, есть порт JigLib (3D Physics) для JS: https://github.com/supereggbert/JigLibJS . Я не использовал его, но он был портирован для использования в библиотеке GLGE WebGL.

Андрей
источник
0

Существует очень хорошая альтернатива для Box2D-JS, просто посмотрите box2dweb . Посмотрите эту игру, которая построена с использованием box2dweb. Вы можете легко сделать свой проект, используя этот физический движок.

networkingmind
источник