Followers 0

# Did the first pong game use continuous collision detection?

## 6 posts in this topic

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
0

##### Share on other sites
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. ;)
0

##### Share on other sites
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..
0

##### Share on other sites
actually I just read that it wasn't even programmed, but hardwired in an electronic circuit. =)
0

##### Share on other sites
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?
0

##### Share on other sites
actually I don't know how they did it but something like this should work:
[code]

//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
//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
}
}
[/code]

this will look like it froze for one frame every time it hits a paddel but nobody will notice
1

##### Share on other sites
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.
0

##### Share on other sites
[quote name='Narf the Mouse' timestamp='1325306082' post='4898364']
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.
[/quote]

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.
0

##### Share on other sites
If you mean the [i]really[/i] 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. [url="http://www.electronixandmore.com/project/scopepong/"]Check this page for a circuit and description of an analog pong game.[/url] Fun stuff!
1

##### Share on other sites
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.
0

## Create an account

Register a new account