We probably all have a pretty good intuitive Soul Crazy notion of what a game is. The general term “game” encompasses board games like chess and Monopoly, card games like poker and blackjack, casino games like roulette and slot machines, military war games, computer games, various kinds of play among children, and the list goes on. In academia, we sometimes speak of game theory. Multiple agents select strategies and tactics to maximize their gains within the framework of a well-defined set of game rules.
When used in the context of console or computer-based entertainment, the word “game” usually conjures images of a three-dimensional virtual world featuring a humanoid, animal, or vehicle as to the main character under player control. (Or for the old geezers among us, perhaps it brings to mind images of two-dimensional classics like Pong, Pac-Man, or Donkey Kong.) In his excellent book, A Theory of Fun for Game Design, Raph Koster defines a game as an interactive experience that provides players with an increasingly challenging sequence of patterns they learn and eventually master. Koster asserts that the activities of learning and mastering are at the heart of what we call “fun,” just as a joke becomes funny at the moment we “get it” by recognizing the pattern.
Video Games as Soft Real-Time Simulations
Most two- and three-dimensional video games are examples of what computer scientists would call soft real-time interactive agent-based computer simulations. Let’s break this phrase down to understand better what it means. In most video games, some subset of the real world -or an imaginary world- is modeled mathematically so that a computer can manipulate it. The model is an approximation to and a simplification of reality (even if it’s an imaginary reality) because it is clearly impractical to include every detail down to the level of atoms or quarks. Hence, the mathematical model is a simulation of the real or imagined game world. Approximation and simplification are two of the game developer’s most powerful tools. When used skillfully, even a greatly simplified model can sometimes be almost indistinguishable from reality and a lot more fun.
An agent-based simulation is one in which several distinct entities are known as “agents” interact. This fits the description of most three-dimensional computer games very well, where the agents are vehicles, characters, fireballs, power dots, and so on. Given the agent-based nature of most games, it should come as no surprise that most games nowadays are implemented in an object-oriented, or at least loosely object-based, programming language.
All interactive video games are temporal simulations, meaning that the virtual game world model is dynamic. The state of the game world changes over time as the game’s events and the story unfolds. A video game must also respond to unpredictable inputs from its human player(s)-thus interactive temporal simulations. Finally, most video games present their stories and respond to player input in real-time, making them interactive real-time simulations.
Related Articles :
- This week’s highs and lows in PC gaming
- ASUS ROG Zephyrus evaluation: Gaming laptops will by no means be identical again
- Are we geared up for a telephone for hardcore game enthusiasts?
- Is Seasonal SEO Worth It? Gearing Up For The Holiday Season
- Cult Beauty Is The UK Beauty Website You Haven’t Heard Of Yet, But Need To Know About
One notable exception is in the category of turn-based games like computerized chess or non-real-time strategy games. But even these types of games usually provide the user with some form of the real-time graphical user interface.
What Is a Game Engine?
The term “game engine” arose in the mid-1990s about the first-person shooter (FPS) games like the insanely popular Doom by id Software. Doom was architected with a reasonably well-defined separation between its core software components (such as the three-dimensional graphics rendering system, the collision detection system, or the audio system) and the art assets, game worlds, and rules of play that comprised the player’s gaming experience. The value of this separation became evident as developers began licensing games and retooling them into new products by creating new art, world layouts, weapons, characters, vehicles, and game rules with only minimal changes to the “engine” software.
Towards the end of the 1990s, some games like Quake III Arena and Unreal were designed with reuse and “modding” in mind. This marked the birth of the “mod community”-a group of individual gamers and small independent studios that built new games by modifying existing games, using free toolkits provided by the original developers. Engines were made highly customizable via scripting languages like id’s Quake C, and engine licensing became a viable secondary revenue stream for the developers who created them.
Today, game developers can license a game engine and reuse significant portions of its key software components to build games. While this practice still involves considerable investment in custom software engineering, it can be much more economical than the in-house development of all core engine components. The line between a game and its engine is often blurry. Some engines make a reasonably clear distinction, while others make almost no attempt to separate the two. In one game, the rendering code might “know” specifically how to draw an orc.
The rendering engine might provide general-purpose material, shading facilities in another game, and “orc-ness” might be defined entirely in data. No studio makes a clear separation between the game and the engine, which is understandable considering that the definitions of these two components often shift as the game’s design solidifies.