Existem portas JS alternativas do Box2D?

19

Eu estive pensando em criar um jogo de carros 2D de cima para baixo para HTML5. No meu primeiro jogo, escrevi a física e as colisões, mas neste jogo eu gostaria de usar uma biblioteca pronta.

Eu descobri o Box2D e sua porta JS.

http://box2d-js.sourceforge.net

Parece ser uma porta bastante antiga, fabricada em 2008. Faltam muitos recursos do Box2D atual ou há grandes problemas com ele? E existem alternativas para isso?

Petteri Hietavirta
fonte
3
-1 porque há problemas conhecidos em todo o software. Questões específicas, por favor.
Não sei se o seu comentário foi antes ou depois da edição, mas acho bem claro que o OP está solicitando grandes problemas que podem ser sérios (por exemplo, o uso de mais de X articulações trava o programa), nenhum problema conhecido
The Duck Comunista
Foi antes da edição, mas ainda acho que é uma pergunta ruim. Por exemplo, o uso de mais de 10.000.000 de juntas travará o programa, com certeza. Sem preocupações específicas , esta pergunta é efetivamente "Por favor, reveja <software>" - essa não é uma pergunta muito boa. O formato SE é bom para perguntas focadas; O Google é melhor para visões gerais gerais. (Você vai notar que nem resposta dá problemas reais com Box2D JS, apenas um ponto em direção a uma alternativa, que poderia muito bem voltar a fazer a pergunta.)
Agora, a pergunta foi editada além do reconhecimento - e quando essa pergunta se torna trivialmente googleable - e como está pedindo uma lista de coisas, provavelmente é melhor que a CW.
1
Pergunta semelhante: stackoverflow.com/questions/7628078/…
um nerd pago

Respostas:

10

O Box2D possui um tipo de versão mantida no github:

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

A Microsoft está usando-o para pelo menos uma de suas demonstrações do IE9.

oberhamsi
fonte
5
'A Microsoft está usando-o para pelo menos uma de suas demos de teste IE9.' isso é realmente algo para se orgulhar?
rightfold
17
@WTP Você já experimentou algumas demos de JS e Canvas no IE9? Todo o navegador é acelerado por hardware e possui um dos mais rápidos desempenhos do HTML5 em todo o mundo. Só porque uma versão do navegador foi sugada há 10 anos, não significa que ainda é.
AttackingHobo
1
@AttackingHobo, +1, IE6, 7 é realmente péssimo. 8 Mais ou menos. 9 ou 10 são navegadores decentes. Pare de odiar a família inteira por causa de alguns membros da família desatualizados.
Lukas.pukenis
16

Há o box2dweb, que é uma porta muito mais nova e tem muito menos problemas que o box2djs. Eu recomendo.

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

DariusK
fonte
Então, existem três versões no momento? box2d-js.sourceforge.net github.com/thinkpixellab/box2d e code.google.com/p/box2dweb
Petteri Hietavirta
3
Sim, embora pareça que o Box2Dweb esteja sendo desenvolvido ativamente (última verificação em 23/1/11), enquanto o github é menos (última verificação em 29/10/10). Além disso, Box2Dweb tem um roteiro ativo para onde está indo em seguida: code.google.com/p/box2dweb/wiki/Roadmap
DariusK
Esta versão também é boa - github.com/HBehrens/box2d.js
onedayitwillmake
Comecei a brincar com o box2dweb. Parece bom por enquanto. Além disso - existe uma boa documentação: box2dflash.org/docs/2.1a/reference
sabiland 30/08
3

Uma alternativa popular (embora não seja uma porta) é o cannon.js , um "mecanismo de física 3D leve" para a web.

sam
fonte
2

Além disso:

Também me lembro de uma porta para o código C ++ original para JavaScript usando o Emscripten . LLVM, mas não consigo encontrá-lo de volta. Só achei https://github.com/kripken/emscripten/issues/22
Pena, acho interessante adaptar o código original em vez da porta de uma porta ...

PhiLho
fonte
O bom e velho JBox2D também suporta GWT imediatamente, também!
Groomblecom #
1
@ Groomblecom Talvez não no momento em que escrevi isso, porque o GWT não suportava todo o Java (e ainda não, acho). Java e GWT evoluíram desde então. Bom saber. Obrigado.
PhiLho 8/16
0

Existe uma alternativa muito boa para o Box2D-JS, basta ver o box2dweb . Veja este jogo que é construído usando box2dweb. Você pode fazer seu projeto facilmente usando esse mecanismo de física.

networkingmind
fonte