+ All Categories
Home > Documents > Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

Date post: 03-Jan-2016
Category:
Upload: karleigh-walls
View: 14 times
Download: 0 times
Share this document with a friend
Description:
Brian Ladd Tiffany Barnes Dan Cliburn. Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque. What we will cover. Terminology Games in the Curriculum What is Torque? How do I get Torque? How do I use Torque in a course? Lab Time!. Terminology. Computer Game - PowerPoint PPT Presentation
21
Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque Brian Ladd Tiffany Barnes Dan Cliburn
Transcript
Page 1: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

Advanced Game Courses in Computer Science: Getting

Beyond Square One with Torque

Brian Ladd

Tiffany Barnes

Dan Cliburn

Page 2: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

What we will cover

• Terminology

• Games in the Curriculum

• What is Torque?

• How do I get Torque?

• How do I use Torque in a course?

• Lab Time!

Page 3: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

Terminology• Computer Game

– A computer game, taken broadly [7], is any game where game moderation or competition is provided by a computer program.

• Game Assignment– Game assignments are individual assignments within

a more traditional college-credit course that focus on the development of a computer game.

• Games Course– A computer game course is a college-credit course

with a primary focus on computer games. In Computer Science this means a focus on computer game development though some departments have game design courses and tracks.

Page 4: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

Terminology• Game Genres

– Describes the type of game, such as Real Time Strategy, Massively Multiplayer Online Role Playing, or First Person Shooter.

• Game Engine– An application framework designed for building

games. Typically engines are focused on particular genre and/or dimensionality.

• Game Platform– The target computing platform where the program will

run; this can be the PC or, more and more, a game console with some sort of homebrew modification on it. XNA supports Xbox360; Nintendo GBA and DS homebrew carts are fairly affordable; open-source 8-bit rigs (such as the Hydra) are available.

Page 5: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

Games in the Curriculum

• Games in Lower-division courses– Game assignments can illustrate many CS

topics [2, 8]– Students prefer game assignments [4,5]– Students are “domain experts” with games [6]– Females enjoy playing games too [10]

PRACTICAL ISSUES:– Games typically for individual assignments– Often much is provided for the students– Focus on computing problems is important

Page 6: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

Games in the Curriculum (cont)

• Games in Upper-division courses– Greater breadth of design

• Game development is harder than you think [3]• Increased aesthetic investment• Can control violence for different students tastes

– Project-based, team programming course• Software engineering focus• Chance for team failure

• Games in Summer Camps/Outreach Events– Generally focus on what is fun about games

Page 7: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

Software Engineering• Large codebase (TGE: 26K LOC)• Design Patterns

– Factory

– Decorator

• Documentation– Real, commercial code you can examine

– What does it mean to document intent?

• Version Control (non-optional)– Useful tool

– Safety net

– blame for assigning team credit

Page 8: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

Game Genre Selection

• What are we teaching?– Game design

• Creating a compelling gameplay experience; designing the game mechanics and levels.

– Game programming• Translating a game design into a playable

computer program. Realizing the compelling gameplay experience.

Page 9: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

Dimensionality in Games

• Dimensions of freedom for the player [1,9]– 0D – player limited to a single screen– 1D – player on a rail; forward and backward– 2D – top-down, isometric-projection,

platformer– 3D – fully realized world

• Increasing complexity of – Design– Interface

Page 10: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

Interface and Dimensionality

• Text-based– Interactive fiction– Much easier interface

• Two-dimensional– Sprite-based– Isometric projection

• Three-dimensional– Computer generated graphics

Page 11: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

What is Torque?• Benefits

– Mature product (2008 Game Engine of the Year by Game developer)

– XNA support out of the box– Helpful community– Good art asset support

• Costs– Microsoft operating systems (primarily)– Actual cost of software (reasonable)

• Alternatives– Irrlicht (Open source)– XNA Game Studio 3.0 (Free)– Unreal Engine (Commercial)

Page 12: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

How do I get Torque?

• Evaluation Licensing for all attendees

• E-mail sent to e-mail list.

• Pricing– Educational pricing on 10+ seats

Page 13: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

Teaching with Torque Game Engine

• TGE is a scriptable 3D engine

• C++ source available

• At least two approaches:– Scripting Focused– C++ Focused

Page 14: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

Script Focused

• Focus is on using available resources

• Easier to spend time on game design and/or game studies

• Quicker turn around time on changes

• Can hide how hard game development is

Page 15: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

C++ Focused

• Study of the engine

• Changes are harder to make– Means game designs must be more modest– Student frustration is a major concern

• Modifying a mature engine can be difficult– What useful modifications are left to make?

• Much more time spent in the mechanics

Page 16: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

Lab Time

• Looking at the Torque Game Engine Codebase

• What got installed?

• Where?

• How do I start a new game?

Page 17: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

Learning by Scripting

• Adding a new in-game object– Game resource folder hierarchy– Getting resources

• The client/server architecture

• Starting a game

• Using the console

Page 18: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

Extending the Engine

• Lab Activity

Page 19: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

Practical Advice

• Outcomes and Grading

• Group Projects

• Sample Assignments

• Sample Syllabi

Page 20: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

References1. Adams, E. The Designer's Notebook: Defining the Physical Dimension

of a Game Setting. Gamasutra. April, 2003. http://www.gamasutra.com/view/feature/2864/the_designers_notebook_defining_.php

2. Barnes, T., Powell, E., Chaffin, A., Godwin, A., and Richter, H. Game2Learn: Building CS1 Learning Games for Retention. Proceedings of the 12th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education (ITiCSE 2007), June 23-27, 2007, Dundee, Scotland.

3. Blow, J. 2004. Game Development: Harder Than You Think. Queue, 1(10), (Feb. 2004), 28-37.

4. Cliburn, D. The Effectiveness of Games as Assignments in an Introductory Programming Course. Proceedings of the Thirty-Sixth ASEE/IEEE Frontiers in Education Conference (FIE 2006), October 28-31, 2006, San Diego, California.

5. Cliburn, D. and Miller, S., Games, Stories, or Something More Traditional: The Types of Assignments College Students Prefer. Proceedings of the 39th ACM Technical Symposium on Computer Science Education (SIGCSE 2008), March 12-15, 2008, Portland, Oregon.

Page 21: Advanced Game Courses in Computer Science: Getting Beyond Square One with Torque

References

6. deLaet, M., Kuffner, J., Slattery, M., and Sweedyk, E. Panel Session: Computer Games and CS Education: Why and How. Proceedings of the Thirty-Sixth SIGCSE Technical Symposium on Computer Science Education (SIGCSE 2005), February 23-27, 2005, St. Louis, Missouri.

7. Kerr, A. The Business and Culture of Digital Games: Gamework and Gameplay. London: Sage Publications, 2006.

8. Ladd, B. The Curse of Monkey Island: Holding the Attention of Students Weaned on Computer Games. Journal of Computing Sciences in Colleges, 21(6), 2006, 162-174.

9. Rucker, R. Software Engineering and Computer Games. Harlow, England: Addison-Wesley, 2003.

10. Wolz, U., Barnes, T., Bayliss, J., and Cromack, J. Panel Session: Girls Do Like Playing and Creating Games. Proceedings of the Fortieth SIGCSE Technical Symposium on Computer Science Education (SIGCSE 2009), March 3-7, 2009, Chattanooga, Tennessee.


Recommended