Programming Language, IDE, and Graphics Library:


In this class, for this quarter, we will use:

1.      Programming Language:  C#, if you have not worked with C# before, be prepared to learn it in the first week by yourself. By this point, after CSS342, you should be very familiar with Java or C++. Well, C# is very similar to both.

2.      Graphics API: We will be using the XGCS1Lib. This is a very simple library we build for teaching and learning introductory programming concepts based on building games. You can find out more about the research project here. This library is based on the Microsoft XNA framework, though in this class we will not learn anything about the XNA framework. Check out CSS450, if you are interested in learning about Computer Graphics.

3.      Hardware platform: This is a class about building games so, we will try out our games on the Xbox 360 gaming consoles and the Windows Phone 7 devices.

Here are the details about the software you will need to install, and some other details:

1.      The Integrated Development Environment (IDE): You can use Visual Studio 2010 (VS2010), or Visual C# Express 2010 (VCE2010).  VCE2010 is a subset of VS2010, it is lighter weight. All examples provided and examples presented in class will be based on VCE2010. You can open VCE2010 projects with VS2010. You can choose which IDE you want to work with. To find out more information about VCE2010, go to:

·         http://www.microsoft.com/express/download#webInstall select C# Express and English to download/install.

2.      You need XNA 4.0: Since the library we work with (XGCS1Lib) is based on the XNA Framework, you need to install XNA Framework before you can use the XGCS1Lib. Here are some details:

·         Since we are also going to work with Windows Phone 7, you can download everything from: http://create.msdn.com/en-us/home/getting_started

·         Alternatively, if you insist on downloading XNA4.0 separately, you can do to: http://www.microsoft.com/downloads/en/details.aspx?FamilyID=9ac86eca-206f-4274-97f2-ef6c8b1f478f 

·         It is a good idea to install IDE _before_ XNA.

3.      The XGCS1Lib: This is the very simple XNA framework based library we will be using.

·         Here are the step-by-step guides and tutorials on how to work with this very simple library.

·         Here are the libraries: XGCS1Lib for PC, for Xbox 360, and for WP7.

·         Here is the documentation for the library.

·         Here is the source code to the library (no needed for our class, just in case you are interested).

4.      Xbox 360 needs: to work with the Xbox 360, you must join the membership of Microsoft App Hub:

·         Find out more about XNA and what you need: go to: http://create.msdn.com/en-us/home/membership.

·         Membership: as a UW student you can obtain free creators club membership. Here are a couple of instructions from our fellow classmates (they are slightly different, study them and choose one you like to follow J): from Jason Weaver, and/or from Adam Weyant.

·         Here is a short discussion on how to connection your PC to your XBOX360 console (we have a few stations in the Windows Lab that you can work with).

 

Learning C#: To learn a new programming language, my recommendation is to examine existing source code performing tasks you are familiar with. Mostly, you will be looking for “how to” and not “what is”. In another word, you are learning to use a new tool and not learning any new concepts. If you like to read “physical paper” books, any book out there on C# will do, I do not have a good recommendation because I do not refer to any of them. When I need answers to “how to” do something in C#, I look for code snippets online, and I refer to C#’s reference manual at: http://msdn.microsoft.com/en-us/library/kx37x362.aspx. In our class all sample source code are provided in C#, so that is a good source for examples.