at UVU
description
Transcript of at UVU
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?
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
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.
Project Ideas• UV Bots
– map editor– 3D display, Flash/Flex display, ...– game design and mechanics
• iWorlds/OMEGA– spaceship combat– trade and exploration– mini games
OMEGA
Project Ideas• Story generator and director
– Use AI planner to generate and analyze plots– Choose manageable subproblem and
implement for NWN, UT, Half-life, text game, ...
• Your idea here...