¿Hay algún puerto JS alternativo de Box2D?


19

He estado pensando en crear un juego de autos 2D de arriba hacia abajo para HTML5. Para mi primer juego escribí la física y las colisiones, pero para este me gustaría usar una biblioteca ya hecha.

Descubrí Box2D y su puerto JS.

http://box2d-js.sourceforge.net

Parece ser un puerto bastante antiguo, hecho en 2008. ¿Le faltan muchas características de Box2D actual o tiene problemas importantes con él? ¿Y hay alguna alternativa para ello?


3
-1 porque hay problemas conocidos con todo el software. Preguntas específicas, por favor.

No sé si su comentario fue antes o después de la edición, pero creo que está bastante claro que el OP está pidiendo problemas importantes que podrían ser problemas graves (por ejemplo, usar más de X articulaciones bloqueará el programa) no hay ningún problema conocido
El pato comunista

Fue antes de la edición, pero sigo pensando que es una mala pregunta. Por ejemplo, el uso de más de 10,000,000 articulaciones bloqueará el programa con seguridad. Sin preocupaciones específicas , esta pregunta es efectivamente "Revise <software>", esa no es una muy buena pregunta. El formato SE es bueno para preguntas enfocadas; Google es mejor para descripciones generales. (Notará que ninguna de las respuestas da problemas reales con Box2D JS, solo un punto hacia una alternativa, que bien podría volver a hacer la pregunta.)

Ahora la pregunta se ha editado más allá del reconocimiento, y cuando se le pregunta de esta manera se vuelve trivialmente utilizable en Google, y dado que está pidiendo una lista de cosas, probablemente sea mejor que CW.

Respuestas:


10

Box2D tiene una especie de versión mantenida en github:

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

Microsoft lo está utilizando al menos en sus demostraciones de prueba de manejo de IE9.


55
"Microsoft lo está utilizando al menos en sus demostraciones de prueba de manejo de IE9". ¿Es realmente algo de lo que estar orgulloso?
derecha

17
@WTP ¿Has probado algunas de las demostraciones de JS y Canvas en IE9? Todo el navegador está acelerado por hardware y tiene el rendimiento HTML5 más rápido en todos los ámbitos. El hecho de que una versión del navegador haya sido maltratada hace 10 años no significa que todavía lo haga.
AttackingHobo

1
@AttackingHobo, +1, IE6, 7 realmente apestan. 8 Más o menos. 9 o 10 son navegadores decentes. Deje de odiar a toda la familia por algunos miembros de la familia obsoletos.
lukas.pukenis

16

Hay box2dweb, que es un puerto mucho más nuevo y tiene muchos menos problemas que box2djs. Lo recomiendo altamente.

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



3
Sí, aunque parece que Box2Dweb se está desarrollando activamente (último registro el 1/23/11) mientras que el github es menos (último registro el 29/10/10). Además, Box2Dweb tiene una hoja de ruta activa para el próximo destino: code.google.com/p/box2dweb/wiki/Roadmap
DariusK

Esta versión también es buena - github.com/HBehrens/box2d.js
onedayitwillmake

Empecé a jugar con box2dweb. Se ve bien por ahora. Además, hay buena documentación: box2dflash.org/docs/2.1a/reference
sabiland

3

Una alternativa popular (aunque no un puerto) es cannon.js , un "motor de física 3D ligero" para la web.


2

También:

También recuerdo un puerto para el código original de C ++ a JavaScript usando Emscripten, es decir. LLVM pero parece que no puedo encontrarlo de nuevo. Solo encontré https://github.com/kripken/emscripten/issues/22
Lástima, me parece interesante adaptar el código original en lugar de un puerto de un puerto ...


¡El bueno y familiar JBox2D también es compatible con GWT de inmediato!
Groomblecom

1
@Groomblecom Quizás no en el momento en que escribí eso, porque GWT no era compatible con todo Java (y todavía no lo es, supongo). Java y GWT evolucionaron desde entonces. Bueno saber. Gracias.
PhiLho


0

Hay una muy buena alternativa para Box2D-JS, solo vea box2dweb . Mira este juego que está construido usando box2dweb. Puedes hacer tu proyecto fácilmente usando este motor de física.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.