Arcade + Circle + fast Collision = lost velocity? (bounce=1)

Hey,

i have a little problem. if i set a ball to “circle” collision. and use setBounce(1); sometimes the ball loss velocity (it slow downs dramatically).

U can reproduce it on:
https://labs.phaser.io/edit.html?src=src/games/breakout/breakout.js&v=3.22.0

Just add
this.ball.setCircle(10);
between line 33 and 34 an try to hit two ore three bricks in a row.

Anybody an Idea?
Thank u :slight_smile:

paD

This is a problem with Phaser’s circle vs. rectangle collisions, when the circle hits the corner of the rectangle. :frowning:

So, Phaser (arcade) needs an update? :confused:

I guess it’s a bug.

Bug is still present in 3.23

Bug is still present in 3.55.2 :frowning:

I don’t think it would be the same problem. Can you post an example?

This shows it, you can see that when the player collides with the ball and the ball collides with the corner of the square hitbox the ball loses velocity. This is on the latest version (3.55.2)

I’ve tried changing to matter.js but that engine is even more buggy, the physics update rate is fps-dependent which makes the game unplayable on low performance machines and tilemaps are very buggy with collisions

I don’t think this problem appears in Phaser v3.55.2.

I’ve looked at this kind of collision and it seems it should work as long as the ball has bounce (1, 1).

You can reproduce the issue in the breakout sandbox with version 3.55.2 though. Make the ball hit the corner of a block and it will lose velocity, even with its bounce set to 1.

I don’t see it.