When is box2d and similar overkill?

When is box2d and similar overkill?
0.0 0

#1

Hello,

When is box2d and similar overkill? Let’s say that I should create a game like geomertry dash(for those who know it) and 2d scrolling games in general, is box2d overkill since you in fact usually only need gravity and collision detection? I mean, when should I prefer using the built-in physics over box2d? Is games like flappy bird not even worth using the built-in physics, which actually seems very simple to use, and should I then simply do the collision detection etc. manually?

Again, as for all my questions, I would love to hear your thoughts, thanks!


#2

I always use the built in physics engine. I am not actually aware of any reason to use Box2d over our physics (which is based upon Chipmunk). Perhaps someone can shed some light on Box2d vs Chipmunk.

You don’t always need physics. If you want simple collision detection, perhaps using rect and `containsPoint() is enough. There is a bit of info here: http://cocos2d-x.org/docs/programmers-guide/physics/index.html


#3

Thanks! I know box2d pretty well know but is the built-in physics very different from the way you code box2d? When using the built-in physics, can you then just move the sprite using things like MoveTo where the collision detection is still working, like you cannot set the position of a box2d body each frame if you want to avoid having trouble with the physics… I know that I probably can find the answer for my the first question myself, but could you please answer if moving sprites with setPosition would cause trouble for collision detection etc. when using the built-in physics


#4

I am probably starting to get annoying… but could you please help me with that question or do you know somebody who can? It is because that I have to make a choice about what engine i have to use in some future games and if the built-in engine can handle collision detection and similar when moving the physicsbodies using actions such as moveTo or setting the position each frame, then it would be a huge advantage since box2d cannot.


#5

Hello. First of all, I’m not so well versed with Box2d, but I recently started using the built-in physics engine as opposed to simple collision detection using ‘containsPoint’.

Using actions such as moveTo and setPosition, will not be impeded by the fact you’re using the physics engine. The simplest thing to understand here though, is that, as long as two physics bodies contact, there is a collision.

If you need some Sprites to not interact, it’s rather simple. All you need to do is NOT set physics bodies for them.

TL;DR
You’ll be able to move Sprites freely even with the physics engine, using actions such as moveTo or setPosition.


#6

I know that part but usually when you are moving sprites etc. by setting its position, as MoveTo and other actions are doing, you are are subverting the physics simulation(at least for box2d) and that is what I am concerned about. Anyway, thanks for the time