How
3d Game Programming can Benefit the TeraGrid
Las Vegas NV, 11June2008
This url is https://stewart.sdsu.edu/summer008/Stewart_TG08-final-2.htm |
Several
in high performance computing acknowledge that we are “indebted to the
gamers" for pushing the envelope on processor speed, graphics resolution
and rendering capabilities of the PC hardware that the HPC community uses to
build systems. This talk presents the upper division, university curriculum that
has been developed over three years of teaching a topics class that engages our
current "raised digital" undergraduates to demonstrate their creativity through
programming a game that can be used in alternate situations. This has been deployed in a high school
physics course to demonstrate "Projectile Motion under Magnetic
Force" and we propose that a game can be effectively used to promote HPC
and the TeraGrid.
At San
Diego State University, a grant for “Engaging People in Cyberinfrastructure
(EPIC)” [1] from the National Science Foundation, supported development of
projects to explore how the commercial Game Engines might be used to support
Science Education. Our effort resulted
in a collaboration with the Visualization Services group at the San Diego
Supercomputer Center (SDSC), led by Steve Cutchin, convincing us that the
Torque Game Engine (TGE) [2] would be an appropriate cross-platform game
development technology. The pricing from
the maker, GarageGames of Eugene OR, was also attractive, initially $100 / seat
for a license, access to full source code and membership in a vibrant user
community that had been growing since 2000.
The project is hosted on the SDSC Game Grid [3], where you can download the
high school game called “The Physics Game”, as well as SDSC’s Science
Exploratorium, the Astronomy Module
flying in space, Stonehenge as it looks today, Stonehenge reconstructed,
Stonehenge at night and an Exploration
to Antarctica,
EPIC funding provided the
opportunity to collaborate with two high school science teachers at
Meetings with the Mr. Hal
Cox of Hoover High, our student game-programmers and the author resulted in a
model that used an over-sized C-Magnet to represent the Magnetic Force. The goal would be to fire a projectile at a
target on the opposite side of the magnet, compensating for the direction of
the force shown above. The undergraduates benefited from the opportunity to
develop for a “client” away from campus and learned a valuable lesson to view
from the eyes of the client and change their terminology of “First Person
Shooter” (FPS, the standard term in the industry) to “First Person Point of
View”, showing respect for the 1999 tragedy at
Balancing
the influences on one’s own campus with the vast professional world behind, two
individuals whose work has greatly influenced the author need to be mentioned:
John Seely Brown and Jean M. Twenge.
John Seely
Brown and Douglas Thomas [5] recently described the impact of today’s
multiplayer games as establishing five key attributes of the gamer disposition:
They are
bottom-line oriented
They
understand the power of diversity
They thrive
on change
They see
learning as fun
They
marinate on the “edge”
Based on
teaching 3d Game Programming for three years now, this describes the attributes
in our current SDSU undergraduates and faculty continue to look for ways to
capitalize on these traits.
3.1.2 Growing
Up Digital (March/April 2000)
John Seely
Brown’s article “Growing Up Digital: How the Web Changes Work, Education and
the Ways People Learn” [6] has a profound impact on this author. January 18, 2005, Dr. Brown was invited to
speak at
Key points
learned from Dr. Brown are to learn to capitalize on our students’ creativity
by honoring the vernacular of this “multimedia-literate” generation. We need to ensure we communicate complexity
in a simple fashion and, by this example, encourage our students to develop
this skill. Their future workplace is
likely to have them working in multidisciplinary teams and their individual
expertise will need to be communicated, and valued, by other team members whose
expertise may well be deep, but specialized to another skill set and vocabulary. Brown also stressed the benefit of “learning
in situ”, modeling the team approach for development and critique within our
classrooms. The SDSU 3d game programming
course benefits from being scheduled in
our Learning Research Studio [11] which has tables seating 6 students,
wirelessly connected PC notebook or tablet computers for each student checked
out at each class meeting, two projector screens and an interactive,
touch-sensitive whiteboard that can be easily configured to take input from the
instructor’s console or, using the remote-video/audio feed at each of the
student tables, from a student’s notebook computer. This models MIT’s architecture studio
promoted by Dr. Brown where all work is done in public with many opportunities
for critique and collaboration.
Professor
of Psychology at
Consider
these findings and compare with the thoughts of John Seely Bown, especially
from Section 3.1 on “Game Disposition”.
There is a
growing recognition in the field that Game Programming can be targeted to serve
as a large example of object-oriented programming and used as a basis for
teaching a course in Software Engineering, a required course at San Diego State
Univeristy for all CS majors. There is even
textbook support for such curriculum [12] and colleagues have curricula in
place.
At
The student
Learning Outcomes are
·
Students gain
the understanding of the large, complex software environment provided by the
Game Engine and develop their Object Oriented Programming skills through
scripting.
·
Students begin
to develop the “soft skills” needed in the gaming industry, as expressed by
their possible employers such as Electronic Arts (EA), Microsoft (Xbox360 Games
Development Group), Epic Games, and others.
These include the ability to describe the software they create in manner
that is understandable by a broad audience that may be their future
clients. Communication skills are
developed through course exercises and assignments.
·
Students gain
the understanding of how to effectively work as a member of a group to create a
software product.
·
Students learn
the capabilities and responsibilities of using the campus computer network and
computer labs.
·
Students learn
to value the point of view of others by developing sensitivity to how other
view their work. Examples of how
computer games are used in education are explored.
TeraGrid provides a
capability for networked games that might challenge many campus firewalls and
other network policies, but will enhance the engagement of individuals in
far-flung geographical locations in a common game. This engaging environment
can be channelled to build awareness and expertise of the users in skills that
promote effective TeraGrid use.
Collaboration between the TeraGrid and curriculum developers will
benefit all. Lets start now.
Acknowledgment
The
author wishes to thank the student programmers, who designed the Physics Game,
Skylar Hayes and John Nguyen. The two
high school teachers who posed our original 3d problems, Robert North and Hal
Cox, showed mastery of their disciplines and provided essential insight into
what might work for their students at
References
[1] Engaging People in
Cyberinfrastructure (EPIC)
http://www.nsf.gov/awardsearch/showAward.do?AwardNumber=0520146
[2] Torque Game Engine, GarageGames, Eugene OR
http://www.garagegames.com/
[3]
Game Grid, San Diego Supercomputer
Center (SDSC) http://visservices.sdsc.edu/projects/gamegrid/
[4] California State Grades Nine Through Twelve – Physics
Science Content Standards
http://www.cde.ca.gov/be/st/ss/scphysics.asp
[5] John
Seely Brown and Douglas Thomas, “The Gamer Disposition”, Harvard Business
Conversation Starter, February 14, 2008
http://conversationstarter.hbsp.com/2008/02/the_gamer_disposition.html
[6] John Seely Brown, “Growing Up
Digital: How the Web Changes Work, Education and the Ways People Learn”,
Change, March/April 2000
http://www.johnseelybrown.com/Growing_up_digital.pdf
[7] John Seely Brown, “The Future of Education in a Digital
Age”, SDSU speech January 18, 2005.
Transcript available
http://pict.sdsu.edu/jsb_lecture18jan05.pdf
[8] IMSAI 8080 microcomputer, Wikipedia Reference,
http://en.wikipedia.org/wiki/IMSAI
[9] Kris Stewart, “The Microcomputer as a Tool in Numerical
Analysis”, ACM SIGNUM Users Group Conference,
[10] K. Stewart, Master’s Project at SDSU, 1979. Code
archived at NIST through collaboration with David Kahaner. SCRUNCH = Small
Crunch – A Numerical Analysis Library in Basic for the Intel 8080 with Z80
floating point processor computer. (Note, this was prior to the IBM PC based on
the 8086 chipset).
http://gams.nist.gov/serve.cgi/Package/SCRUNCH/
[11] ITS Learning Research Studio,
AH1112 at
http://its.sdsu.edu/resources/exclassroom/index.html
[12] John P.
Flynt and Omar Salen, Software Engineering for Game Developers, Thomson Course
Technology,