500 likes | 844 Views
The Evolution of Video Game Programming. By: Jerad Waas. An Overview. Video Game History Programming Disciplines The Game Development Process The Present and the Future of Gaming. Video Game History. The Origins The 1960s The 1970s The 1980s The 1990s The 2000s. History - The Origins.
E N D
The Evolution of Video Game Programming By: Jerad Waas
An Overview • Video Game History • Programming Disciplines • The Game Development Process • The Present and the Future of Gaming
Video Game History • The Origins • The 1960s • The 1970s • The 1980s • The 1990s • The 2000s
History - The Origins • Disputed origins • 1950s, 1960s, 1970s • William Higinbotham • 1958 • Entertain guests at Brookhaven Ntl Lab • Oscilloscope & Simple Computer • Tennis For Two
History - The 1960s • Tech Model Railroad Club - MIT • Developed Spacewar! • On a PDP-1 • 9KB • Firsts for industry: • Game to be shared over a network • Widely available • $120,000
History - The 1960s - PDP-1 Paper tape PDP-1 replica
History - The 1960s • Ralph Baer • Developed a couple of games: • Tag • Volleyball • Ping Pong • Together with Bill Harrison • Created the Light Gun
History - The 1960s - Light Gun • How does it work? • Photodiode • Senses light on screen • Screen blacks out • Diode begins reception • Portion of the screen is painted white - typically the target you are aiming for • If diode senses black then white - hit!
History - The 1970s • 1972 - The first wave of Magnavox Odysseys were sold • ~ $100 • Quickly sold 100,000 • Sales quickly diminished after
History - The 1970s • Nolan Bushnell & Ted Dabney • Turn Spacewar! Into a coin-op arcade machine • 1971 - They found a manufacturer in • Nutting Associates • Coin-op manufacturer • 1,500 machines • To complex!
History - The 1970s • Bushnell & Dabney • Leave Nutting • Start up a new company • Atari • Simple tennis game • Pong • ~ $1,200 • 1972 - First units on sale • ~ 8,500 units in first year • ~ 19,000 total
History - The 1970s • Atari reluctantly decides to test the home market • Magnavox Odyssey • Atari sells the idea to Sears • $100 version of Pong • Sears’ biggest selling item • Home version of Pong • Atari “on the map” • Household name
History - The 1970s • 1972 • Steve Jobs joins Atari • Technician • Exposes Steve Wozniak to Atari and Pong • They later form Apple in 1976
History - The 1970s • 1975 • Midway • Gun Fight • Two firsts in the industry: • First video game to utilize a microprocessor • Intel 8080 • Random events • First video game to be imported from Japan
History - The 1970s • 1976 • Apple founded • Steve Wozniak • Created Breakout • Two firsts for the industry: • Software was used to run a video game • Breakout was programmed in a computer language • Previously, machine code
History - The 1970s • Namco • 1974 • Bought the Japanese division of Atari • 1979 • Developed the first color video game • Galaxian • Instant success
History - The 1980s • Pac-Man • Shows the industry two things: • Innovation is important • Merchandising! • Cereals • TV-Shows • T-Shirts…etc
History - 1980s • 1985 • Nintendo Entertainment System • Bundled with Super Mario Brothers • Dominated the North American market • D-pad now became standard
History - The 1990s • Shareware becomes popular because of: • Doom • Wolfenstein 3D • Demo • First portion of the game • Good way to show off their game • Many companies mimicked id Software
History - The 1990s • 1996 • 3dfx releases the Voodoo chipset • Quake was among the first to utilize standalone graphics cards • Devoted 3D rendering cards • Allowed CPU to handle other computations
History - The 1990s • 3D era • 32 bit era brings 2 major consoles to consumers • Sega Saturn • Sony Playstation • After many delays… • Nintendo 64 • 64 bit system • Revolutionary system
History - The 1990s • Nintendo 64 • 1.5 million units sold in three months • Many critically acclaimed games • Super Mario 64 • Goldeneye 007 • The Legend of Zelda: The Ocarina of Time
History - The 2000s • Current Generation • Microsoft • XBOX • Nintendo • Gamecube • Sony • Playstation 2 • DVD capability • PS2 & XBOX • Backwards compatibility • PS2
Disciplines • Game Physics Programmer • AI Programmer • Graphics Programmer • Sound Programmer • UI Programmer • Input Programmer • Network Programmer • Game Tools Programmer • Porting Programmer • Lead Game Programmer
Disciplines - Physics • Developing the physics in the game • Processor cycles are at a premium • Efficiency is key • FPS games typically demand large teams of physics programmers
Disciplines - AI • Develops the logic that the game uses • Has developed into a specialized area as of late • Pathfinding, strategy, and enemy tactics • According to Game Developer Magazine - 60% of time • Real time strategy and first person shooters
Disciplines - Graphics • Programmers who specialize in developing and modifying complex 3D graphics • 2D graphics abilities are still useful though • Cell Phones • PDAs • Scarce in industry • Demand high salaries
Disciplines - Sound • Full musical scores - been around • 3D positional sound - recent • First person shooters • Programmers try to include the newest technologies • Games with large soundtracks or advanced audio, demand teams of sound programmers
Disciplines - User Interface • Very important! • Must be intuitive, useful-feature, clean, and easy to use • Most user interfaces are 2D • Some interfaces are developed with the same 3D technology as the rest of the game • Advanced interfaces allow custom scripting
Disciplines - User Interface • LUA • XML • World of Warcraft • n!
Disciplines - Input • Writes code that determines how the player will use the input devices • Controller • Joystick • Keyboard & Mouse • Wii controller • Motion sensing technology
Disciplines - Input • Programmers must recognize and adhere to controller standards • WASD • A (X) - accept // next • B (triangle) - back // cancel • If standards are not followed, gamers will be confused
Disciplines - Network • Writes the code that allows players to play the game on a LAN and or on the internet • Very important in Massively Multiplayer Online (MMO) • Latency control is especially important • Programmers cannot assume all consumers have broadband • Must be efficient • Might be dial-up gamers
Disciplines - Game Tools • Write code to handle tasks like scripting, converting art, batches, modifying the game and levels • Half-Life 2 • Source SDK • Create levels (Hammer) • Facial animations
Disciplines - Porting • Porting is very important, especially for companies like EA • Games available on almost every platform • May involve the tools programmer to help convert content • Some code may have to be re-written to utilize different hardware
Disciplines - Lead • Keeps the programmers focused, and on track • Quite often a middle man between the client and programmers • Should have a general base knowledge of all aspects of the game • Sound • Graphics • Networking • Etc.
The Game Development Process • Prototyping • Game Design • Language • API & Libraries • Production • Crunch Time • Maintenance
Process - Prototyping • Very similar to normal applications • Test ideas and algorithms • Give the customer and early glimpse • Early screenshots • Good way to gain early popularity
Process - Language • What language to use? • Many dependencies • Staff • Platform • Language of the game engine • Most popular • C++
Process - API & Libraries • Which API & Libraries to use? • Tons of libraries out there • Sound processing • Input • Graphics rendering • Pathfinding • Also depends on target platform • Libraries for PS2 may not be available for XBOX360 • Graphics API? • DirectX • OpenGL
Process - API & Libraries • A collection of APIs • Direct3D • The 3D graphics API • Not portable • Designed specifically for Microsoft products • Pocket PC • XBOX • Windows • Revised more frequently then OpenGL • Utilizes the latest features of 3D graphics cards
Process - API & Libraries • Portable 3D API • Easily ported to and from • Windows <-> MacOS <-> Linux • Revised infrequently
Process - Production • Bulk of the time • Code…code…code • Design documents are constantly changing • Lead regularly reports status to supervisor • Develop game tools
Process - Crunch Time • Towards the end of the production phase • Productivity is not proportional to extra hours • 2x hours != 2x productivity • Adding extra staff may not increase productivity • Quality decreases as time increases
Process - Maintenance • Console • Pre-current generation - next to impossible • Hard drives and online- now possible • Patches and new content • PC • Numerous hardware / software combinations • Patches are inevitable • MMO Genre • Extensive maintenance phase • New content is always required
The Present and the Future of Gaming • Multithreaded Gaming • HD Gaming • Next Generation
Present & Future - Threading • Split up processes • Games w/ multiple threads • Run more efficiently on HT or multicore processesors • XBOX 360 and PS3 • Multiple processors
Present & Future - HD • Popularity of HDTV • Red - Green - Blue • Instead of Yellow • HD offers: • Improved textures • Improved character models • Higher pixel count
Present & Future - “Next Gen” • Microsoft • XBOX 360 • HD-DVD • Nintendo • Wii • November • Motion sensing technology • Sony • Playstation 3 • November • Blu-ray
References • Computer and Video Games • http://en.wikipedia.org/wiki/Computer_and_video_games • Game Programming • http://en.wikipedia.org/wiki/Game_programming • History of Computer and Video Games • http://en.wikipedia.org/wiki/History_of_computer_and_video_games • Game Programmer • http://en.wikipedia.org/wiki/Game_programmer • History of Video Game Programming • http://everything2.com/index.pl?node_id=1185238 • How does the light gun for a video game work? • http://www.howstuffworks.com/question273.htm • History of the video game industry • http://www.pong-story.com/intro.htm