App Hub

开发人员特别推荐

Academic Spotlight: Tufts University

Ming Chow, a professor at Tufts University, chatted with us about the course he teaches using XNA Game Studio, and chats about his class, the goals, and what he hopes students get out of it. We also chat with a group of his students who competed in Imagine Cup 2010 with their game, Nanobots!

Can you describe the game design course you teach?
What my course is not: just game programming. My course runs the full gauntlet of game development. The course delves into topics including the game design, game engine, 2D and 3D rendering, user interfaces, sound, animation, and physics. The course also covers advanced and current development topics including mobile game development, databases, networking, and securing online games.

The reason why my course is so deep is because game development requires all facets of computer science, including computer graphics, artificial intelligence, algorithms, data structures, networking, and human-computer interaction. Students have to write game design documents (even one with technical constraints), create an interactive fiction game, program an autonomous robot, and of course, work in a team to create a working 2D game.


What are the goals of your course?
My hope is that my students will:

  • Create working games.
  • Learn how game development requires all facets of computer science, including computer graphics, artificial intelligence, algorithms, data structures, networking, and human-computer interaction. For students who are not studying computer science, it is a tremendous opportunity to be exposed to the field.
  • Understand why fields such as mathematics, economics, physics, and psychology are critical to game development.
  • Learn the fundamentals of software engineering and design.
  • Learn to make decisions given constraints (technical, economical, etc.).
  • Understand that developing a large-scale game reuqires solid communication and coordination, management, and teamwork.
  • Appreciate and realize the importance of documentation and testing in any engineering effort.
  • Have fun!

What should students expect if they take your course? 
It is not an easy course. It is very demanding. We do not spend a lot of time playing games. The course is not entirely programming. Technical students (majors) will need to work with non-technical students.


What has been your experience using XNA Game Studio for teaching purposes>  
So far, it has been good.  My directed study students (for those who have taken my class before) had absolutely no trouble learning XNA Game Studio after working with Java for games.  The problem: those who have Macs (and there are many these days).  You practically cannot run Visual Studio with XNA Game Studio on a virtual machine, so the only option to have Visual Studio with XNA Game Studio on the Mac is to have a dual-boot with Windows XP.  This is a bad option for non-technical students.


Have you participated in Imagine Cup either as a mentor and/or with students from your class?
Yes, and I am absolutely proud that one team made it to the US [Imagine Cup 2010] finals in Washington D.C.!


Can you tell us about the games created by your students for Imagine Cup’s Game Design competition?
One submission was called GaiaTech.  It is a 3D game to where you control either environmentalists or industrialists in South America to save or destroy the rainforest!
The award-winning submission by Anit Das, Cobin Dopkeen, Gilad Gray, and Nadia Rodriguez is Nanobots! The theme of the game is combating diseases using nanobots.  One of the biggest problems in medicine today is the precision and accuracy of treatments because many procedures require precision on a very small scale, which is difficult to do with today's tools.


How has your experience with Imagine Cup been?
Fabulous so far.  It has been a very professional experience.  Imagine Cup incorporates both academic and business aspects.  The latter is not seen in most CS curricula, which is problematic; those who step out of academics and go into a business environment are woefully unprepared these days.  Despite the fact that my students were informed late in January about the Imagine Cup (and the spring round was due on March 15th), Imagine Cup is a very good way to be thrown-into-the-fire or into-the-wolves to create a working game.  And these days, who doesn't dream of doing that?


Would you recommend participating in Imagine Cup to future students?
Yes. Without reservations. Enough said.


What’s next for you?
Gee, where can I start? A lot of grading, including final exams and projects.  Then I want to get some rest, play a few games, and prepare for the fall semester.  I am scheduled to teach the Game Development class again along with Web Programming (which should be renamed to Web Development).
We also chatted with the students who created Nanobots!: Anit Das, Cobin Dopkeen, Gilad Gray, and Nadia Rodriguez.


How many people are on your team, and what are their roles?
There are four of us on the team:

  • Anit Das Project Manager, PR. I've also been doing some coding and some art (such as the menus and HUD), and will also be responsible for composing the music once the time is right for that.
  • Cobin Dopkeen Lead Design. Cobin designed most of the weapons and enemies, as well as designed the gameplay of the levels.
  • Gilad Gray Lead programmer. A large majority of the code is thanks to Gilad.He also created a graphical utility that was used in level design.
  • Nadia Rodriguez Lead art. Nadia drew all the sprites in the game and is responsible for the realization of the look and feel.

How would you describe Nanobots!?
Our game Nanobots! is a 2D top-down arcade style shooter.  We like to think of it as a "Magic School Bus meets Geometry Wars".  All parts of the game are meant to be single or multiplayer capable, allowing for each person to enjoy the game in their own way.
 
In Nanobots!, players take control of the nanobots, little microscopic robots, that are equipped with a large variety of disease-fighting weapons. There is a campaign/story mode in which players traverse various bodily systems and attempt to eradicate bacteria, viruses, infection, and other malicious miscreants in an attempt to cure patients of their diseases.  There is also a variety of multiplayer modes in which players can compete against each other, in modes such as Survival, Versus, and Follow the Leader.  There are plans for many more multiplayer modes in the near future such as Capture the Flag and Tag.  We have plans to make the game playable over the network, such that players can play with or against each other across the globe.
 
The game is fast, frenzied, bright, colorful, witty, and tongue-in-cheek.  It is meant to be playable by people of all ages, and is also meant to be an educational experience.  The diseases portrayed in the game are real life problems faced by real people, and occur in the relevant parts of the body.  The education is never meant to get in the way of the fun, but we like the idea of kids playing the game and getting in the mindset of fighting disease and curing patients.


How did your team come up with the name Nanobots!?
Well, nanobots are a real technology that are being tested to fight cancer, so the 'nanobots' part of the name was an obvious choice.  The real creativity in our naming process came in adding the exclamation point to the end of the title.  It was an important addition that truly reflects the silly personality of the game.  It is pretty important to us to remind people that the game isn't called Nanobots but Nanobots!

You can get a taste for what it sounds like in the YouTube video of our Nanobots! demo.


What made you want to make Nanobots!?
Cobin and Gilad wanted to make some sort of shooter game that featured fast and frenzied action for their guided study class with Ming Chow.  Taking that idea and combining it with the theme provided by the Imagine Cup (and the various restrictions that came with the competition), we eventually came to the idea of nanobots in the human body fighting disease.


How long did it take you to make this game?
Oh boy. The game took 10 weeks from storyboard to essentially the "Beta" version that we took with us to [the first round of the 2010 Imagine Cup in Washington, D.C.].  If we had to count actual man-hours spent...I would have to give a low estimate of around 1,000.  We spent a long, intense amount of time on this game.  We're nowhere near where we want to be in terms of actually releasing the game as a product, but we are super pleased with how far it has come already.


How have your classes at Tufts prepared and helped you with making Nanobots!
This project has been a culmination of a lot of different kinds of knowledge. Anit, Cobin, and Gilad are all sketch comedians in the campus group, "Major: undecided" and our experience for comedic writing and acting helped us generate the personality of the game.  

Little bits of all of our computer science knowledge helped us make the game as a program.  We had not worked much with C# before the game, but having learned C/C++ and Java made it an easy transition.

Our knowledge of data structures and algorithms helped us do collisions efficiently.  Knowing a bit of computer architecture allowed us to understand the physical capabilities of the Xbox 360 and helped us understand what we could and could not let the Xbox 360 compute and display per tick of gameplay, and just how much we could push it.  

Anit and Gilad's work with typography and other kinds of design helped us pinpoint exactly what we wanted the game to look like and communicate it to Nadia to generate. Naturally, our game design class helped us understand how exactly a game runs and functions as a piece of code.


Did you playtest Nanobots! through XNA Creators Club Online?
We had put our demo (that we had submitted for the first round of the competition) on XNA CCO. We were surprised by how quickly and how earnestly other developers helped us improve our game.  We cannot wait to put the latest version on there so we can get more fine-grained critique and feedback.  We intend to put the latest version of our game on XNA CCO very soon so we can get even better feedback that can really help us improve our game.


How was your experience using XNA Game Studio to make Nanobots!?
Absolutely wonderful.  XNA Game Studio makes making games very easy, and it was an absolute pleasure being able to tweak our games live on an Xbox 360 as we were coding.  The online resources and tutorials were also very helpful whenever we were in a bind.  


What made you decide to enter the 2010 Imagine Cup?
We were attending a guest lecture in Ming Chow's game design class with presenters Edwin Guarin and Chris Bowen from Microsoft NERD. They were demoing how easily XNA Game Studio can develop multi-platform games.  The ultimate selling point that blew us away was when Chris showed, using only a single line of code, how to move an object on screen using a thumbstick on the Xbox 360 gamepad.  We were sold on the idea of competing right then and there, signed up, and started brainstorming, designing, and planning.

Developing the game was equal parts fun and stressful, and it has been plenty of both those things.  We recently got back from the Washington, D.C. competition, which was the experience of a lifetime. Everything we found out about Microsoft was fun and very inspiring to us as students and tech nerds. The only thing we found frustrating was the fact that the game design judges did not actually play our game in the judging process.  However, it was a learning experience and hopefully we can put what we learned to use in the next round of the Imagine Cup in Poland.


Are you working towards a game development/design degree?
None of us are working towards a degree of any kind in gaming, but we would all very much like to work in the gaming industry.  Nadia naturally gravitates towards the art side of the industry.  Anit and Cobin would ideally like to be in the design and development areas of production, and Gilad would find the most enjoyment in being a hardcore programmer.


Any plans to release Nanobots! to Xbox LIVE Indie Games?
We have a lot of work left to do on Nanobots! before it is ready to deploy it to XBLIG.  We would all love to be able to keep working on games and release them on XBLIG eventually, but there is so much functionality and awesome features that we want to add to Nanobots! that we haven't really thought about it yet.


What advice would you give other students looking to build a game?
The XNA Framework, tutorials, and community are excellent resources that we also found very helpful. Any student with a decent foundation in computer science can go through these things and learn incredible things and be well on their way to making complex games.



Are you a student or teacher who uses XNA Game Studio in the classroom or has made an Xbox LIVE Indie Game for school? We'd love to hear your story and perhaps feature you in a future Academic Spotlight. Shoot us an email to Creators@Microsoft.com and tell us all about it.
 
var gDomain='m.webtrends.com'; var gDcsId='dcschd84w10000w4lw9hcqmsz_8n3x'; var gTrackEvents=1; var gFpc='WT_FPC'; /*<\/scr"+"ipt>");} /*]]>*/
DCSIMG