#### Archived

This topic is now archived and is closed to further replies.

# Pong game?

This topic is 5945 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

## Recommended Posts

What would be the fastest, easiest way to create a pong game? I allready have an idea of what I''ll do, but do any of you know a place where I could learn about clipping? And don''t give me nehe.gamedev.net... ~Jesse PS what are some good functions that I should use?

##### Share on other sites
Um...check out nehe.gamedev.net. Just kidding.

Your question is pretty vague. By "some good functions", I''m assuming you mean OpenGL functions (since this is an OpenGL message board). Check these out in MSDN, the Redbook, the Bluebook, or whatever you use: glOrtho, glVertex2*, etc, etc

I''m assuming this will be a 2D game, since you mention Pong. Even though I''ve seen a whole bunch of 3D versions of Pong.

For clipping, I wouldn''t bother. Just let the card do it. It''ll probably be faster anyway.

But if your interested, do a search for Cohen-Sutherland, or Cyrus-Beck. I think that''s how their names are spelt.

Parveen

##### Share on other sites
What you need to do is consider what you''ll have.

Gameplay: A ball bouncing around that scores a point for the player opposite the side of the screen it hit(left and right only). The players have paddles, and there is a max score at which point one player wins. Variables:
-Need a x-y ordered pair to represent the ball
-Need min-max pair of values for the respective values that represent the screen''s dimensions
-Need an vector structure to represent the ball''s velocity
-if desired need a value to represent the ball''s radius in calculations
-the dimensions and locations of each of the paddles for the two players

Clipping: All clipping in the game consists of checking collision detection between a point or sphere and a rectangle''s defining lines, or more specifically an axis-oriented rectangle. The way I handles this is as follows:
-For screen edges, I simply checked the individual axis values for the location of the ball (an x-y ordered pair)to make sure the ball location is located within the screen. Reflect by changing the sign of the vector values of the ball and setting the ball''s location within the screen''s dimensions.
-For the Paddles, you could perform the same procedure as I used for the screen, but do not forget to take into account that the ball will be within the paddle rectangle after finishing computation, and so you would need to move it outside by applying the new vector to the ball position of better by moving it to it''s proper location outside the paddle. In later versions of my pong-clone, I used a more advanced algorithm that would determine the intercept point for ball''s vector and the rectangles different sides. Much more realistic, but much more complex. But hey, it''s pong!

Graphics: I used all the games data variables to create the games graphics using color-fill operations using Direct Draw. I also implemented user-feedback with text that displayed the score and the winner, etc...

Hope this helps! If you want, I think I still have the source so I can email it to you if you desire. OneHotCoconut@cs.com

-Brent Robinson