1 / 9

XNA Game-Themed Programming Assignments

XNA Game-Themed Programming Assignments. Idea. Given a “Starter Project” with All Graphics and User support Does not work! Students complete the system by implementing the “missing piece” Support Professors who does not know any graphics or games programming!.

zanna
Download Presentation

XNA Game-Themed Programming Assignments

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. XNA Game-Themed Programming Assignments

  2. Idea • Given a “Starter Project” with • All Graphics and User support • Does not work! • Students complete the system by implementing the “missing piece” • Support Professors who does not know any graphics or games programming!

  3. Our Approach: Game-Themed Assignment • A set of Programming Assignment Modules … • Designed to be adopted selectivelyin existing classes • No requirements on knowledge of graphics or gaming • 7 assignment modules on well defined CS1/2 topics: • For example: 2D Array / BST / Lists etc. • Each module includes 2 versions: • Game-themed and “traditional” console version • Console version is a good reference • Based on the same topics, the two versions may be different: e.g.: • 2D Array / BST / Lists

  4. Assignment Module: Contents • For Faculty: • Summary page: prerequisite + learning outcomes • Sample pre and post-tests • Sample solution: console / XNA • Sample Grading rubric (console / XNA) • FAQs • XNA Implementation Guide: on Graphics + UI • For Students: • Description of the assignment (console / XNA) • Skeleton starter project (console / XNA)

  5. All The Assignments • XGA ReleaseNote • Operator: • Console, XNA Starter, XNA Solution • Random Numbers & Arrays: • Console, XNA Starter, XNA Solution • Array of Object References: • Console, XNA Starter, XNA Solution • 2D Array: • Console, XNA Starter, XNA Solution • Class Hierarchy: • Console, XNA Starter, XNA Solution • Linked Lists: • Console, XNA Starter, XNA Solution • Binary Search Tree: • Console, XNA Starter, XNA Solution

  6. Starter Project • Our experience: • Students must modify same source code • E.g., Operator: • Console, XNA Starter, XNA Solution • Students are given a well defined API • E.g., BST: • Console, XNA Starter, XNA Solution

  7. Example XGAs: Switch, Modulus, Integer Division • What Worked Well: • Graphical, interactive • Forced students to think about things like mod operator, in an open-ended / real-world-ish sort of way • What Didn’t Work So Well: • Students can do this without integer division • (Do real division, then cast to int, then do mod) • One can’t really solve this without some understanding of the video game structure – Color.Red, or a clear view of the coordinate system.

  8. Example XGAs:Binary Search Trees • Students implement a BST of chars • Add( char c ) • Find( char c ) • int FindTreeDepth() • Clone() -> new, deep copy of the tree • void Balance() // balances existing nodes in-place • Students do NOT implement: • BST also has an in-order traverse method, privately implemented in the base class, so that the video game works, but doesn’t give away answers

  9. Example XGAs:Binary Search Trees • What Worked Well: • Graphical, interactive • Nicely isolated BST – students really did not have to know about the gaming aspects • Could potentially re-use Console based stuff, including unit tests, etc • What Didn’t Work So Well: • Example being too “academic”?

More Related