Je fais un jeu de billard comme un jeu. Ce jeu nécessite des rebonds réfléchissants corrects (ou très précis). J'ai essayé Box2D et Bullet Physics , mais ils ont tous les deux ce problème.
S'il y a un mur au-dessus de cette image, on s'attend à ce que la ligne rouge représente un vrai ballon dans un jeu de billard. Mais les moteurs montrent souvent une trajectoire de ligne verte. Notamment,
- Cela se produit après qu'une balle se déplaçant lentement frappe le mur.
- Parfois, une balle qui se déplace rapidement ralentit soudainement.
Je trouve un moteur physique qui peut simuler le jeu de billard avec autant de précision que possible sans ces problèmes. Puis-je obtenir des recommandations? Maintenant, je creuse Newton Game Dynamics , mais je ne suis pas sûr que le moteur affiche ce que je veux. Je considère le PhysX moteur comme essai suivant, et je dois faire mon propre si rien ne fonctionne. Mais il est évident que cela prendra très longtemps, alors je souhaite que je ne le fasse pas. Je serai très apprécié si vous économisez mon temps. Et bien sûr, les solutions avec Box2D / Bullet Physics sont également les bienvenues.
Je travaille avec C / C ++ / Objective + C sur iOS.
J'attache ma configuration avec Box2D.
Des murs
- forme de boîte statique
- amortissement linéaire / angulaire = 0,1
- restitution = 1.0
- friction = 100
- densité = 10
- bullet = false
- rotation fixe = faux
- échelle inertielle = 1,0
Des balles
- forme de sphère dynamique
- amortissement linéaire / angulaire = 0,1
- restitution = 1.0
- friction = 100
- densité = 20
- bullet = true
- rotation fixe = faux
- échelle inertielle = 1,0