Results 1 to 2 of 2

Thread: [RESOLVED] How did collision in the original Pong happen?

  1. #1

    Thread Starter
    Lively Member
    Join Date
    May 2005
    Posts
    65

    Resolved [RESOLVED] How did collision in the original Pong happen?

    I've seen many different versions of Pong, and I'm trying to teach some students how to make their own game. I've seen versions in which the y-velocity is randomly generated, is simply flipped and the magnitude is kept, or where the x-velocity keeps getting bigger, etc etc.

    I was wondering, how are paddle-ball collisions handled in the original game? I've also heard of the idea of making a steeper angle based upon where it hits the paddle, but (as I'm actually too young to have played the original) I was wondering how the original game worked.

    Thanks,

    jvmiller

  2. #2
    PowerPoster Jenner's Avatar
    Join Date
    Jan 2008
    Location
    Mentor, OH
    Posts
    3,712

    Re: How did collision in the original Pong happen?

    The original Allan Alcorn Pong machine used hard-wired transistor logic for it's components. The paddles were divided into 8 segments, with the center two segments returning the ball at 90 degrees and outward segments returning the ball at lesser and lesser angles. Every time the ball hit a paddle, it would speed up slightly until it reached the maximum speed of the machine. Interestingly, the paddles couldn't cover the top-most pixel due to a defective circuit. Instead of fixing the circuit though, Allan left it so that a game couldn't last forever.

    The pixel ball never "skipped" running through any other pixels for the sake of speed so there was no issue of the ball flying through the paddle without registering a collision. The maximum speed of the machine was based on the maximum speed of the video hardware. Most games of that era did collision based on interference buffers. The hardware could detect when any pixel of a sprite overlapped a pixel of another sprite or a foreground pixel. It was pixel-perfect collision. Depending on which sprite-segment of the paddle registered the interference with the ball, the game would apply the angle and speed to the ball accordingly.

    Later versions of Pong condensed all the transistor logic onto a single, dedicated chip. These discrete hardware machines aren't considered to have "programming" like late 70's early 80's machines did because the programming was built into dedicated hardware. Later games would use ROM chips to deliver instructions to microprocessors on the machines.
    Last edited by Jenner; Nov 30th, 2010 at 05:09 PM.
    My CodeBank Submissions: TETRIS using VB.NET2010 and XNA4.0, Strong Encryption Class, Hardware ID Information Class, Generic .NET Data Provider Class, Lambda Function Example, Lat/Long to UTM Conversion Class, Audio Class using BASS.DLL

    Remember to RATE the people who helped you and mark your forum RESOLVED when you're done!

    "Two things are infinite: the universe and human stupidity; and I'm not sure about the universe. "
    - Albert Einstein

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width