An Exploration of the Architecture of First Person Shooter Games

Total Page:16

File Type:pdf, Size:1020Kb

An Exploration of the Architecture of First Person Shooter Games AN EXPLORATION OF THE ARCHITECTURE OF FIRST PERSON SHOOTER GAMES by Charu Prashar A thesis submitted to the School of Computing in conformity with the requirements for the Degree of Master of Science. Queen’s University Kingston, Ontario, Canada January 2014 Copyright ©Charu Prashar, 2014 Abstract First Person Shooter (FPS) games are one of the most popular game genres and have a history of over 2 decades. While there has been extensive research on such games, the focus has been limited to their analysis at an individual level. In this thesis, we present a comparative analysis of three first person shooter games - Doom, Quake3 and Cube from an architectural point of view. All of these games have come at different times in the history of first person shooter games, and thus possess different and unique features. We describe the process followed in deriving their architecture at various levels of abstraction – the file level, the subsystem level, the library/non- library level and the individual subsystem level for a given part of code. We conclude with a comparative analysis of the similarities and differences in the structure and architecture of the three gaming systems. ii Acknowledgements I would like to express my sincere gratitude to my supervisors Dr. Jim Cordy and Dr. Scott Grant for providing me with the opportunity and space to further expand my interests into the field of Software Engineering, and Computer Science more broadly. Dr. Cordy, thank you very much for the unconditional support and mentorship, which you have provided throughout the breadth of my time at Queen’s University. I would like to thank Dr. Thomas Dean for providing me with the knowledge and tools necessary to perform this research. I would also like to thank the wonderful people whom I met while my stay at STL – Scott, Gehan, Doug, Paul, Eric, Elizabeth, Karolina and Amal. A special thank you to Scott for his valuable guidance and support. Finally, a big thank you to my father for all his efforts, my mother for all the kind words and my sister for the unconditional love and support. During the course of this degree, I met a beautiful human being who is now my husband, thank you Umesh for making it even more beautiful. Thank you everyone. I conclude with the hope that our paths may cross again, and that, this is just a start to the journey, which lies ahead. “What lies behind us and what lies before us are tiny matters compared to what lies within us.” ― Ralph Waldo Emerson iii Table of Contents Abstract ............................................................................................................................................ ii Acknowledgements ......................................................................................................................... iii List of Figures ................................................................................................................................. vi Chapter 1 Introduction ..................................................................................................................... 1 1.1 Motivation .............................................................................................................................. 1 1.2 Contribution ........................................................................................................................... 2 1.3 Chapter Overview .................................................................................................................. 2 1.4 Summary ................................................................................................................................ 3 Chapter 2 Background ...................................................................................................................... 4 2.1 First Person Shooter Games ................................................................................................... 4 2.2 Doom ...................................................................................................................................... 5 2.3 Quake3 ................................................................................................................................... 6 2.4 Cube ....................................................................................................................................... 7 2.5 Tools ....................................................................................................................................... 7 2.5.1 CPPX ............................................................................................................................... 8 2.5.2 Grok ................................................................................................................................. 9 2.5.3 Graph Generation ............................................................................................................ 9 2.6 Summary ................................................................................................................................ 9 Chapter 3 Overview ....................................................................................................................... 11 3.1 File Level Call Graph ........................................................................................................... 12 3.2 Subsystem Level .................................................................................................................. 12 3.3 Library and Non-Library Subsystem level Graph ................................................................ 13 3.4 Individual Subsystem Graph- Renderer Graph .................................................................... 14 3.5 Comparison .......................................................................................................................... 15 3.6 Summary .............................................................................................................................. 16 Chapter 4 File Level Analysis ........................................................................................................ 17 4.1 Tools ..................................................................................................................................... 17 4.2 Extraction and Manipulation ................................................................................................ 19 4.3 Doom .................................................................................................................................... 21 4.4 Quake3 ................................................................................................................................. 21 4.5 Cube ..................................................................................................................................... 22 4.6 Summary .............................................................................................................................. 23 iv Chapter 5 Subsystem Level Analysis ............................................................................................. 24 5.1 Clustering of Files ................................................................................................................ 24 5.2 Software Architecture Transformations ............................................................................... 25 5.3 Manipulation and Graph Generation. ................................................................................... 25 5.4 Subsystem Level Graph for Doom ....................................................................................... 27 5.5 Subsystem Level Graph for Quake3 .................................................................................... 29 5.6 Subsystem Graph for Cube .................................................................................................. 31 5.7 Summary .............................................................................................................................. 32 Chapter 6 Library/Non-Library Division ....................................................................................... 33 6.1 Identification ........................................................................................................................ 33 6.2 Doom .................................................................................................................................... 34 6.3 Quake3 ................................................................................................................................. 36 6.4 Cube ..................................................................................................................................... 37 6.5 Other Methods ...................................................................................................................... 38 6.6 Non-Library Subsystems ...................................................................................................... 38 6.7 Summary .............................................................................................................................. 41 Chapter 7 Individual Subsystem- Renderer ................................................................................... 42 7.1 Introduction .......................................................................................................................... 42 7.2 Doom ...................................................................................................................................
Recommended publications
  • (12) United States Patent (10) Patent No.: US 7,945,856 B2 Leahy Et Al
    US007945856B2 (12) United States Patent (10) Patent No.: US 7,945,856 B2 Leahy et al. (45) Date of Patent: May 17, 2011 (54) SYSTEMAND METHOD FOR ENABLING (56) References Cited USERS TO INTERACT IN A VIRTUAL SPACE U.S. PATENT DOCUMENTS (75) Inventors: Dave Leahy, Oakland, CA (US); Judith 4.414,621 A 11/1983 Bown et al. Challinger, Santa Cruz, CA (US); B. 4,441,162 A 4, 1984 Lillie 4493,021 A 1/1985 Agrawal et al. Thomas Adler, San Francisco, CA (US); 4,503,499 A 3, 1985 Mason et al. S. Mitra Ardon, San Francisco, CA 4,531,184 A 7/1985 Wigan et al. (US) 4,551,720 A 11/1985 Levin 4,555,781 A 1 1/1985 Baldry et al. (73) Assignee: Worlds.com, Inc., Brookline, MA (US) (Continued) (*) Notice: Subject to any disclaimer, the term of this FOREIGN PATENT DOCUMENTS patent is extended or adjusted under 35 CA 2242626 C 10, 2002 U.S.C. 154(b) by 0 days. (Continued) (21) Appl. No.: 12/353,218 OTHER PUBLICATIONS Andrew Reese et al., Kesami Air Warrior, http://www. (22) Filed: Jan. 13, 2009 atarimagazines.com/startv3n2/kesamiwarrior.html, Jan. 12, 2009. (Under 37 CFR 1.47) (Continued) (65) Prior Publication Data Primary Examiner — Kevin M Nguyen US 2009/0228.809 A1 Sep. 10, 2009 (74) Attorney, Agent, or Firm — Anatoly S. Weiser, Esq.; Acuity Law Group Related U.S. Application Data (57) ABSTRACT (63) Continuation of application No. 1 1/591.878, filed on The present invention provides a highly scalable architecture Nov.
    [Show full text]
  • A Third Age of Avatars Bruce Damer, [email protected] Damer.Com | Digitalspace.Com | Ccon.Org | Biota.Org | Digibarn.Com
    A Third Age of Avatars Bruce Damer, [email protected] damer.com | digitalspace.com | ccon.org | biota.org | digibarn.com Ò Started life on a PDP-11 fresh out of high school (1980), programmed graphics, videotext systems, dreamed of self replicating robots on the moon, designed board games, built model space stations. Ò Worked at IBM Research in 1984 (Toronto, New York), introduced to Internet, optical computing. Ò At Elixir Technologies 1987-94, wrote some of first GUI/Windows-Icons Publishing software on the IBM PC platform used 100 countries. Ò Established Contact Consortium in 1995, held first conferences on avatars (Earth to Avatars, Oct 1996) Ò Wrote “Avatars!”in 1997. Hosted and supported 9 conferences until 2003 on various aspects of virtual worlds (AVATARS Conferences, VLearn3D, Digital Biota) Ò Founded DigitalSpace in 1995, produced 3D worlds for government, corporate, university, and industry. Evangelism for Adobe (Atmosphere), NASA (Digital Spaces, open source 3D worlds for design simulation of space exploration) and NIH (learning games for Autism) Ò Established DigibarnComputer Museum (2002) Ò Virtual Worlds Timeline project (2006-2008) to capture and represent the history of the medium Ò The Virtual World, its Origins in Deep Time Ò Text Worlds Ò Graphical Worlds Ò Internet-Connected Worlds Ò The Avatars Cyberconferences Ò Massive Multiplayer Online RPGs Ò Virtual World Platforms Ò Virtual Worlds Timeline Project and Other Research History of Virtual Worlds The Virtual World, its Origins in Deep Time So what is a Virtual World? A place described by words or projected through pictures which creates a space in the imagination real enough that you can feel you are inside of it.
    [Show full text]
  • The Final Demonstration of the Xerox 'Star' Computer, 1981
    ...... Computer .... History Museum The Final Demonstration of the Xerox ‘Star’ Computer, 1981 Recorded: June 17, 1998 Palo Alto, California CHM Reference number: 102737965 © 2015 Computer History Museum The Final Demonstration of the Xerox ‘Star’ Computer, 1981 Peter Nurkse: I think we’re about ready to begin. Seating has sorted itself out. I’d like to welcome you. I’m Peter Nurkse and I’m from Sun Microsystems, and with Jeanie Treichel, also of Sun, we’ve had a computer history talk series for the last five years. Our very first program, five years ago, back in April, 1993, was right here in this auditorium, on early computing at Livermore. And the total number of people present, including the speakers and the entire audience, was twenty. [Laughter] But this was a very distinguished audience, because right there in the front row, in two seats in the center, we had Gordon Bell and Donald Knuth, sitting side by side, sort of like hardware and software together. [Laughter] So we’ve had five years of programs since then. In the last couple of years we’ve joined forces with the Computer History Museum at Moffett Field, which has the world’s largest collection of computer hardware, over 100 tons of computer hardware. [Laughter] I might say that our second program, after that distinguished first program, was on the 20th birthday of the Ethernet, back in May of 1993, again a PARC occasion, although we held it at Sun, that program. John Shoch was one of the speakers, who also suggested this program here tonight.
    [Show full text]
  • The Camera in 3D Video Games
    University of Utah UNDERGRADUATE RESEARCH JOURNAL DESIGNING FOR INTERACTIVITY: THE CAMERA IN 3D VIDEOGAMES Jackson Keller (Gabriel Olson) Department of Entertainment Arts and Engineering ABSTRACT This paper analyzes the effect that camera control has on art, design, and player experience in 3D video games. It will specifically explore the implications of various methods of camera control that have emerged during the brief history of 3D games: the first and third-person perspectives, fixed and filmic perspectives, abstract non-linear perspectives, and unique perspectives enabled by recent technological innovation, including Virtual and Augmented reality. TABLE OF CONTENTS ABSTRACT I INTRODUCTION 3 THE EMERGENCE OF 3D VIDEO GAMES 4 THE THIRD-PERSON PERSPECTIVE 9 ALTERNATE APPROACHES TO THE CAMERA: IMITATING FILM 14 THE NON-LINEAR PERSPECTIVE: EXPERIMENTAL ART AND SIMULATED CAMERAS 20 THE IMPLICATIONS OF INNOVATION: MODIFICATION OF EXISTING PERSPECTIVES 22 CONCLUSION 24 SPECIAL THANKS 25 WORKS CITED 26 ii INTRODUCTION Both games and film are audiovisual media. One understanding of the medium of games is as a form of interactive movie, descending from the legacy of film. While games are certainly their own art form (The 2011 Brown v. Entertainment Merchants Association Supreme Court decision gave video games first amendment protection as an art form), many games do contain filmic elements. However, interactivityi is central to the medium and generally takes precedence over aesthetic control. Most 3D games allow the player to control the camera, and the gameplay experience lacks the cinematographic precision of film. Designers craft levels to lead players towards game objectives, as well as composed aesthetic experiences when possible.
    [Show full text]
  • Analysis of Embodied Conversational Agents in Secondlife for Speech
    Analysis of Embodied Conversational Agents in SecondLife for Speech Recognition Except where reference is made to the work of others, the work described in this thesis is my own or was done in collaboration with my advisory committee. This thesis does not include proprietary or classified information. Wanda R. Moses Certificate of Approval: Cheryl D. Seals Juan E. Gilbert, Chair Associate Professor Professor Computer Science and Software Engi- Computer Science and Software Engi- neering neering Ivan E. Watts George T. Flowers Associate Professor Dean Educational Foundations Leadership and Graduate School Technology Analysis of Embodied Conversational Agents in SecondLife for Speech Recognition Wanda R. Moses A Thesis Submitted to the Graduate Faculty of Auburn University in Partial Fulfillment of the Requirements for the Degree of Master of Science Auburn, Alabama December 18, 2009 Analysis of Embodied Conversational Agents in SecondLife for Speech Recognition Wanda R. Moses Permission is granted to Auburn University to make copies of this thesis at its discretion, upon the request of individuals or institutions and at their expense. The author reserves all publication rights. Signature of Author Date of Graduation iii Vita Wanda Moses is a PhD student in the Computer Science and Software Engineering Department at Auburn University. She was born in Charleston, SC on May 2, 1962 to Annie M. and David E. Moses. Ms. Moses received a Bachelor of Science degree in Mathematics and Computer Science from South Carolina State University in May 2005. She is currently a graduate research assistant in the Human Centered Computer Lab at Auburn University. Her interests are in Human Computer Interaction, User Interface Design, Adaptive Learning Technologies, Multimodal Interfaces and Spoken Language Systems.
    [Show full text]
  • Modifying the Game
    05_037466 ch01.qxp 6/26/06 11:11 PM Page 9 Chapter 1 Modifying the Game In This Chapter ᮣ Looking at the game through a modder’s eyes ᮣ Finding modding tools that you had all along ᮣ Walking through the making of a mod ᮣ Going public with your creations ave you ever been playing a video game and thought, “I would have Hdone it differently” or “I could have done it better”? Perhaps you thought, “Wouldn’t it be cool if. “ Well, you don’t have to just think it. You can make changes to games and you don’t have to be a software engineer to do it. Game modification is the process of changing something in a game and has generally been associated with the first-person shooter and real-time strategy genres. The change could be very small, such as making a player’s outfit orange instead of blue, or the change could be very large, such as creating a whole new environment for the player to explore. You could change almost every aspect of a game and make it look and feel like something completely different, or instead of altering an existing part of the game, you could add new elements to it. Anything that in some way modifies a game from what it was when the publisher released it is termed a mod. Game modification is not a new practice. It has been going on for quite some time, but only recently, with the creation of multiplayer shooters for the PC, has it become popular.
    [Show full text]
  • Modifying the Game
    05_096314 ch01.qxp 12/7/06 10:41 AM Page 9 Chapter 1 Modifying the Game In This Chapter ᮣ Looking at the game through a modder’s eyes ᮣ Finding modding tools that you had all along ᮣ Walking through the making of a mod ᮣ Going public with your creations ave you ever been playing a video game and thought, “I would have Hdone it differently” or “I could have done it better”? Perhaps you thought, “Wouldn’t it be cool if. “ Well, you don’t have to just think it. You can make changes to games, and you don’t have to be a software engineer to do it. Game modification — changing something in a game — has generally been associated with the first-person shooter (FPS) and real-time strategy genres. The change could be very small, such as making a player’s outfit orange instead of blue, or the change could be very large, such as creating a whole new environment for the player to explore. You can change almost every aspect of a game and make it look and feel like something completely differ- ent. Or, instead of altering an existing part of the game, you could add new elements to it. Anything that in some way modifies a game from what it was when the publisher released it is a mod. Game modification isn’t a new practice. However, only recently, with the cre- ation of multiplayer shooters for the PC, has it become popular. It was this genre of COPYRIGHTEDgaming that gave people the inspiration MATERIAL to show off.
    [Show full text]
  • Counter Strike UBT Summer School
    UBT Summer School Counter Strike 25. Juli 2012 Prof. Dr. Jochen Koubek | Universität Bayreuth | Digitale Medien | [email protected] Scouting Game Geländespiel Das Geländespiel bezeichnet eine Kategorie von Spielen, die überwiegend außerhalb von Gebäuden stattfinden und bewusst die natürlichen und baulichen Gegebenheiten in das Spiel mit einbeziehen. Vorbilder des Geländespiels sind Handlungsabläufe bei der Jagd sowie militärische und polizeiliche Manöver. Zu beachten sind bei dieser Spielekategorie die Gewaltfreiheit und rechtliche Vorschriften für spezielle Gelände wie Wald und Gewässer und beim Umgang mit Waffen. Wikipedia Cops and Robbers Räuber und Gendarm Paintball since 1981 Killergames Films Das Millionenspiel (1970) The Last of Sheila (1973) The 10th Victim (1975) Midnight Madness (1980) Running Man (1985) Steve Jackson: Killer Since 1982 Cruel 2 B Kind http://www.cruelgame.com/ http://www.shootmeifyoucan.net/ Humans vs. Zombies http://humansvszombies.org First-Person-Shooter http://www.youtube.com/watch?v=t6JQJLNYEs0 S. Colley: Maze War id: Hovertank 3D, 1991 http://www.youtube.com/watch?v=ZouboBEULS8 LA: The Eidolon, 1985 HybridArts: MIDI Maze, 1987 id: Catacomb 3D, 1991 First-Person-Shooter id: Wolfenstein 3D, 1992 id: Doom, 1993 Bungie: Marathon 1994 Quake id: Quake, 1996 id: Quake II, 1997 id: Quake III Arena, 1999 Quake simply re-invented the idea of a Id Software's Quake brought true three Wolfenstein may have started the FPS FPS, with it's online deathmatch, the dimensional polygons into the genre but Quake defined it and made it "big-bang" of FPS modification development realm and explored the the intense perspective driven community, and also starting the online play space above and beyond any experience that it is today.
    [Show full text]
  • The Influence of Intrinsic Cues on Navigational Choices in Virtual
    University of Huddersfield Repository Marples, Daryl The Influence of Intrinsic Perceptual Cues on Navigation and Route Selection in Virtual Environments Original Citation Marples, Daryl (2017) The Influence of Intrinsic Perceptual Cues on Navigation and Route Selection in Virtual Environments. Doctoral thesis, University of Huddersfield. This version is available at http://eprints.hud.ac.uk/id/eprint/34448/ The University Repository is a digital collection of the research output of the University, available on Open Access. Copyright and Moral Rights for the items on this site are retained by the individual author and/or other copyright owners. Users may access full items free of charge; copies of full text items generally can be reproduced, displayed or performed and given to third parties in any format or medium for personal research or study, educational or not-for-profit purposes without prior permission or charge, provided: • The authors, title and full bibliographic details is credited in any copy; • A hyperlink and/or URL is included for the original metadata page; and • The content is not changed in any way. For more information, including our policy and submission procedure, please contact the Repository Team at: [email protected]. http://eprints.hud.ac.uk/ The Influence of Intrinsic Perceptual Cues on Navigation and Route Selection in Virtual Environments. Daryl Marples A thesis submitted to the University of Huddersfield in partial fulfilment of the requirements for the degree of Doctor of Philosophy The University of Huddersfield Submission date December 2017 Copyright statement i. The author of this thesis (including any appendices and/or schedules to this thesis) owns any copyright in it (the “Copyright”) and s/he has given The University of Huddersfield the right to use such copyright for any administrative, promotional, educational and/or teaching purposes.
    [Show full text]
  • Read Book the Secret History of Mac Gaming Ebook
    THE SECRET HISTORY OF MAC GAMING PDF, EPUB, EBOOK Richard Moss | 416 pages | 04 Feb 2020 | Unbound | 9781783524860 | English | London, United Kingdom The Secret History of Mac Gaming PDF Book Even Cap'n Magneto is apparently playable again, still shareware. He wrote his homage in April on an early Mac prototype. Posted 26 April - PM. The Apple Pippin also known as the Bandai Pippin was a multimedia player based on the Power Mac that ran a cut-down version of the Mac OS designed, among other things, to play games. Help Help Centre Delivery Refunds. Cease wasting your cash and time on disappointing flight simulators. To the point that I blew it. Related Articles. By the mids most computer companies avoided the term "home computer" because of its association with the image of, as Compute! Simon Wyatt rated it it was ok Nov 20, Enlarge cover. Community Reviews. Ordinary furniture becomes wonders, while the domestic mundane turns into an endless interior landscape filled with hidden puzzles. I remember playing it on old SE's in school. Since the introduction of the Intel processor into the Macintosh platform, Windows virtualization software such as Parallels Desktop for Mac and VMware Fusion have been seen as more promising solutions for running Windows software on the Mac operating system. So I would visit him, borrow all the new cartridges he had, take them home and copy them. Games were more than a fun testing ground for software development on the Mac. Instead, Apple Arcade games will have all the goodies paid for with your subscription.
    [Show full text]
  • First-Person Shooter Controls on Touchscreen Devices: a Heuristic Evaluation of Three Games on the Ipod Touch
    First-Person Shooter Controls on Touchscreen Devices: a Heuristic Evaluation of Three Games on the iPod Touch Tuomas Hynninen University of Tampere Department of Computer Sciences Interactive Technology M.Sc. thesis Thesis supervisor: Roope Raisamo November 2012 University of Tampere Department of Computer Sciences Interactive Technology Tuomas Hynninen: First-Person Shooter Controls on Touchscreen Devices: a Heuristic Evaluation of Three Games on the iPod Touch M.Sc. thesis, 64 pages, 4 index pages November 2012 Today's touchscreen devices have a large amount of computing power which enables them to run high performance software, such as first-person shooter games rendered in 3D. Devices such as the iPod Touch that were originally built for music and other media consumption also provide a wide variety of features. For example, the iPod Touch can be used to surf the Internet, play quality video and audio and run complex video games. This thesis concentrates on first-person shooters games on the iPod Touch and provides a detailed breakdown of how developers have used the device's touch interface in their games. Related research, especially regarding first-person shooters and touch input, is explored and discussed. Completely new heuristics were developed in order to analyze the properties and effectiveness of the controls. In total, three iPod Touch games and nine control modes were evaluated. The results showed that the effectiveness of the controls was lacking. Target acquisition and tracking proved to be especially problematic. The results followed conclusions and observations made in related research. Suggestions for future work include investigating touchscreen hardware improvements and exploring different FPS game designs for mobile platforms.
    [Show full text]
  • Comparison of Game Addiction Prevalence Rates Between MMOFPS Players and MMORPG Players
    Comparison of game addiction prevalence rates between MMOFPS players and MMORPG players. A case of EVE Online and DUST 514 Guðmundur Helgason & Ólafur Hrafn Steinarsson Lokaverkefni til BS-gráðu Sálfræðideild Heilbrigðisvísindasvið Comparison of game addiction prevalence rates between MMOFPS players and MMORPG players. A case of EVE Online and DUST 514 Guðmundur Helgason & Ólafur Hrafn Steinarsson Lokaverkefni til BS-gráðu í sálfræði Leiðbeinandi: Daníel Þór Ólason Sálfræðideild Heilbrigðisvísindasvi ð Háskóla Íslands Maí 2013 Ritgerð þessi er lokaverkefni til BS-gráðu í sálfræði og er óheimilt að afrita ritgerðina á nokkurn hátt nema með leyfi rétthafa. © Guðmundur Helgason & Ólafur Hrafn Steinarsson 2013 Prentun: Háskólaprent Reykjavík, Ísland 2013 Table of Contents Author Note ...................................................................................................................... 1 Abstract ............................................................................................................................ 2 Introduction ..................................................................................................................... 3 History of MMORPGs ............................................................................................. 6 EVE Online .............................................................................................................. 8 History of First Person Shooters .............................................................................. 8 DUST 514 .............................................................................................................
    [Show full text]