Upload
norah
View
54
Download
0
Tags:
Embed Size (px)
DESCRIPTION
C S 3 5 4 0. at UVU. Dr. Brian Durney. Computing and Networking Sciences. Why Game Programming?. It’s fun! . (Most of the time) It’s also a whole lot of work: game design software design and implementation art, music, sound, writing testing. Nine Billion Dollars. - PowerPoint PPT Presentation
Citation preview
Dr. Brian DurneyComputing and Networking Sciences
at UVU
C S 3 5 4 0
Why Game Programming?
It’s fun! (Most of the time)
It’s also a whole lot of work:• game design• software design and implementation• art, music, sound, writing• testing
Nine Billion DollarsComputer games are a big industry.
"More money is spent on games than on movies."
...but...
ResearchYes, real research:
No, they’re not talking about chess.
Human-level AI’s Killer Application:Interactive Computer Games
John E. Laird and Michael van LentUniversity of Michigan
My favorite things:• Graphics Programming• Artificial Intelligence• Network Programming• Interesting Math Problems• Game Design• Writing and Art
What we will do this term:• Graphics
• Game Design
• Game AI
Graphics
Unity unity3d.com
Why Unity?• Cross-platform Windows and Mac OS X• Easy to use (for a game engine) but
powerful• It’s free…or at least there is a free version• Web browser plug-in
Assignment 1: Unity Box World Game
• User input• Image texture• 3D model• Moving objects• Collision detection• Timer• A way to win
GameDesign
What makes a good game?
Game Review and Presentation
Look at a commercial game in terms of the game design principles we discuss in class.
Interactive Fiction• Text games• Venerable ancestors of ...• Game balance, story line, nonlinear plots,
characters, combat, etc.• Story generation
Game AI
Write a program to control a bot.
We will also look at this game in terms of graphics and game design.
http://universe.tc.uvu.edu/uvbots/index.html
UV Bots
Server DisplayClient
BotClient
BotClient
BotClient
http://universe.tc.uvu.edu/uvbots/index.html
Programming Problem
How can the server efficiently tell when one bot hits another?
Programming Problem
How can the display keep the beam from going through obstacles?
3D Display using Unity
AIIDEArtificial Intelligence in Interactive Digital Entertainment
Story generator and director• Automated dungeon master
– Creates map– Creates plot/storyline– Runs adventure
Easy, right?
Educational Games
What makes a game fun?
What makes agame educational?
THIS IS NOT A GAME• AKA viral marketing?• USC Film School: http
://www.argn.com/2011/12/reality_transforming_usc_film_students_freshman_year_into_an_addictive_game/
• And even, sort of, the UVU library:Library Craft
Fast Foot Challenge• And light bikes, and …
Quest-o-Matic
Richard Bartlehttp://www.aigamesnetwork.org/main:events:ainpc
www.spacecamputah.org
CMSEC SimulatorsCMSEC Simulators• Human flight director• Single ship• Cocoa (Mac OS X)
iWorlds simulator project• Multiple ships• Cross-platform with HTTP communication
– Clients can be written using JavaScript, Flex, Unity, Java, etc.
– Web-based games are possible• Educational games
Disclosure: I own a piece (OK, a small (very small, really) of iWorlds.I think that programming the iWorlds simulator and games makes a great project, but there is no requirement to do so.
Unity 3D display
OMEGA Organization for Making and Exploring Game Applications
http://universe.tc.uvu.edu/csclub/
Help build a computer game experience like no other: a game that puts you and your friends on a starship bridge with a 50-inch main view screen, 6 computer stations, and props, fighting an enemy crew that's just waiting to blow you away in real-time space combat.
OMEGA simulator project• Optional AI flight director• Real-time• 3D graphics• Online—MMO (or at least MO) RPG or
RTS some day
• Working with iWorlds
Project• I encourage groups of 2 to 3 students for
the project.• Specialize in graphics, game AI, game
design.• Complete
– Not necessarily a complete game, but should be a complete game, tool, or library.
• Programming required– Not just a level design– I must be able to read your source code and play your
game.