Instructr Sam Stkes Email sstkes@micrsft.cm Classrm SAC 2012 Class time 7 PM t 10 PM Office Call r email t set up apt. Office Hurs Phne 949 6275736 Skype: scalsamstkes URL http://blgs.msdn.cm/devschl Curse descriptin: This curse teaches students thrugh lectures, discussins, demnstratins, and classrm labs. Students learn the knwledge, skills, and abilities necessary t create games in the C# prgramming language using the Micrsft XNA Framewrk and Silverlight. This curse is intended fr peple wh aspire t careers as cmputer prgrammers and game develpers. Prerequisites: Nne Textbk: Intrductin t Prgramming thrugh Game Develpment Using Micrsft XNA Game Studi 4.0 Students can purchase the bk, r use the free ebk prvided by prfessr. Students will accessibility issues are ask t use the free ebk
Curse Outcmes: By the end f this curse, the students shuld be able t: 1. Understand the use and applicatin f clud cmputing and the design f web based games 2. Understand the fundamentals f c# prgram cnstructin including the implementatin f blcks, cnditinal statements, lps, and switch cnstructins. 3. Understand the principles f variable creatin and data strage in a c# prgram, including the use f identifiers, variable declaratin, lcal and class scpe variables, integer and flating pint strage, widening, narrwing, and casting. 4. Make use f c# cllectins in prgrams, including arrays, lists, and dictinaries. 5. Understand the use f methds and the use f value, reference, and ut parameters in methd calls. 6. Create bjects cntaining data fields, behavirs, and cnstructrs. 7. Create data prperties t prvide managed access t data fields within an bject. 8. Understand the fundamental difference between bjects managed by value and reference. 9. Create class hierarchies which make use f methd verriding t custmize child class behavirs and cnstructr chaining t ensure prper creatin f classes at each level in the hierarchy. 10. Use abstract classes t create template bjects t be used as the base f a class hierarchy. 11. Create custm enumerated types with a range f values that reflect the prblem dmain. 12. Use interfaces t express a set f required behavirs and s allw the creatin f sftware cmpnents. 13. Use delegates t implement methd references and s bind methds t event generatrs. 14. Understand the c# pre prcessr and the use f directives t manage the cmpilatin prcess. 15. Understand the principles f test driven develpment and the steps t be fllwed when creating sftware using this technique. 16. Understand the use f state machines when creating a prgram and hw prgram states are expressed n a state diagram. 17. Understand the sftware engineering terms cupling, chesin, and encapsulatin. Knw the reasns why high chesin is a gd design aim, alng with lw cupling and bjects with high encapsulatin. 18. Understand the reasns behind cde refactring and the need t reduce the duplicatin f statements, and t ensure that the identifiers f items in a prgram prperly reflect the purpse f the item.
20. Understand the rle f the XNA framewrk as a set f resurces fr game develpment. 21. Be able t cnstruct the setup, update and draw behavirs t create a wrking game using XNA. 22. Make use f xna types in the creatin f 2D sprite based games, including Clr, SpriteBatch, Texture2D, SpriteFnt, Rectangle, Pint, Vectr, SundEffect, Sng, NetwrkSessin, GamepadState, and KeybardState. 23. Use the XNA Cntent Manager t add textures and sund cntent t an XNA game, and the XNA cntent lading methds t retrieve the cntent when the game runs. 24. Use the gamepad and keybard as input devices, bth in a level and edge triggered manner. 25. Use the XNA Netwrk applicatin prgrammer interface t create netwrked games with a game lbby. 26. Create pseud 3D displays by use f verdrawing and sprite scaling. 27. Create animated sprite game elements. 28. Use the C# randm number generatr in game play t intrduce randmness t game play elements and behavirs. 29. Create XNA games fr deplyment t Xbx, Windws PC, and Windws Phne devices. 30. Use Micrsft Visual Studi t create and deply XNA games. 31. Manage the deplyment f games t the clud, Xbx, Windws PC, and Zune devices. 32. Debug prgrams by the use f breakpints, single stepping, and viewing the cntents f variables. Attendance: Students are expected and encuraged t attend lectures and cntribute t discussins. It is the student s respnsibility t cntact the instructr as early as pssible if he/she cannt attend class. There will be n make up pprtunities, althugh all classes will have cmpanin vides available n line.
Requirements: T pass this curse, yu must meet the fllwing requirements: Grading: % f grade Task 20 Incrprate Twitter, Facebk, Bing Services, int yur game 10 Create web service using SOAP, REST, JSON r ther tls 30 Create 5 Windws Phne Applicatins, pst them t AppHub and set up Ad Revenues using pubcenter. T be graded, each app must make an average f $5.00 and cnsume the web service prvided by yur Web Site 10 Web Site and Windws Phne Applicatin must utilize Bing Maps. Student is required t build a web site applicatin using the Bing Map SDK and submit the app fr apprval. 30 Sign up and submit fr the Imagine Cup As a team f 3 r 4, a Prject Dcument, Vide and Alpha prject fr the Sftware Design Categry As a team f 2 r 3, a Silverlight based web game t the Imagine Cup.cm site, with all materials required T get an autmatic A, succeed at any f the fllwing fr an autmatic A, prf required, and meet all f the gals shwn abve Pass thrugh Rund 2 f the Imagine Cup, Make the mst mney n AppHub selling yur phne app (must be greater than $10), Make the mst mney using pubcenter (must exceed $10)
Grading Scale: A s are awarded nly if yu meet ne f the requirements specified AND d the rest f the wrk required. 100 95 = A (Only if yu are n a team that submits the rund 2 prject dcument, vide, and single level game) 87 89 = B+ 83 86 = B 80 82= B 77 79= C+ 73 76= C 70 72= C 67 69= D+ 63 66= D belw 60 = F
GENERAL POLICIES: ACADEMIC POLICY Hnr Cde. The fllwing cases will be cnsidered as vilatins: identical cde, and extremely similar cde. All cde will be prfiled using standard tls. Vilatins will be reprted t the Office f Vice President f Academic Affairs. ATTENDANCE POLICY Excessive absences will result in lwered grades. Excessive absenteeism, whether excused r unexcused, may result in a student s curse grade being reduced r in assignment f a grade f F. Absences are accumulated beginning with the first day f class. STUDENT ACADEMIC APPEALS PROCESS Authrity and respnsibility fr assigning grades t students rests with the faculty. Hwever, in thse instances where students believe that miscmmunicatin, errr, r unfairness f any kind may have adversely affected the instructr s assessment f their academic perfrmance, the student has a right t appeal by the prcedure listed in the Undergraduate catalg and by ding s within thirty days f receiving the grade r experiencing any ther prblematic academic event that prmpted the cmplaint. ADA STATEMENT Students with disabilities, wh believe they may need an academic adjustment in this class, are encuraged t cntact me as sn as pssible t better ensure receipt f timely adjustments. DEFINITION OF CHEATING AND PLAGIARISM CSUDH is dedicated t a high standard f academic integrity amng its faculty and students. In becming part f the Califrnia State University academic cmmunity, students are respnsible fr hnesty and independent effrt. Disciplinary actin will be taken against any student wh alne r with thers engages in any act f academic fraud r deceit. (Read University Regulatins in University Catalg)
COURSE OUTLINE Week 1: Overview and intrductin t game design tls Week 2: Team Frmatin, prject planning and Imagine Cup prject plan submissins Week 3: Repurpse existing game t meet needs f prject dcument Week 4: Classes and cnstructrs in games, cntinue game design Week 5: Variables, textures and art in games, cntinue game design Week 6: Advertisement in games, hw t set up a market accunt Week 7: Prject Management Week 8: Playability and usability Week 9: Using results frm playability and usability surveys Week 10: Generating test patterns, hw t use testing t make sure changes dn t break the build Week 11: Versin cntrl, dcumentatin Week 12: Quality cntrl, designing fr the lng run Week 13: Team Fundatin Server Week 14: Shwing ff yur game Week 15: Pricing yur game and imprving prpsals Week 16: Demnstratins