Did the first pong game use continuous collision detection?

Started by
5 comments, last by Narf the Mouse 12 years, 3 months ago
The title says it all, I've been wondering how did the old pong game calculate collision detection, as the ball can move so fast but I never experience a collision miss as I play the game. What technique did it use back then? I don't believe it used continuous collision detection as the machine was way too limited in all aspect IMHO :huh:
the hardest part is the beginning...
Advertisement
What makes you think so? It's a simple line-vs-line test with one line being static and screen aligned, making the calulation even simpler.
That being said, I have actually no idea how they did it. ;)
line vs line test...but for the old pong isn't it too overkill? I mean I thought they used a simpler approach, but I don't know what it is :( so I ask you guys hehe..
the hardest part is the beginning...
actually I just read that it wasn't even programmed, but hardwired in an electronic circuit. =)
Well they could just calculate the time it takes for the ball to reach the next obstacle every time it changes direction and then check whether to make it bounce or let it continue along the path right?

o3o

actually I don't know how they did it but something like this should work:


//ball is an object with velocity (vx and vy) and a position (x and y)

while (gameIsRunning){
ball.x += ball.vx
ball.y += ball.vy
if (ball.x < leftPaddel.x || ball.x > rightPaddel.x){
//move ball back so it won't penetrate the paddels
ball.x -= ball.vx
ball.y -= ball.vy
//"collision response code"
ball.vx = - ball.vx
}
}


this will look like it froze for one frame every time it hits a paddel but nobody will notice
There's no reason it couldn't be continuous collision. 2D capsule vs AABB; pick the AABB based on the direction of the ball. Old games weren't necessarily simple; look up "Elite" some time.

There's no reason it couldn't be continuous collision. 2D capsule vs AABB; pick the AABB based on the direction of the ball. Old games weren't necessarily simple; look up "Elite" some time.


On topic of complicated games, iirc I've read an article about Pac-Man's AI. Turns out, that the behavior of the monsters wasn't all that random. I always thought they were random and the fact that they ganged up on me so quickly (not to mention that they followed me everywhere) was just a terrible fate of luck, but as I found out, I think one of the monsters was programmed to chase you directly and two would try to cut you off. The fourth one was more of a wild card. To me it seemed like a fairly complex AI at the time.

Yo dawg, don't even trip.

If you mean the really old one, then the game was analog. No processor, no algorithms. Collision was detected with comparator circuits comparing voltages representing the positions of the ball, paddles, and the field. Check this page for a circuit and description of an analog pong game. Fun stuff!
Some of the early games used some sort of sprite collision algorithm. It might been a simple AND operation between two opacity bit masks, representing each respective sprite. These were relatively fast, because you could test 8 pixels in a single AND instruction.
Latest project: Sideways Racing on the iPad

This topic is closed to new replies.

Advertisement