5 . 3. Section Roundup
description
Transcript of 5 . 3. Section Roundup
5.3. Section RoundupExploration of project hand-in and section roundup
1Question Clinic: FAQIn lecture exploration of answers to frequently asked student questions
2Exploratory MilestoneExploration of the Week 6 Exploratory Milestone
3Week 6 Exploratory Milestone (Question 1)Remember this is not a binding contract it is intended to help you plan and manage your development.
To do:Complete questions
4Week 6 Exploratory Milestone (Question 2)Initial time estimates tend to be optimistic and rarely realised. Experience (sometimes bitter) enables better estimates!
5Week 6 Exploratory Milestone (Question 3)Please do identify any specific areas of concern or uncertainty on which you would like to receive feedback.
6CSC2007 OscarsMid-way awards
7CSC2007 OscarsThe first lecture on Week 7 will be an awards ceremony (a bit of fun) based on the Week 6 Exploratory Milestone submission.A number of different prize categories can/may be recognised and rewarded, as follows:
8CSC2007 OscarsMost authentic rendition of a classic computer game
Most original/fun game design or game play idea
Game I least want to present at the Board of Examiners
9CSC2007 Oscars
Most comprehensive game design including development plan and contingency planning.Game with the best title
Game with the most inappropriate title
10CSC2007 Oscars
Submission with the most impressive exploratory code
Aside: There actually will be prizes!
11Debugging AdviceOverview of debugging advice
12Debugging in gamesDebugging in games is often hard:Update/draw process happens very frequently and quickly (~60 times second, 17ms per tick). It can be hard to reason about what is happening.A lot of the available debugging tools cannot be easily applied to games (including GPU interaction)
13Debugging (The Commandments)Thou shalt have a clear understanding of what should happenThis may be obvious, but sometimes people start debugging without a clear understanding of what should happen.Thou shalt reproduce the problem consistentlyIt is much easier to debug and test a problem that can be consistently reproduced, although sometimes this is not realistically achieveable.Thou shalt test your assumptionsDebugging is a process of identifying your assumptions (this can be hard) and then testing to see if they hold.
14Debugging (The Commandments)Thou shalt divide and conquerIn order to manage game complexity, high-level assumptions should be firstly checked to enable the search to be constrained.Thou shalt think and lookDebugging is a process of identifying an assumption and then checking the code (log file, debugger, print statements) to test that assumption. Thou shalt change on thing at a timeWhen testing changes to a program, only one factor should be changed at a time to limit interdependency.
15Debugging (The Commandments)Thou shalt keep an audit trailEither using code versioning (or pen & paper and simple backups) , keep a record of changes made to the programThou shalt thoroughly test the correctionThe correction should be tested to ensure the original problem has been fixed with no impact on existing working components.Thou shalt not let the problem unfixedIgnoring a problem only increases the new bug complexity and can introduce later problems or introduce dependency upon the buggy code.
16
Summary
To do:Bring together explored material to progress design and develop codeDevelop work plan for next week Work towards completing hand-inToday we explored:
Information to be submitted for the Week 6 HandinUseful approach towards game debugging
17