Jan 8, 2008 ... In most cases I will give you one, the class is not full. • If you have already ... Page
3 ... C# programming language. • Visual C# ... tool like Game. Maker or RPG
Maker ... C# and XNA Game Studio Express will be taught in class.
Course Overview Introduction to XNA Game Studio Express Game Design Experience Prof. Jim Whitehead January 8, 2008
Administrative • If you need a permission code, see me after class ►
In most cases I will give you one, the class is not full
• If you have already taken CS 80K, you cannot receive credit for CS 20 ► ►
If you would like to sit-in to learn about C#, that’s OK Game Design majors that took 80K last year can substitute it for the CS 20 degree requirement
Introductions • Everyone should stand up and introduce themselves ► ►
Your name Game you’re playing right now • Or your favorite game
Course People • Professor ►
►
Jim Whitehead Associate Professor, Computer Science Office hours: Tuesday, 10:30am-12pm, or by appointment
• Teaching Assistants ► ►
Sheena Marquez (
[email protected]) Ian Rickard (
[email protected])
• Readers/Tutors ►
Trevor Prater (
[email protected])
• Take advantage of our expertise!
Goals of Game Design Experience (CS 20) • Understand broad issues in game design ►
Challenge, conflict, reward structures, rule systems, level design, etc.
• Develop ability to critically analyze games ►
Foundations of Interactive Game Design
Shift perspective from player to designer
• Write software to create a simple game ►
Shared with CMPS 80K
In an object-oriented language, C#
Exclusive to CMPS 20
Relationship Between CS 20 and CS 80K • CS 20 is intended for ► ►
Computer Game Design majors Students with strong programming skills
• Students in CS 20 are required to do everything a CS 80K student would do: ►
Attend lectures, do assignments, learn Game Maker, take exams, etc.
• ..with a few exceptions ► ►
►
CS 20 project must be a programmed game CS 20 students will have a different exam version from CS 80K students Extra lecture per week
Topics covered in CS 20 (and not CS 80K) • C# programming language • Visual C# Express • XNA Game Studio Express ►
Mostly 2D capabilities
• Strategy Pattern • Collision detection algorithms • Students in CS 80K avoid these issues by using a game development tool like Game Maker or RPG Maker
Computer Game Project • Work in teams of 2 to create novel computer game ►
►
►
C# and XNA Game Studio Express will be taught in class Very impressive games are possible with this environment Created games can run on Xbox 360
• Phases ► ► ►
Game concept document – January 30 Game prototype - February 22 Final game - March 10
Computer Game Projects • Will have two days of peer assessment of games in small groups ►
Receive lots of constructive feedback
• Best games will be demonstrated to entire class • Will have external judges, commercial game designers • Best game in CS 20 will win a Nintendo DS ► ► ►
Thanks to 2K games One for each team member Separate judging for CS 80K games
• Also possible to enter Microsoft DreamBuildPlay contest ($3,000 prize) ►
Deadline is January 27 (www.dreambuildplay.com)
XNA Game Studio Express • XNA GSE is a series of libraries for creating 2D and 3D computer games ► ►
Uses C# as the primary programming language Integrated with Visual Studio C# Express • Also now the full version of Visual Studio
► ►
►
Games can run under Windows or on Xbox 360 It is possible to create professional games using this toolkit Quick poll of students with Windows machines • Do we need XNA GSE installed in ITS labs?
• Example games: ►
www.gameprojects.com/projects/?q=xna
Course Textbooks • XNA Game Studio Express Developing Games for Windows and the Xbox 360 Joseph Hall, Thomson Course Technology, 2008
• Programming C# Jesse Liberty, O’Reilly, 4th Edition, 2005
• Rules of Play Game Design Fundamentals Katie Salen, Eric Zimmerman ►
Primary text for CS 80K
• Available at bookstore
XNA Game Studio Express Architecture • You write your game in C# ►
Using features in XNA Framework
• Runs on top of common language runtime (“Managed Code”) Game code (C#) & content
XNA Framework
Common Language Runtime (CLR)
Windows APIs, DirectX You provide
Provided for you
XNA Features • 2D & 3D graphics support ►
Access to HLSL (High level shader language) • Pixel and vertex shaders
• Audio support ►
XACT cross-platform audio tool
• Controller and keyboard input ►
• • • • •
Xbox 360 controller
Font support Content Pipeline Game save storage Networking … and much more
Installing XNA Game Studio Express • Follow instructions at: ►
http://creators.xna.com/Education/GettingStarted.aspx
• Install Visual Studio ►
►
►
Visual Studio is an integrated development environment (editor/debugger/compiler) Unless you currently use Visual Studio, you want “Visual C# 2005 Express” Two step process • Install “Visual C# Express” • Install “Visual C# Express Editions Service Pack 1” • Both are necessary
• Install XNA Game Studio 2.0 ► ► ►
You want version 2.0, the latest version This was recently released, so textbook covers only 1.x version Versions are mostly the same: big new feature is networking
XNA Creator’s Club • XNA Creator’s Club Website ► ► ► ► ►
http://creators.xna.com/ Community website for XNA GSE Multiple complete games with source code Many tutorials, and code examples Very active discussion forums
• Creator’s Club Subscriptions ► ► ►
Necessary to put game on Xbox 360 Access to premium content Costs $99/year, but Microsoft will offer free memberships for educational use in January • No details yet, recommend wait-and-see • I will get everyone a subscription if possible, once this program starts
XNA Community Web Sites • XNA Team Blog ► ►
blogs.msdn.com/xna/ Announcements from the XNA dev. Team
• Ziggyware ► ►
www.ziggyware.com Developer-oriented XNA news
• XNA Development ► ►
www.xnadevelopment.com XNA tutorials. See also the Links page for links to other quality XNA websites
Instructional DVD • Beginners Guide to XNA Game Studio Express ► ► ►
►
I have 11 copies, to lend to students See me to check out and return Very good tutorial guide, aimed at people with no knowledge of C# Recommended
Controllers • XNA Game Studio Express allows you to use Xbox 360 controllers ►
►
Normal Xbox 360 controller is Bluetooth wireless, and is not recognized by the Windows Bluetooth manager Hence, when developing game under Windows, won’t be able to test control scheme (bad)
• To create a game using Xbox 360 controller, need to buy a corded Windows Xbox 360 controller (~$35 + shipping) ►
►
Should buy now, so you have it ready for when you start programming Google for “xbox 360 controller windows” for multiple online vendors
• Can also create a game that uses keyboard input ►
Will need to change control scheme to port to Xbox 360
Demonstration of Visual C# Express & XNA • Demonstration of loading, compiling, and running one of the sample games for XNA Game Studio Express
Homework • Visit Creators Club website • Download and install XNA Game Studio Express • Compile and run one of the sample games • Read Chapters 1-3 of XNA GSE text