Game Development with XNA and Microsoft Technologies: Semester 2
Imagine designing and programming a simulation or game to address a real-world problem. Now imagine that the application can be operated on a mobile device and can be sold in a global marketplace. The excitement and engagement of programming within a game context continues as students learn to design and implement complex games within the Windows Phone 7 environment and explore games with Advanced XNA and Kinect.
Game Development with XNA and Microsoft Technologies—Advanced XNA, Kinect and Windows Phone 7: Semester 2 is a capstone experience in designing a simulation or game solution and deploying it the Windows Phone 7, Xbox and Kinect. Students will learn about using a touch interface, analyzing accelerometer data, and sensor data, as well as communicating and collaborating within a team. Students will create complex algorithms for game situations using advanced data structures such as Stacks, Queues, and Lists.
This curriculum package of three modules contains a curriculum framework, lesson plans, demonstration projects, lab assignments, student activities, and assessment tools with keys and exemplars. Each 6-week module focuses on a specific technology and can be used independently.
Advanced XNA
Pat Yongpradit, Springbrook High School, MD
The Advanced XNA Development Module guides students through the creation of an object-oriented game. Along the way, they learn how to apply inheritance and polymorphism within a game context. These topics align with the Advanced Placement Computer Science exam. The module contains four units:
-
Unit 1
: In Unit 1, students will create an object-oriented video game, which will be used as the basis for further study of object-oriented (OOP) concepts like inheritance and polymorphism in subsequent units.
-
Unit 2: In Unit 2, students will advance from creating game components as structures to coding them as classes. Students will learn the difference between structures and classes, and managing data by value and reference.
-
Unit 3: In Unit 3, students will learn to code an inheritance relationship between two classes, by placing their common code into a superclass and extending it as subclasses. They will override methods using an inheritance relationship to specialize the behaviors in the subclasses.
-
Unit 4: In Unit 4, students will apply their knowledge of OOP to create of a game based upon a social cause. They will work in collaborative teams as designers, programmers, artists, and managers to design, develop, test, and refine their game.
Kinect Development
Doug Bergman, Porter-Gaud School, SC
The Kinect Development Module contains three units plus resources. These Kinect lessons are project-based units in which student learning is facilitated by labs and activities. The goal of this series of lab assignments is to allow students to quickly begin writing their own games, simulations, and activities. All the development tools that you need can be downloaded for free.
-
Unit 1: Unit 1 reviews the Kinect sensor, how it can be used, how it connects, setup, testing, and how to write programs which interact with it.
-
Unit 2: Unit 2 introduces receiving and displaying live video from the Kinect sensor. Additionally, students will use skeletal tracking and a version of depth tracking, so that they can bring in the background and body image in 2D and 3D.
-
Unit 3: This unit focuses on a feature that may be one of the most interesting, and less known of the Kinect SDK—the ability to receive and interpret audio input.
-
Kinect EXPLORER demonstrates the depth and video cameras and shows the skeleton tracking provided by the SDK.
Windows Phone 7
Tim McMichael, Kellis High School, AZ
The Windows Phone 7 Development Module gives students the opportunity to apply their development skills to a new platform: mobile games and apps. Windows Phone 7 (WP7) applications can be developed using either XNA or Silverlight, and this module will introduce students to both frameworks.
-
Unit 1: In Unit 1, students will use their existing XNA development skills to create games for WP7 using touch input and accelerometer data.
-
Unit 2: Unit 2 introduces Silverlight as a development platform for WP7. Students will learn about the event-driven programming model, user-interface design for WP7 applications, and how databinding allows the user interface to access and modify data.
-
Unit 3: In the final unit, students will explore additional features available to WP7 developers, such as page navigation, multimedia integration, and isolated storage.