Java-Gaming.org Hi !
 Featured games (83) games approved by the League of Dukes Games in Showcase (580) Games in Android Showcase (162) games submitted by our members Games in WIP (632) games currently in development
 News: Read the Java Gaming Resources, or peek at the official Java tutorials
Pages: [1]
 ignore  |  Print
 2D breakout type deflections  (Read 2615 times) 0 Members and 1 Guest are viewing this topic.
DrQuincy

Junior Devvie

Vwls hv bn bnnd!

 « Posted 2006-07-21 12:27:18 »

Hi

Can someone point me in the right direction of the maths behind sending a ball at a certain angle and then it bouncing off (like in the Breakout games).

Thanks.
CommanderKeith
 « Reply #1 - Posted 2006-07-22 03:16:54 »

Its a little more involved than this, but as a starting point:

Give the moving object maxSpeed and x & y velocities.  Figure out if the moving object is going to hit the 'wall' (line) & get the point of impact.  Use trigonometry on the x & y velocities to figure out the angle that its approaching the line, then figure out the angle it will bounce off it.  Use this new angle to give the object a new x & y velocity.

To simplify the angle calculations, make all of your polygons which comprise your obstacles/walls list their points in the same anti-clockwise direction.

I hope that helped,
Keith

JAW

Senior Devvie

Medals: 2

 « Reply #2 - Posted 2006-09-05 22:06:50 »

Generally, get the angle of impact and reflect in the same angle.
If you only have vertical and horizontal bouncing like Breakout or Pong, inverting the x or y velocity does it.

-JAW
Orangy Tang

JGO Kernel

Medals: 57
Projects: 11

 « Reply #3 - Posted 2006-09-05 22:10:04 »

If you only have vertical and horizontal bouncing like Breakout or Pong, inverting the x or y velocity does it.
Except that thats not how breakout does it. In breakout, the closer to the edge of the bat the sharper the angle the ball bounces off at. IIRC the input angle isn't taken into account at all.

[ TriangularPixels.com - Play Growth Spurt, Rescue Squad and Snowman Village ] [ Rebirth - game resource library ]
oNyx

JGO Coder

Medals: 2

pixels! :x

 « Reply #4 - Posted 2006-09-06 00:37:41 »

[...]
Except that thats not how breakout does it. In breakout, the closer to the edge of the bat the sharper the angle the ball bounces off at. IIRC the input angle isn't taken into account at all.

Yea thats how its done in classic breakout games. However, in most modern breakouts the bumper is arced and the ball is bounced off in a realistic manner... its sorta more intuitive to use.

Amos Wenger

Senior Devvie

Everything's possible, but not everything's fun...

 « Reply #5 - Posted 2006-09-06 13:55:11 »

[...]
Except that thats not how breakout does it. In breakout, the closer to the edge of the bat the sharper the angle the ball bounces off at. IIRC the input angle isn't taken into account at all.

Yea thats how its done in classic breakout games. However, in most modern breakouts the bumper is arced and the ball is bounced off in a realistic manner... its sorta more intuitive to use.
Yeah but it then results in a slightly different gameplay which is, in my opinion, less powerful (yet simpler).

"Once you start working on something, don't be afraid of failure and don't abandon it. People who work sincerely are the happiest"
Pages: [1]
 ignore  |  Print

You cannot reply to this message, because it is very, very old.

 Waterwolf (20 views) 2015-05-20 15:01:45 chrislo27 (24 views) 2015-05-20 03:42:21 BurntPizza (58 views) 2015-05-10 15:53:18 FrozenShade (44 views) 2015-05-07 09:11:21 TheLopais (208 views) 2015-05-06 13:36:48 TheLopais (191 views) 2015-05-06 13:35:14 TheLopais (198 views) 2015-05-06 13:33:39 TheLopais (214 views) 2015-05-06 13:32:48 TheLopais (214 views) 2015-05-06 13:31:28 ClaasJG (236 views) 2015-04-30 20:33:25
 Spasi 31x BurntPizza 16x theagentd 14x DavidBVal 13x ra4king 12x EgonOlsen 11x Husk 10x KevinWorkman 9x princec 8x scanevaro 8x KaiHH 7x opiop65 6x revers 6x Riven 6x HeroesGraveDev 5x SauronWatchesYou 5x
 List of Learning Resources2015-05-05 10:20:32How to: JGO Wikiby Mac702015-02-17 20:56:162D Dynamic Lighting2015-01-01 20:25:42How do I start Java Game Development?by gouessej2014-12-27 19:41:21Resources for WIP gamesby kpars2014-12-18 10:26:14Understanding relations between setOrigin, setScale and setPosition in libGdx2014-10-09 22:35:00Definite guide to supporting multiple device resolutions on Android (2014)2014-10-02 22:36:02List of Learning Resources2014-08-16 10:40:00
 java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org