The Evolution of Video Game Programming By: Jerad Waas.
-
Upload
mervyn-peters -
Category
Documents
-
view
216 -
download
0
Transcript of The Evolution of Video Game Programming By: Jerad Waas.
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