Bouncing Ball (computer program)
Bouncing Ball was an early interactive computer graphics program developed for the Whirlwind I computer at the Massachusetts Institute of Technology (MIT) in the early 1950s. Initially created as a physics demonstration simulating the motion of a bouncing ball, the program was later adapted into an interactive game in 1952 or early 1953 through the addition of a target hole in the floor of the display. Bouncing Ball is one of the earliest examples of animated computer graphics.[1] [2] [3] The modified version of the program is also regarded by some historians as one of the earliest graphical computer games.[4]
Development
[edit ]The original bouncing-ball simulation was developed for the Whirlwind I computer, a pioneering real-time digital computer constructed at MIT for the U.S. Navy. Whirlwind I became operational in 1951 and was among the first computers capable of displaying real-time graphical output on a cathode-ray tube display.
Bouncing Ball worked as follows:
the ball appeared as a moving spot on the scope. It bounced from left to right. Its movement across the screen described the path of an object based on a mass, initial velocity, and coefficient of restitution named by the bounce program's differential equations. Whenever it encountered the positions that had been designated as the ground, a sound was produced.[5]
The program was demonstrated to the public at an Open House Day in April, 1951, where the 'gravity' setting could be adjusted to show the trajectory of the bouncing ball on the Moon, on Earth, and on Jupiter.[5] The program was first described in detail, with sample code, in the June 11 technical report Programming for Whirlwind I.[6] This was authored by Hrand Saxenian, though the program predates the manual and was not designed by Saxenian. One prominent candidate for the program authorship is Professor Charles Adams, as recalled by computer scientist Norman Taylor, who was at MIT at the time:
Charlie Adams, the original programmer, decided that we'd better go beyond static curves. And he invented what we call the Bouncing Ball Program, the solution of three differential equations.[7]
Another MIT graduate, David Weisberg, also credits Adams with the original development of Bouncing Ball. Both Taylor and Weisberg give the date 1949, by which time Whirlwind I Code had been developed, and the oscilloscope set-up was being tested.[8] [5] However, the earliest document mentioning Bouncing Ball (2 February 1951) credits a student, Oliver Aberth with the creation of the program.[4] [9]
Gameplay
[edit ]The original Bouncing Ball program was merely a demonstration, and not a game.[10] However, at some point in 1952 or early 1953 the program was modified as follows:
Later that year [i.e. 1952], Adams and [John T.] Gilmore modified the program so that a user could turn a knob to adjust the frequency of the bounces and added a hole at the bottom through which the ball could disappear. Afterwards, the members of the lab treated this interactive demo as a game by challenging themselves to set the frequency perfectly to hit the small hole in the floor.[4]
Norman Taylor likewise recalls this modified version:
This is a more interesting display. You see that the bouncing ball finds a hole in the floor and the trick was to set the frequency such that you hit the hole in the floor. This kept a lot of people interested for quite a while and it was clear that man-machine interaction was here to stay. Anyone could turn the frequency-knobs.[7]
This was a substantial change to the program, taking it from about 32 words to around 300.[11] The earliest mention of this 'gamified' version of Bouncing Ball occurs in a February 1953 report issued by the Digital Computer Laboratory, in a description of course activities:
The time used this period and planned for the next period went into individual work by each of the students on a standard programming exercise – plotting the solution to the equation of motion of a bounicing ball as it is thrown slower and slower until it finally bounces through 3 small hole in the "floor".[12]
The undated film 'Making Electrons Count' (c. 1953[11] ) shows Bouncing Ball in action, with the commentator stating:
The second output medium is a cathode ray oscilloscope. Whirlwind was long the only digital computer to use this rapid means for graphical or numerical recording. Here the oscilloscope is recording point-by-point the solution to a very simple problem: the differential equations representing the motion of a ball, bouncing on a horizontal plane, and falling through a hole.[13]
Legacy
[edit ]Bouncing Ball is now seen as an important early mainframe game, predating other early video games, such as Tennis for Two (1958), which also used an oscilloscope display, and the more sophisticated Spacewar! (1962). It is almost exactly contemporary with Christopher Strachey's Checkers (1952), which is another candidate for the earliest mainframe game using a visual display.
Media historian Carlin Wing points out that re-creating Bouncing Ball became a standard programming challenge:
bouncing ball programs were written by programmers who were learning both how to get a handle on the interaction between computer and screen and how to model interactions in physical space[5]
Because of this ubiquity, Bouncing Ball can be seen as a precursor of Tennis for Two and other interactive graphical video games:
By 1958, bouncing ball programs had become standard enough to be included in the instruction manuals for analog computers, alongside instructions for programming trajectories of other kinds of projectiles. In the manual of a Donner Analog computer, one of these sets of programming instructions gave William Higinbotham, then director of the Instrumentation Division at Brookhaven National Laboratory, the idea of building "a tennis game for two to play, that displayed the court, the net and the moving ball on a cathode ray tube" for the lab's annual visitors' day.[5]
Spacewar!, meanwhile, was created at MIT by computer scientists who had direct experience of coding their own bouncing ball programs.[14]
See also
[edit ]- Whirlwind I
- Checkers
- Tennis for Two
- Spacewar!
- History of video games
- Early history of video games
- Early mainframe games
References
[edit ]- ^ Peddie, Jon (2013). The history of visual magic in computers: how beautiful images are made in CAD, 3D, VR and AR. London ; New York: Springer. ISBN 978-1-4471-4931-6.
- ^ Smith, Alvy Ray (2016). "The Dawn of Digital Light". IEEE Annals of the History of Computing. 38 (4): 74–91. doi:10.1353/ahc.2016.0045. ISSN 1934-1547.
- ^ Norberg, Arthur (2000). Transforming Computer Technology. Johns Hopkins University Press. ISBN 978-0-8018-5152-0.
- ^ a b c Smith, Alexander (2020). They create worlds: the story of the people and companies that shaped the video game industry. Boca Raton: CRC Press, Taylor & Francis Group. ISBN 978-0-429-42364-2.
- ^ a b c d e Wing, Carlin (2026年01月20日). Bounce. The MIT Press. ISBN 978-0-262-38453-7.
- ^ Hrand Saxenian, Programming for Whirlwind I, technical report R-196, Cambridge MA: MIT, Electronic Computer Division, Servomechanisms Laboratory, 1951
- ^ a b Hurst, J.; Mhoney, M. S.; Taylor, N. H.; Ross, D. T.; Fano, R. M. (July 1989). "Retrospectives I: The early years in computer graphics at MIT, Lincoln Lab, and Harvard". ACM SIGGRAPH 89 Panel Proceedings. New York, NY, USA: ACM. pp. 19–38. doi:10.1145/77276.77279. ISBN 0-89791-353-1.
- ^ Redmond, Kent C. (1980). Project Whirlwind: The History of a Pioneer Computer. Bedford, MA: Digital Press.
- ^ See 'Bi-Weekly Report, Project 6673, February 2, 1951', Memorandum M-2084, prepared by the Electronic Computer Division of the Servomechanisms Laboratory of the Massachusetts Institute of Technology, February 2, 1951, p. 5.
- ^ Gilmore, Jack (1982). "Whirlwind before Core" (PDF). The Computer Museum Report. 2: 8.
- ^ a b Fedorkow, Guy C. (2021年01月01日). "Recovering Software for the Whirlwind Computer". IEEE Annals of the History of Computing. 43 (1): 38–59. doi:10.1109/mahc.2020.3048815. ISSN 1058-6180.
- ^ [Digital Computer Laboratory], 'Bi-Weekly Report, February 27, 1953', Memorandum M-1878, February 27, 1953, p. 31. Link (PDF).
- ^ From the Vault of MIT (2016年01月20日). Making Electrons Count (c. 1950) . Retrieved 2026年06月08日 – via YouTube.
- ^ Graetz, J. Martin (August 1981). "The Origin of Spacewar". Creative Computing. 7 (8).