guru programmer John Carmack after he finished working on the Quake 3 engine .... game titles utilizing it include the Unreal Tournament series, Gears Of War 1 ...
IADIS International Conference Gaming 2008
A REVIEW OF FIRST-PERSON SHOOTER GAME ENGINES AND THEIR USE IN RESEARCHING SCIENTIFIC DISCIPLINES Christos Gatzidis, Vesna Brujic-Okretic City University London Department Of Information Science
Stuart Baker Alcatel-Lucent Telecom Limited UK
ABSTRACT This paper focuses on detailing the four most important first-person shooter (FPS) game engines to date, including individual technical characteristics for each one, as used for scientific research purposes and projects. The id Tech, Unreal, Source and Torque engines have all been used as cost-effective yet inexpensive visualisation tools that can yield photorealistic, easy-to-modify results in immersive and engaging virtual environments and this has been taken advantage of by many researchers from fields as diverse as education, training, health, artificial intelligence, psychology and cultural heritage. KEYWORDS Serious Games, Computer Game Technology, Computer Graphics, Virtual Environments, User Studies.
1. INTRODUCTION Today, with a significant part of computer science but also other research fields turning into computer graphics and 3D visualisation in order to evaluate, simulate or even develop new methodologies and results, there is a growing need for visualisation tools that can accommodate these demands. Unfortunately, specialized visualisation tools, and particularly ones that can facilitate reuse in order to tackle a diverse set of research requirements, while existing, remain prohibitively expensive. Moreover, they offer little to the user in terms of modification capacities and that further complicates the subject. What is required, is easy to use, off-the-self applications, that without extensive programming and with already built-in graphical editors could untie the hands of developers and research scientists. A game engine is the core software component of a computer video game with real-time graphics, providing the underlying technologies, simplifying development and often enabling run-time on multiple platforms such as different game consoles and desktop operating systems. Ever since game development has become a multi-millionaire grossing business, development has shifted towards this model of evolution of game engines and their constant updating so that large studio teams can focus on reusing content and parts of a previous 3D game (such as multi-player capabilities, phycics or artificial intelligence) in a new project or title. Moreover, because users also demanded the ability to modify the content of the game they purchased, game developing studios often make available, along with the title itself, either the full engine including source code or content generation and enabling technologies associated with it to accommodate this demand. This makes game engines ideal for cutting-edge research in a number of fields, research that was in the past inhibited by lack of technology. The pinnacle of game engines today, according to many, are first-person shooter (FPS) game engines because of modification capabilities and also state-of-the-art graphics and resources. In this paper, four of these engines are detailed with a run-through of the most important technical characteristics of each one. Also, for each engine, a number of the most important research applications are also presented, all in a
67
ISBN: 978-972-8924-64-5 © 2008 IADIS
diverse range of fields, and, perhaps surprisingly, most not in computing. This showcases in the best way the considerable infiltration computer game technologies have accomplished in significantly more serious areas and all the potential this partnership has and can offer.
2. GAME ENGINES AND APPLICATIONS While there are many first-person shooter game engines available both commercially and in a freeware capacity, and even more 3D game engines, this work decides to address the four where most research applications seem to have focused on as platforms. The following four engines, the id Tech, Unreal, Source and Torque ones have been picked for scientific research for a variety of reasons including availability, ease of modding tools and editors for adding or changing content, documentation, supporting modding communities that can assist via forums with minor or major technicalities and appeal both in graphics and interaction.
2.1 The ID Tech Engine The id Tech engine, currently at version 4, is still often referred to by its first representative game, Doom 3, as the Doom 3 engine. Developed by id Software, the latest version of this engine was started by legendary guru programmer John Carmack after he finished working on the Quake 3 engine while the rest of id Software was still working on the Quake 3: Team Arena expansion title. The latest version of the engine made its debut on August 2004 with the release of Doom 3. The id Tech 4 renderer is, unlike many of the other engines on the market today, based on the OpenGL API (OpenGL is a multi-platform graphics standard and development environment introduced by SGI in 1992, whose constant evolution is controlled through the OpenGL Architecture Review Board (ARB)) and, like its predecessors, will be made available for free to the developing community, albeit a few years after its release (seeing that id Tech 5 is already under development and some demos have recently surfaced the date for a free Doom 3 source code download cannot be far). Id Tech 4 technology introduced several extra features over the available engines back in 2004 (and it is still relatively advanced by today’s standards). These features included a unified dynamic per-pixel lighting paradigm with every surface going through the same rendering pipeline whether it is level geometry, a dynamic entity or a model leading to visual coherency. Moreover, fully dynamic shadowing through robust stencil buffers is also supported resulting in the rapid development of easily controllable lighting conditions. Fake soft shadows were also supported via the use of projected lights. Regarding texturing, the support of bump mapping, normal mapping and specular highlighting produced far more realistic models without an increase in polygon count. Because of a number of characteristics of the engine, the map compilation time was greatly reduced to mere seconds, even for large level maps. For the modding community and researchers, the built-in editors offered the same renderer pipeline as the game and a very powerful scripting language that allows diverse effects, from replicating native entity behaviour to alteration of client variables in real-time. Also, there is very little dependence on proprietary formats for greater flexibility when modding. Recently, the id Tech engine was also used in research in the psychology field by Frey et al. The authors investigated whether a virtual environment, ran on the id Tech engine, would be suitable for psychological experimenting in general. Research indicates that the validity of data collected in a 3D virtual world can be compromised because of priori individual differences in general performance in navigation but also because of cybersickness, often seen in a number of users, so the authors put to the test a hypothesis of whether individual differences in performance can be reduced or even entirely diminished by using training. The experiment in question involved 85 subjects and a number of simple tasks in three different virtual environments. Navigation performance and also potential cyber sickness was measured during all of the tasks. According to the analysis of the data, the differences in navigation performance between different levels of experience reduced significantly with training. As for cyber sickness, most users were fairly robust against it apart from female subjects over the age of 31 with no prior experience in 3D navigation (or indeed gaming). Overall, the results demonstrate that the id Tech engine would be a more feasible alternative to future psychological testing of various parameters and scenarios.
68
IADIS International Conference Gaming 2008
In the field of information isualization, Kot et al. present research results into the reuse of components of the id Tech engine for the development of collaborative information isualization tools, with the purpose of alleviating complexity and costs. The work focuses on establishing a theoretical framework for using gaming engines for information isualization purposes. This also includes an analysis of how the capabilities and limitations of a game engine, such as the id Tech in particular, influence the mapping of data and the interaction ensued. Moreover, the authors proceed to present a source code comprehension tool for the engine, which operates in a similar way to browsing a cross-referenced source code base via a web browser, with the addition of multi-user capability and the ability to use one’s spatial memory to remember the structure of the code, and ran an informal trial to evaluate its potential. The id Tech engine has also been used in researching context-aware mobile evaluation, with extensions to ubiquitous and mobile computing, as shown by Bylund et al. The work focuses on the development of QuakeSim, a simulator for context information in physical space which is useful for testing, demonstrating and evaluating context aware services, operating always on the id Tech platform. For each user in QuakeSim a positioning sensor and an altitude sensor are provided. The user’s position is converted from the local coordinate system of QuakeSim to real-world latitude and longitude coordinates (altitude is converted into meters above sea level). With the virtual environment in QuakeSim being a 3D representation of a real-world location, position and altitude are adapted to match it. This results in a fully operational context-aware application with the use of the id Tech engine and real sensors and a potential user can, via a server of the service, simulate his / her movements in the physical world. In networked virtual environment research, Steed et al. have utilised the id Tech engine to operate a simulation of the class of partitioning scheme they have developed, called the Frontier sets and built on the notion of a potentially visible set (PVS). In an attempt to demonstrate their scheme’s potential applications and more importantly benefits, they address the issue of scalability for networked virtual environments. Since the id Tech engine uses a client-server architecture and a PVS structure (mostly to assist the run-time rendering speed because the PVS provides rapid culling of invisible parts of a model and culls moving entities such as participants or projectiles since these are located inside cells), it was deemed suitable for the experiment study set up. The Frontier sets concept was tested by using network logs of groups of participants playing Quake II (staff and students at UCL University, UK). A time limit switched between the maps used at five-minute intervals with the overall session lasting for one hour. The id Tech engine, while not customized, was patched to the latest binary version and the game server was compiled from the available source code. However, the server was modified to record for each server frame all the participant positions and the corresponding PVS cells. Subsequently, all these logs were then used to estimate the number of packets that would be sent under different client-server and peer-to-peer schemes. Piekarski et al. investigated the use of the id Tech engine in augmented reality application development by extending the engine’s functionalities into a system called ARQuake (previously also detailed in Thomas et al.). ARQuake’s intention is to operate as a first-person-perspective game running on the aforementioned engine only with the game being played in the physical world, with the user able to freely move about the world and the view determined exclusively by the orientation and position of the user’s head. Moreover, the game is experienced as augmented reality using a transparent HMD and controlled using easy-to-understand real-life props and metaphors. Also, the work extends in the area of haptics with a haptic feedback gun constructed for the system. The device in question is based on a toy gun (modified to interface with the laptop involved), with a solenoid and large weight attached used to generate feedback when the user fires the weapon or gets a hit on him / her. While the haptic gun does not have any tracking device on it at the moment (and therefore is incapable of being used by the user as a pointing device), the aim can be made by adjusting the head orientation. To test the work, a complete model of all the buildings of the University campus where this research took place was created and entered as a Quake map in order for the user to view it in ARQuake while running the application.
69
ISBN: 978-972-8924-64-5 © 2008 IADIS
Figure 1. The ARQuake application as used outdoors, as shown in Piekarski et al.
Norling employs the id Tech engine in the field of AI-driven agent research. The work utilizes BDI (belief-design-intention, a model with some philosophical basis in the theory of human practical reasoning) agents to model expert human first-person shooter game players in conjuction with the platform provided by the id Tech engine. According to the author, BDI agents are extremely suited to human modelling because of their folk psychological basis, i.e. the way people think that they think corresponds closely with the way that people explain their reasoning thus facilitating knowledge capture. Methodology involved the use of a knowledge elicitation approach that mapped closely to the philosophy and concept of BDI and then the appliance of this knowledge using JACK, a development environment for building, running and integrating commercial-grade multi-agent systems using a component-based approach, on intelligent agents in Quake which ran on the id Tech engine. Again, in the field of AI agent research, El Rhabibi et al. tackle the issue of intelligent agents in a different way, while still using the id Tech engine, to implement (by modifying the original bot AI) and test their research on. The implementation attempted is based on the adaptation of the player to his / her effective actions and employs a varying range of traditional AI concepts, ranging from the pre-defined behaviours of a finite state machine and fuzzy logic system to the learning capabilities of neural computing. This results in the development of a system that enables the AI choices to be changed according to the feedback from the actions selected. While the concept was tested only on weapon selection behaviour, it still offers interesting results on how non-player characters’ (NPCs’) intelligent behaviour could be extended and further enhanced using this hybrid amalgam of approaches.
2.2 The Unreal Engine The Unreal Engine, currently at version 3 and developed by Epic Games Inc., is a complete game development framework for next-generation consoles and DirectX 9-equipped PCs. It provides a very wide range of core technologies, content creation tools and support infrastructure required for quality game development. Platforms at the moment include Windows, Linux, MacOS, Xbox 360 and PS3 and some of the game titles utilizing it include the Unreal Tournament series, Gears Of War 1 & 2 (the latter still under production), XIII and various installments of the Splinter Cell series. It is an extensible, object-oriented C++ engine with the main advantage of being designed with ease of content creation and programming in mind. Thus, it offers source control-friendly software architecture which is scalable to large teams and multi-platform projects making it ideal for major commercial projects (a fact reflecting on the cost of licensing the engine for professional use). A major advantage of the engine is the embedded UnrealScript gameplay scripting language which provides automatic support for metadata, exposure of script properties to level designers, a GUI-based script debugger and finally native language support for concepts such as dynamically scoped state machines and time-based execution of code. The engine also comes with a visual AI scripting tool enabling designers to
70
IADIS International Conference Gaming 2008
create complex interactive in-game scenarios, such as player objectives, versatile triggering of game events and even interactive cinematic scenes. Another very import part of the engine is UnrealEd, which is essentially the engine’s content creation tool, supporting the creation of optimized collision primitives for models and skeletal animated meshes, constraint editing, interactive physics simulation, all via an embedded in-editor. To offer an insight in this, UnrealEd treats the world as a giant mass. In order to create space, brushes (primitive shapes such as cubes, spheres and cones) are subtracted from the mass, leaving out space. The addition of mass on the other hand creates solid space within the hollowed space. Therefore, a level can be built with a mixture of subtracted and added brushes. Brushes may also intersect or deintersect, along with being added or subtracted, which understandably creates limitless possibilities in the development of a virtual environment. A complimentary device to UnrealEd which should also be mentioned is UnrealMatinee, a timeline-based visual sequencing, animation and spline path tool. This facilitates the creation of in-game cinematics, both interactive and non-interactive, by sequencing animations, moving objects including cameras, controlling sounds and visual special effects and triggering various gameplay and AI events. The high-quality graphics of the engine stem from a 64-bit color High Dynamic Range (HDR) rendering pipeline. The gamma-correct, linear color space renderer the engine uses supports a vast-array of postprocessing effects such as light blooms, lenticular halos and depth-of-field. It should also be noted that the engine is equipped with a powerful material system, enabling artists to work with a visual interface that is comparable in power to the non-real-time functionality provided by a top-of-the-range professional 3D modeling package such as the one found on Autodesk’s Maya. Unreal Engine has been very popular in serious games research. One particular piece of work by Robillard et al. utilizes this specific engine for providing inexpensive exposure therapy to 13 phobic and 13 non-phobic control experiment participants. Results from the experiment ran on the engine mainly included the fact that anxiety could be induced in phobic participants by exposing them to phobogenic stimuli in therapeutic virtual environments derived from computer games (TVEDG). The impact of simulator sickness and of sense of presence on the phobogenic effectiveness of TVEDGs was measured. Moreover, participants reported low levels of simulator sickness suggesting that no significant impact on either anxiety or sense of presence was created by this. Group differences, correlations and regression analyses indicate a synergistic relationship between presence and anxiety, in an experiment which would be very difficult and expensive to be designed or indeed ran on specialized software and was made possible by Unreal Engine’s diverse content creation capabilities. Unreal Engine has also been used in the virtual cultural heritage field. Museums and galleries have recently started to odeled the potential of new technologies for the development of edutainment content and services for their visitors and thus turned to virtual reality to facilitate this. Lepouras et al. propose the use of the Unreal Engine for the purpose of developing an affordable, easy to use and pleasing virtual museum environment. Included in the work is a case study based on an already developed version of a virtual museum and also a newly implemented version that uses the aforementioned engine with initial results suggesting that game technologies can offer a prominent, viable yet particularly, and perhaps most importantly, inexpensive 3D solution to the need for affordable, high-quality, navigational systems for cultural heritage. In a similar vein, De Leon et al. present two projects using the Unreal Engine and underlying technologies, generating high-resolution, real-time 3D imagery for photorealistic walk-throughs of the Florida Everglades and the Notre Dame Cathedral in Paris. The latter, nicknamed the Virtual Reality Notre Dame (VRND) Project, is a multi-user-capable environment accessible to the public via the Internet. Interactive storytelling is another area where Unreal Engine has also been utilized for scientific research. Cavazza et al. propose, after discussing the determinants of plot variability and the mechanisms that account for the emergence of narrative situations in interactive storytelling, the introduction of additional mechanisms for coping with these situations. One of their test scenarios from which results for these mechanisms were derived from, is inspired from a popular TV sitcom, with the main character “Ross” wanting to invite the main female character “Rachel” on a date. The system they use to test this scenario is developed on top of the Unreal Tournament game engine, with the set and characters designed or imported using the engine’s development environment. All the AI modules supporting interactive storytelling have been developed in C++ for the character’s behaviour or UnrealScript language for the interaction components. Furthermore, the Unreal engine has been used as an interesting and low-budget alternative to professional 3D GIS landscape visualization software, in a piece of work by Herwig et al. The engine was used to create
71
ISBN: 978-972-8924-64-5 © 2008 IADIS
the landscape visualizations for the study site presented in the work (an area on the outskirts of the village of Hohenstein, Germany). Initially, terrain data was prepared using GIS software such as ESRIS’ ArcView with the 3D Analyst extension. The resolution of the digital elevation model had to then be reduced in order to reach the required real-time display sufficiently. The terrain grid was, in form of a .DXF file, then imported to Unreal’s level editor where photo-based textures were mapped on the terrain to represent the ground and the lower vegetation layer. Cattail, fern, shrubs and hedges were odeled using simple polygons and textures to enhance the three-dimensional impression with 3D trees also modeled and imported. This work was then evaluated by 20 workshop participants against 3 different land-use planning scenarios (low-input agriculture, recreational and agricultural landscape and natural succession to forest). Results suggested that it is promising to further explore and test the impacts of computer graphical assisted landscape planning via a gaming engine while the technology is further advancing. Other research avenues for exploring the Unreal Engine’s capabilities include the development of largescale, climatic virtual environments that exhibit natural eco-behavioral conditions, as demonstrated by Refsland et al. The purpose of this research is to support a real-time virtual ecosystem created by live weather information and GIS terrain data and delivered through a common multimedia PC/Internet network. Using the aforementioned data, the enhanced environment module was created and then added to the Unreal game engine to support a “living” virtual ecosystem with real-time climatic conditions. Particular focus was placed on the behavioral patterns of climate, artificial life, user interactions and their complex interrelationships within a dynamic virtual world. AI human-behavior modeling has also been explored using this engine in a work by Silverman et al. by embedding the framework (described in detail in a previous publication by some of the same authors) behind a first-person shooter 3D game environment to recreate portions of the Black Hawk Down scenario. The authors’ main purpose was to run an experiment study to explore how to integrate “off the shelf” human behavior models into a game engine such as the Unreal one and Modeling and Simulation (M&S) environments in order to enhance the realism of the characters in different roles. This was accomplished by building a standard interface to the Unreal engine and tuning an “off the shelf” human behavior model to populate the scenario. Results reveal that they were able to generate plausible and adaptive recreations of Somalian crowds, militia, women acting as shields, suicide bombers and more. A more developmental approach to using the Unreal engine, this time for immersive VR research is the one demonstrated by Jakobson. CaveUT, as developed by the author, is a set of software modifications to the engine which enables a PC-driven two-screen monoscopic immersive display. Each screen can rest in any orientation to the viewer and will appear to be a window or window facet looking into one virtual world, visualised on the Unreal Engine. Each screen is driven by a standard PC running the Unreal client with an extra PC acting as both server and operator console. The author has allowed for the build of larger displays (up to 32 screens). Other than standard PCs, low-cost digital projectors are also needed to fully take advantage of the system. The purpose of the CaveUT modification is to provide a very inexpensive and fast way, using easily available software and hardware, for immersive virtual reality research with high quality graphics. Lewis et al. explored the engine’s capabilities for their research focusing on the development of a highfidelity, open-source simulation called USARSim (which stands for Urban Search And Rescue Scheme Simulation, also detailed in another publication by some of the same authors in Wang et al.) intended for human-robot interaction experts of varying expertise. The work also provides reference tasks and environments to facilitate collaboration in order to share the results with other researchers while the architecture and capabilities of the Unreal Engine-based simulation are described in detail. The authors also performed several case studies describing experiments in camera control for remote viewing and integrated display of attitude information to further validate their unique simulation system approach.
2.3 The Source Engine The Valve Source engine is the engine used to power Half-Life 2. Because of the fact that it is a relatively recent engine (at least compared to the previous two described), it provides major enhancements in several key areas including character animation, advanced AI, real-world physics and shader-based rendering. All code was written in C/C++ using Visual Studio 6.0 and thus supports all versions of DirectX 6 onwards up to 9. Because of its design, it is relatively easy and quick to derive new entities from existing base classes while
72
IADIS International Conference Gaming 2008
it also comes equipped with an internal context sensitive performance monitoring system. The modular code design using DLLs allows for swapping out of core components for easy upgrades or even code replacement. The Source engine also comes with a lot of built-in tools such as Faceposer, a tool used to craft speech and emotions and the Valve Hammer Editor, a very powerful WYSIWYG world editor that can be employed for the creation of world brushes, terrains, placement of detailed world models and AI NPCs, setting navigation points or paths for NPCs, placement of triggers, clip brushes, logic etc. and finally even enables level designers to hook up I/O between entities to control AI within the game. Other tools include the HalfLife Model Viewer, a full model previewer that allows for the rotation of any models in any direction, the setting up of hit boxes, viewing physics hull, normals, plus switching to wireframe, shaded or textured view modes. Finally, there is also the VMPI, a distributed compilation tool allowing level compiles to be spread across many machines in a network-rendering way thus enabling the reduction of compile times. Special effects supported by the engine include cube and environment mapping, water with refraction and fresnel effects, an advanced particle system that can emit sprites or models, 3D skyboxes that can extend the horizon and add parallax on distant objects and dynamically rendered organics (such as most notably trees and grass). Also, the terrain is deformable and beams, volumetric smoke, sparks, blood and fog or rain can easily be created using the Source engine. Regarding lighting, it supports dynamic lights, vertex lighting and light maps, various light types including flickering and pulsing plus also HDR lighting and real-time radiosity lighting. The AI of the engine is also very advanced, AI characters can interact with physically simulated objects such as ropes, cables, machines etc. via constraint systems and ragdoll physics. Navigation is also considerably more elaborate and realistic with characters that can run, fly, jump, crouch, climb stairs and ladders and burrow underground. The AI system also extends to senses using sight, sound, smell and relationships in order to determine friend/foe status of other entities. Finally, battle AI allows squads of AI characters to operate together, know when to advance and/or retreat or even support each other with cover fire. Source also takes a rather revolutionary step towards texturing in a game engine. Rather than using standard textures like most engines, it employs sets of materials that specify what the object is made from and then, subsequently, the texture used for that object. Therefore, a material specifies what an object will sound like when broken or dragged across another or how it will actually break. The possibilities this approach offers are many, with the most notable one being the various ways of interaction of objects or indeed NPCs. One interesting piece of research work utilizing the Source engine is the development of Serious Gordon, an educational game created to teach kitchen food safety to workers in industries dealing with food, by Mac Namee et al. The game serves as a realistic simulation of a restaurant environment in which the player, playing from a first-person perspective, assumes the role of a kitchen porter arriving for his/her first day at work. During the game the player is given a number of different tasks to complete, each of which relates back to a list of nine induction skills such as obeying food safety signs, keeping work areas clean, demonstrating food safe food handling practices and others. This translates in the game to activities such as choosing the correct uniform for a particular job from a selection of different options, correctly moving deliveries from a truck outside the restaurant to the kitchen’s various store rooms and even dealing with workplace disasters such as injury and sickness. An evaluation study was also performed, where participants were asked to play the game from start to finish. On completion, the subjects filled in a questionnaire which evaluated not only their experience of using the game but also how many of the learning outcomes had been achieved successfully. In another area, O’Neill et al. explored the use of the engine for describing a platform for the user-centred design and evaluation of adaptive, context-aware services in the wireless, mobile and pervasive computing markets. The 3D simulation component of the platform, provided by the Source engine, was modified to enable extraction of information from the environment in XML-encoded messages. The engine was also adjusted towards a pervasive computing environment through the addition of pervasive computing sensor models. Modelling tools supplied by the engine were used to place sensors in the virtual world so that at runtime user activity and / or movement in the virtual world would activate the sensors according to the objectives of the experiment. When activated, a sensor model responded by the generation of an XMLencoded message containing information related to the event such as location data or user name. Bouchard et al. conducted a study with 11 participants with the goal of assessing the effectiveness of in virtuo exposure in the treatment of arachnophobia using a modified version of the Source engine.
73
ISBN: 978-972-8924-64-5 © 2008 IADIS
Modifications attempted to offer gradual hierarchies of fearful stimuli of the phobia in question, that of spiders. Results from the study suggest significant improvement between pre / post results on the behavioral avoidance test, the questionnaire on spider beliefs and perceived self-efficacy. The work therefore indicates that therapy using virtual reality exposure to fears with psychological extensions such as arachnophobia, via a modified game engine like the Source one, can be very useful in potential treatment processes. In the disaster management area, Bell et al. developed a series of virtual reality-based laboratory accident simulations, using the Source engine amongst other software, designed to focus on the objective of users following proper lab safety procedures. Mainly the work attempts to reinforce users remembering the experience of suffering a lab accident longer and more vividly via virtual reality, than by a set of mundane lab safety rules, and thus conducting themselves in a safer manner. Another equally important goal is to explore a variety of different development platforms for this purpose, such as the Source engine but also WorldUp and Java3D in other simulations in order to establish which are most suitable in efficiency for scenarios such as the ones in this field of research. Regarding medical research, Source engine has also been used for the purposes of surgery planning by Marks et al. The purpose behind this work was to offset the increasing complexity and costs of surgical training and the constant development of new surgical procedures via virtual surgical training, and more specifically, via the use of game engines. The authors examine the suitability of the three most popular available game engines (one of them being the Source one) for developing applications for medical education and simulated surgical training. This is achieved by evaluating these engines for stability, availability, the possibility of custom content creation and finally the interaction of multiple users via a network. The authors conclude that in general it is possible to easily create scenarios with custom medical models that can be cooperatively viewed and interacted with, but severe limitations in physical simulation capabilities prohibit most engines for fully interactive applications (the alternative is for them to be used in combination with predefined animations). When it comes to the Source engine in specific, it is suggested it is at the moment the best engine for this area, despite the aforementioned limitations, because of its publicly available source code which allows the extension of its physics engine features to mathematically more sophisticated models. Moreover, according again to the authors, another advantage of the Source Engine is the fact that not only the material and model compilation files are text based, but also the file format for maps. This could suggest that with the command line based tools, this could lead to the development of a fully automatised tool reading patient-related medical data and constructing a map including the custom patient models for interaction and training.
2.4 The Torque Engine The Torque Game Engine (TGE), as developed by Garage Games, is a 3D, object-oriented based game engine with multi-player network code, seamless indoor/outdoor rendering engines, support of skeletal animation, drag-and-drop GUI creation, a built-in world editor and a C-like scripting language for modifications. Unlike some engines mentioned above, it comes with a particularly low cost license and also full C++ source code to the engine, so the developer or researcher can make any additions or modifications needed. The source code can be compiled on Windows, Macintosh, Linux and Xbox 360 platforms. Understandably, the low cost of the engine has a attracted a number of people to it and at the moment it boasts a fairly thriving modding community. More recently, Garage Games has extended Torque to compliment Microsoft’s XNA Game Studio for Xbox 360 development, resulting in a version of the engine called Torque X. The Torque engine has been used in the field of cultural heritage and education by Wyeld et al. Work focuses on the development of the Digital Songlines game engine (DSE) toolkit that is used for Australian Indigenous storytelling, a toolkit running on the Torque engine and exploring the sharing of indigenous Australian Aboriginal storytelling in a sensitive manner. The implementation, amongst other features, appropriately alters the Torque environment and models it according to the 'country' (the place of the heritage of the user’s collective identity) and also the authentic fauna and flora experienced there, thus providing a highly contextualised setting for the stories to be told. There is a large number of tribal groups in Australia at the moment and this research intends to provide for a development framework that can assist with the creation of interactive storytelling tailored to each tribe’s own individualities.
74
IADIS International Conference Gaming 2008
In architectural rendering, Yang et al. present an analysis of how the Torque terrain engine, which is used by the Department of Architecture of the University of Auckland, can be modified and extended for architectural purposes. The limitations of the terrain engine in question are identified and the terrain engine is then evaluated on its suitability for architectural design. The authors focus on the implemention of integrating the hardware-friendly chunked level-of-detail terrain rendering algorithm into the terrain engine thus improving its capabilities for visualisations focused on the chosen field. First results indicate that the integration of the algorithm on the Torque engine frees CPU load for use by other modules of an architectural design tool and is a considerable improvement on what both Torque but also other game engines have to originally offer in this area. Finally, in the field of AI character behavior, the Torque engine was used by Stanley et al. as the platform for the real-time NeuroEvolution of Augmenting Topologies (rtNEAT) method for evolving increasingly complex artificial neural networks in real-time, allowing agents to change and improve during the game. rtNEAT has the innovative characteristic of having the human player train a team of agents through a series of customized exercises (whereas, till today at least, in computer games we have seen the opposite, AI training the human). Scenarios include the human player train a team of virtual robots for combat against other players’ teams. The possibilities for using this method according to the authors can extend far beyond first-person shooter applications and can assist in educational and serious gaming applications, to name but a few.
3. CONCLUSION This paper illustrates the use of first-person shooter engines in scientific research and how far reaching their use has become. In fact, there is a lot of unexplored potential in this for two reasons. First of all, despite of the fact that professional FPS game engines have been around for a number of years, parts of the scientific community have hesitated to approach it as a valid and credible option to conducting research. The projects presented here are the best way to alleviate this hesitation. Secondly, FPS game engines themselves are evolving and improving, both in a technological manner (an expected development) but also in terms of interaction with the end-user and in terms of offering more support to him / her in recognition to the capabilities the engine might have in non-gaming use. For example, the relatively new engine CryEngine, developed by CryTek in 2004 for the Far Cry game title, and now in its second version, offers state-of-the-art virtual environment editing tools such as the Sandbox editor, an intuitive tool which allows the editing of levels in real time, offering a what-you-see-is-what-you-play 3D world. With next-generation engines already in development in order to take full advantage of the capabilities of new console devices and PC GPUs, it will be very interesting to see what research results can be accomplished in the next few years.
ACKNOWLEDGEMENTS Research work presented in this paper was funded by ALCATEL Lucent Telecom UK Limited, the employees of which are also thanked for their input and insight.
REFERENCES Bell, J. and Fogler, H., 2003. Implementing virtual reality laboratory accidents using the Half-Life game engine, WorldUp, and Java3D. Proceedings of the 2003 American Society for Engineering Education Annual Conference & Exposition. Nashville, USA. Bouchard S. et al, 2006. Effectiveness of virtual reality exposure in the treatment of arachnophobia using 3D games. In International Journal Of Technology Assessment In Health Care, Vol. 14, No. 1, pp 19-27. Bylund, M. and Espinoza, F., 2001. Using Quake III Arena to simulate sensors and actuators when evaluating and testing mobile services. Proceedings of extended abstracts of the ACM conference on Human Factors in Computing Systems (CHI 2001). Seattle, Washington, USA, pp. 241-242.
75
ISBN: 978-972-8924-64-5 © 2008 IADIS
Cavazza M. et al, 2002. Emergent situations in interactive storytelling. Proceedings of the 2002 ACM Symposium on Applied Computing. Madrid, Spain, pp. 1080-1085. De Leon, V. and Berry, R. Jr., 2000. Bringing VR to the desktop: are you game? In IEEE MultiMedia, Vol. 7, No. 2, pp 68-72. El Rhabibi, A. and Merabti, M., 2006. A hybrid fuzzy ANN system for agent adaptation in a first person shooter. Proceedings of the 2006 CyberGames International Conference on Game research and Development. Perth, Australia, pp. 54-61. Frey A. et al, 2007. The use of virtual environments based on a modification of the computer game Quake III Arena in psychological experimenting. In Computers In Human Behaviour, Vol. 23, No. 4, pp 2026-2039. Herwig, A. and Paar, P., 2002. Trends in GIS and Virtualization in Environmental Planning and Design-Game Engines: Tools for Landscape Visualization and Planning. Wichmann Verlag, Heidelberg, Germany, pp 161-172. Jacobson J., 2003. Using CaveUT to build immersive displays with the Unreal Tournament engine and a PC cluster. Proceedings of the 2003 ACM Symposium on Interactive 3D Graphics. Monterey, California, USA, pp. 221-222. Kot B. et al, 2005. Information visualisation utilising 3D computer game engines case study: a source code comprehension tool. Proceedings of the 6th ACM SIGCHI New Zealand Chapter International Conference on Computer-Human Interaction (CHINZ 2005). Auckland, New Zealand, pp. 53-60. Lepouras, G. and Vassilakis, C., 2004. Virtual museums for all: employing game technology for edutainment. In Virtual Reality Journal, Vol. 8, No. 2, pp 96-106. Lewis M. et al, 2007. USARSim: simulation for the study of human-robot interaction. In Journal Of Cognitive Engineering And Decision Making, Vol. 1, No. 1, pp 98-120. Mac Namee B. et al, 2006. Serious Gordon: using serious games to teach food safety in the kitchen. Proceedings of CGAMES 06: 9th International Conference on Computer games: AI, Animation, Mobile, Educational & Serious Games. Dublin, Ireland. Marks S. et al, 2007, Evaluation of game engines for simulated surgical training, Proceedings of GRAPHITE '07: 5th International Conference on Computer Graphics and Interactive Techniques in Australia and Southeast Asia. Perth, Australia, pp. 273-280. Norling E., 2003. Capturing the Quake Player: Using a BDI Agent to Model Human Behaviour. Proceedings of the Second International Joint Conference on Autonomous Agents and Multiagent Systems. Melbourne, Australia, pp. 1080-1081. O’Neill E. et al, 2007. Rapid user-centred evaluation for context-aware systems. Proceedings of the 13th International Workshop 2006 on Interactive Systems, Design, Specification and Verification. Heidelberg, Germany, pp. 220-233. Piekarski, W. and Thomas, B., 2002. ARQuake: the outdoor augmented reality gaming system. In Communications Of The ACM, Vol. 45, No. 1, pp 36-38. Refsland S. et al, 2002. Enhanced environments: large-scale, real-time ecosystems. In Presence, Vol. 11, No. 3, pp 221246. Robillard G. et al, 2003. Anxiety and presence using VR immersion: a comparative study of the reactions of phobic and non-phobic participants in therapeutic virtual environments derived from computer games. In CyberPsychology Behaviour Journal, Vol. 6, No.5, pp 467-475. Silverman B. et al, 2006. Human behavior models for agents in simulators and games: Part I: Enabling Science with PMFserv. In Presence, Vol. 15, No. 2, pp 139-162. Silverman B. et al, 2006. Human behaviour models for agents in simulators and games: Part II: Gamebot Engineering with PMFserv. In Presence, Vol. 15, No. 2, pp 163-185. Stanley K. et al, 2005. Real-time Neuroevolution in the NERO Video Game. In IEEE Transactions on Evolutionary Computation, Vol. 9, No. 6, pp 653-668. Steed, A. and Angus, C., 2006. Enabling scalability by partitioning virtual environments using frontier sets. In Presence, Vol. 15, No. 1, pp 77-92. Thomas B. et al, 2000. ARQuake: An outdoor/indoor augmented reality first-person application. Proceedings of the Fourth International Symposium on Wearable Computers. Atlanta, USA, pp. 139-146. Wang J. et al, 2003. USAR: a game based simulation for teleoperation. Proceedings of the 47th annual meeting of the human factors and ergonomics society. Denver, USA, pp. 493-497. Wyeld T. et al, 2007. Doing Cultural Heritage Using the Torque Game Engine: Supporting Indigenous Storytelling in a 3D Virtual Environment, International Journal of Architectural Computing, Vol. 5, No. 2, pp 418-435. Yang T. et al, 2004. Game Engine Support for Terrain Rendering in Architectural Design. Proceedings of Image and Vision Computing International Conference 2004. Akaroa, New Zealand.
76