Matakuliah : T0944-Game Design and Programming Tahun : 2010 Computer Game Development Pertemuan 2 Game Development Phase • • • • • • Pre-production phase Mainstream production phase Project milestones Testing Release to manufacturing Patch-based maintenance Pre-production Phase • • • • • • General game idea or design Back-story Concept artwork Storyboards Game-play elements Working prototype demonstrating key game features. Mainstream production phase • • • • • Software designing Implementing the game engine, sound engine, or 3D engine. Implementing networking components. Implementing input control. Creating game assets such as textures, interface elements, 3D models. • Adding game-play elements such as artificial intelligence, cut scene, in-game dialog. • Producing game’s audio Project Milestone • Pre-alpha version – A lot of functional and asset/content-based decisions still have to be made. • Alpha version – Satisfies most of the project goals and requirements while still requiring extensive testing and debugging. • Beta version – Generally has numerous bugs, stability and compatibility issues. – Released to selected group (closed beta) as opposed to a larger community group (open beta) • Release Candidates – Very close to the final game release but still need some extensive testing to ensure that no fatal bugs are present. Common Game Milestone Release Stages Pre-Alpha Alpha Beta Released Candidate General Availability Release Testing • Unit testing – Primarily done by programmers themselves • Functional testing – Based on scripts targeted at groups of classes – Focus on user requirements and performance constraints. • Automated testing – Focus on the generation of test units reflecting the existing programming units. – Is conducted concurrently throughout the implementation phase. Software Patches • Patching is the most common form of maintaining and updating computer games. • Ensure that software regression doesn’t occur when patch is released. • Patches are not solely used for the correction of bugs and are often released to improve or change some game-play elements. Game Software Development Techniques and Methodologies • Sequential Software Development: Waterfall Model. • Iterative Software Development: The Rational Unified Process. • Extreme Programming: Agile Software Development. Game Development Tools • Design Document Templates • Development Tools Software – Rational Rose • 3D Modeling Software – Autodesk’s 3D Studio Max, Maya • 2D Modeling Software – Adobe Photoshop. Game Development Tools • Sound sampling and digital processing – Sound Forge Xp • Music Sequencing Software – Cakewalk • Integrated Development Environment – Microsoft Visual Studio • Accelerators – OpenGL, DirectX. • Programming utilities – FX Composers • Standard Development Kit (SDK) In-house Tools • Level Editors – Q3Radiant for Quake-3 by Id Software • Game Engine – Torque – Unreal Engine Discussion • Game engine license policies.