May04-14: Laptop Travel Games for Children Advisor: Dr. Jacobson Client: Senior Design Jonathan Gill: CprE Mike Mundy: CprE Nick Ransom: CprE Jonathan Soike: CprE April 15 th, 2004
Presentation Outline IntroductionIntroduction –Acknowledgement –Problem Statement –Operating Environment –Intended Users and Uses –Assumptions and Limitations –End Product
Presentation Outline Project ActivitiesProject Activities –Present Accomplishments –Future Required Activities –Approaches Considered –Project Definition –Research Activities –Design Activities –Implementation Activities –Testing Activities
Presentation Outline DemonstrationDemonstration Resources and SchedulesResources and Schedules –Personnel Effort Requirements –Other Resource Requirements –Total Financial Requirements –Project Schedule ConclusionConclusion –Project Evaluation –Commercialization –Recommendations for Additional Work –Lessons Learned –Risk and Risk Management –Closing Summary
List of Definitions API: Application program interface. Class/Library: A collection of pre-written code that can be incorporated into third party software. Game engine: A set of classes or libraries which handle all fundamental elements needed to develop a game. These elements can include, but are not limited to: graphics, physics calculations, sound, and tools to interact with these systems. GUI: Graphical user interface. A non-text-based display used for user interaction. OS: Operating system of a computer.
Acknowledgement The team would like to acknowledge the project advisor, Dr. Doug Jacobson, for being the main source of help throughout this project. The team would also like to acknowledge Andre LaMothe, author of Tricks of the Windows Game Programming Gurus, for providing a great deal of help with DirectX coding.
Problem Statement Problem: Kids need to be entertained during car tripsProblem: Kids need to be entertained during car trips –Current solutions inadequate Solution: Develop fun and educational computer games that can be played on the roadSolution: Develop fun and educational computer games that can be played on the road
Operating Environment Moving VehicleMoving Vehicle –Stop-and-go conditions –Constant speed ComputerComputer –Laptop –Windows 98+
Intended Users and Uses Intended users: The intended users will be children with the following attributes:Intended users: The intended users will be children with the following attributes: –Ages 4-12 –Pre-school to 7 th grade –Both male and female –Previous computer experience Intended use: The intended use is for these children to play these games on a laptop while in a moving vehicle.Intended use: The intended use is for these children to play these games on a laptop while in a moving vehicle.
Assumptions and Limitations AssumptionsAssumptions –Children playing these games should have previous computer experience. –3 games will be developed. LimitationsLimitations –The maximum number of players shall be 4. –The minimum number of players shall be 1. –Children playing these games should be between the ages of 4 and 12. –The end product runs on Windows 98+ operating systems. –The product operates on laptop computers.
End Product and Other Deliverables The gameThe game Project planProject plan Source codeSource code Users manualUsers manual
Present Accomplishments Three games createdThree games created –Travel Bingo –License Plate Finder –Travel Board Game All games are functional and fulfill all major design requirementsAll games are functional and fulfill all major design requirements
Approaches Considered: Programming Languages AdvantagesDisadvantages C The team is already familiar with it. Not object-oriented, not very well supported by Windows. C++ Object-oriented, well supported by Windows, the team is already familiar with it, there are many information resources for it. GUIs are more difficult than other languages C# Object-oriented, has built-in GUI components The team has never used it. Java Object-oriented, has built-in, but limited, GUI components The team isnt as familiar with it as other languages, difficult setup and running procedures on end users machine
Approaches Considered: Development Tools AdvantagesDisadvantages Visual Studio Free for students, has many useful features, well supported. Licensing issues may prevent end- product sale. Borland C++ Free for student/individual use. Not as well supported or featured as Visual Studio. DirectX Libraries Fast, Windows-compliant, well-documented, hardware independent. Difficult to code, large learning curve. Kyra Libraries Platform independent, easier to code than DirectX, provides several useful development tools. Slower than DirectX.
Project Definition Develop three gamesDevelop three games –Travel Bingo –License Plate Finder –Travel Board Game Games should be easy to useGames should be easy to use Should require minimal mouse usageShould require minimal mouse usage Should not make any loud or distracting soundsShould not make any loud or distracting sounds
Research Activities Game EnginesGame Engines –Kyra –PyGame –Editor –3D Rad Graphics LibrariesGraphics Libraries –DirectX –OpenGL –SDL
Design Activities Three games were designed: License Plate FinderLicense Plate Finder Travel BingoTravel Bingo Travel Board GameTravel Board Game
License Plate Finder: Flowchart
License Plate Finder: Conceptual Screenshot
Travel Bingo: Flowchart
Travel Bingo: Conceptual Screenshot
Travel Board Game: Flowchart
Travel Board Game: Conceptual Screenshot
Implementation Activities Changes to gamesChanges to games –License Plate Finder Plates located on U.S. MapPlates located on U.S. Map Coding processCoding process –Travel Bingo made with DirectX –All others made with Kyra
Testing Activities Bug testingBug testing –Done by the group –Discover and remove major problems Future testingFuture testing –Give the programs to children –Discover minor problems –Obtain recommendations for change
Resources and Schedules
Other required resources Project Poster: $45Project Poster: $45
Final Project Costs Item Without Labor With Labor Parts and Materials: a. Project Poster $45.00$45.00 Subtotal$45.00 Labor at $10.50/hour a. Gill, Jonathan $1, b. Mundy, Mike $1, c. Ransom, Nick $1, d. Soike, Jonathan $1, Subtotal$5, Total$45.00$5,767.50
Schedule
Project Evaluation Problem Definition: Exceeded.Problem Definition: Exceeded. Research: Met.Research: Met. Technology Selection: Met.Technology Selection: Met. Concept Design: Met.Concept Design: Met. End-product Design: Didnt attempt.End-product Design: Didnt attempt. Prototype Implementation: Met.Prototype Implementation: Met. End-product Testing: Met.End-product Testing: Met. End-product Documentation: Met.End-product Documentation: Met. Project Reviews: Almost met.Project Reviews: Almost met. Project Reporting: Met.Project Reporting: Met.
Commercialization Production Cost: ~$0.60Production Cost: ~$0.60 Selling price: $2.00Selling price: $2.00 Potential Market: Childrens stores, toy stores, software storesPotential Market: Childrens stores, toy stores, software stores No plans for commercializationNo plans for commercialization
Recommendations for Additional Work Additional GamesAdditional Games Main InterfaceMain Interface –Opening menu –Security features
Lessons Learned What went wellWhat went well –The design process What didnt go wellWhat didnt go well –The coding process –Communication between team members Technical Knowledge GainedTechnical Knowledge Gained –Microsoft Visual Studios –C++ Graphics Coding
Lessons Learned Non-technical knowledge gainedNon-technical knowledge gained –Group programming experience –Project scheduling What to do differentlyWhat to do differently –Begin graphics research earlier –Increase communication –Put more emphasis on the schedule
Risk and Risk Management Anticipated potential risksAnticipated potential risks –Loss of a team member –Loss of data –Over-proposed Project –Kids do not like games Anticipated risks encounteredAnticipated risks encountered –Over-proposed Project –Loss of data
Risk and Risk Management Unanticipated risks encounteredUnanticipated risks encountered –Incompatibility of development software Resultant changes in risk managementResultant changes in risk management –Software tests on different systems
Closing Summary Problem: Children need to be entertained during car tripsProblem: Children need to be entertained during car trips –Current solution: DVDs & TV Three educational games developedThree educational games developed –Travel Bingo –License Plate Finder –Travel Board Game
Questions? ?