Download presentation
Presentation is loading. Please wait.
Published byDennis Blair Modified over 9 years ago
1
Game Development Software Engineering Process Jeffrey C. King CIS4914 Senior Project 23 April 2001 and the
2
Summary Motivation Buggy Games Release Delays Maintenance Difficulties Problem No Design Plan Unknown Dependencies / Emergent Behavior Code Duplication Frequent Rework Solution Formal Design Modularity Reusability Robustness Documentation
3
H. Hoppe, Computer Graphics (SIGGRAPH 1997 Proceedings), pages 189-198. Literature Sources Alan Watt and Fabio Policarpo, 3D Games: Real-time Rendering and Software Technology. ACM Press, New York, NY, 2001. Andrew Rollings and Dave Morris, Game Architecture and Design. Coriolis Group, Scottsdale, AZ, 2000. DeLoura, Mark, ed., Game Programming Gems. Charles River Media, Rockland, MA, 2000. Mason Woo, Jackie Neider, Tom Davis and Dave Shreiner, OpenGL Programming Guide. Addison Wesley, Reading, MA, 1999. Tomas Möller and Eric Haines, Real-Time Rendering. A.K. Peters, Natick, MA, 1999. H. Hoppe, IEEE Visualization 1998, October 1998, pages 35-42. Charles Bloom, VIPM (Progressive Meshes), http://208.55.130.3/3d/techdocs/vipm.txt (current 21 March 2001)http://208.55.130.3/3d/techdocs/vipm.txt Tim C. Schröder, glVelocity, http://glvelocity.gamedev.net (current 21 March 2001)http://glvelocity.gamedev.net Sommerville, Ian, Software Engineering, Pearson Education, Essex, GB2, 2001.
4
Work Performed Prototypes Software Requirements Specification Main Application Camera Landscape Waterscape Scene Management BSP Constructor
5
Results Program Overview
6
Results DEFINES; # NoMouse variable indicates # that the mouse cursor should # not be drawn. $noMouse = TRUE; END; DO_RIGHT; $translateX -= cos($rotateY); $translateZ -= sin($rotateY); END; DO_LEFT; $translateX += cos($rotateY); $translateZ += sin($rotateY); END; DO_UP; $translateX -= sin($rotateY); $translateZ += cos($rotateY); $translateY += sin($rotateX); END; DO_DOWN; $translateX += sin($rotateY); $translateZ -= cos($rotateY); $translateY -= sin($rotateX); END; DO_LOOK_VERTICAL; $rotateY += $move_vertical; END; DO_LOOK_HORIZONTAL; $rotateX -= $move_horizontal; END; DO_ALT_UP; $translateZ -= 1.0; END; DO_ALT_DOWN; $translateZ += 1.0; END; Camera Script (FPS)
7
Results
9
Conclusions and Future Work Conclusions Game Development benefits from Software Engineering practices Overhead is negligible Future Work Level of Detail Curved Surfaces Indoor Scenes (Portals and PVS)
10
Questions and Answers
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.