What is a game?

10,400 active players

What doesn't kill me gives me experience.

#7 Trending

That moment when you're done playing and just don't know what to do with your life.

We probably all have a pretty good intuitive idea of ​​what a game is. The general term “game” includes table games such as chess and monopoly, card games such as poker and blackjack, casino games such as roulette and slot machines, military war games,computer games,different kinds of games for kids and the list goes on. In scientific circles, we sometimes talk about game theory, in which multiple agents choose strategies and tactics to maximize their gains within a well-defined set of game rules. When used in the context of console or computer entertainment, the word “game” usually conjures up images of a 3D virtual world with a humanoid, animal, or vehicle as the protagonist under the control of the player. (Or for the old weirdos among us, Raf Koster’s Pleasure Theory for Game Design defines a game as an interactive experience that presents the player with an increasingly complex sequence of patterns that he or she learns and eventually masters. Koster argues that the activity of learning and mastering underlies the

Video games as real-time soft simulations

Most 2D and 3D video games are examples of what computer scientists would call real-time agent-based soft interactive computer simulations. Let’s break down this phrase to better understand what it means. In most video games, some subset of the real world—or the imaginary world—is modeled mathematically so that it can be manipulated by a computer. The model is an approximation and simplification of reality (even if it is an imaginary reality), because it is clearly not practical to include every detail down to the level of atoms or quarks. Therefore, a mathematical model is a simulation of a real or imaginary game world. Approximation and simplification are two of the game developer’s most powerful tools. With skillful use

Agent-based modeling is a simulation in which a number of separate entities known as “agents” interact. This fits very well with the description of most 3D computer games, where the agents are vehicles, characters, fireballs, energy dots, and so on. Given the agent-based nature of most games, it is not surprising that most modern games are implemented in an object-oriented or at least partially object-oriented programming language.
All interactive video games are temporary simulations, which means that the virtual model of the game world is dynamic – the state of the game world changes over time as the events and story of the game unfold. The video game must also respond to the unpredictable actions of the player(s)—thus, interactive time simulations. Finally, most video games present their stories and react to the player’s actions in real time, making them interactive real-time simulations.

One notable exception is in the category of turn-based games such as computerized chess or non-real-time strategy games. But even these types of games usually provide the user with some form of real-time graphical user interface.

What is a game engine?

The term “game engine” originated in the mid-1990s in reference to first-person shooter (FPS) games like id Software’s wildly popular Doom. Doom was designed with a fairly clear separation between its core software components (such as the 3D graphics rendering system, collision detection system, or audio system) and the art assets, game worlds, and game rules that made up the game environment. gaming experience. The value of this separation became apparent when developers began to license games and remake them into new products, creating new art, world layouts, weapons, characters, vehicles, and game rules with minimal changes to the “engine” software. This marked the birth of the “mod community”. – a group of individual gamers and small independent studios, who created new games by modifying existing ones using free tools provided by the original developers. By the late 1990s, some games such as Quake III Arena and Unreal were being developed with reusability and “modding” in mind. Engines have become highly customizable with scripting languages ​​such as id’s Quake C, and engine licensing has become a viable secondary source of income for the developers who created them. Today, game developers can license a game engine and reuse much of its key software components to create games. While this practice still requires a significant investment in custom software development, it can be much more cost-effective than developing all major engine components in-house. modifying existing ones using free tools provided by the original developers. By the late 1990s, some games such as Quake III Arena and Unreal were being developed with reusability and “modding” in mind. Engines have become highly customizable with scripting languages ​​such as id’s Quake C, and engine licensing has become a viable secondary source of income for the developers who created them.

Today, game developers can license a game engine and reuse much of its key software components to create games. While this practice still requires a significant investment in custom software development, it can be much more cost-effective than developing all major engine components in-house. modifying existing ones using free tools provided by the original developers. By the late 1990s, some games such as Quake III Arena and Unreal were being developed with reusability and “modding” in mind. Engines have become highly customizable with scripting languages ​​such as id’s Quake C, and engine licensing has become a viable secondary source of income for the developers who created them. Today, game developers can license a game engine and reuse much of its key software components to create games. While this practice still requires a significant investment in custom software development, it can be much more cost-effective than developing all major engine components in-house. using free tools provided by the original developers. By the late 1990s, some games such as Quake III Arena and Unreal were being developed with reusability and “modding” in mind. Engines have become highly customizable with scripting languages ​​such as id’s Quake C, and engine licensing has become a viable secondary source of income for the developers who created them. Today, game developers can license a game engine and reuse much of its key software components to create games. While this practice still requires a significant investment in custom software development, it can be much more cost-effective than developing all major engine components in-house. using free tools provided by the original developers. By the late 1990s, some games such as Quake III Arena and Unreal were being developed with reusability and “modding” in mind. Engines have become highly customizable with scripting languages ​​such as id’s Quake C, and engine licensing has become a viable secondary source of income for the developers who created them. Today, game developers can license a game engine and reuse much of its key software components to create games. While this practice still requires a significant investment in custom software development, it can be much more cost-effective than developing all major engine components in-house. By the late 1990s, some games such as Quake III Arena and Unreal were being developed with reusability and “modding” in mind. Engines have become highly customizable with scripting languages ​​such as id’s Quake C, and engine licensing has become a viable secondary source of income for the developers who created them. Today, game developers can license a game engine and reuse much of its key software components to create games. While this practice still requires a significant investment in custom software development, it can be much more cost-effective than developing all the major engine components in-house. By the late 1990s, some games such as Quake III Arena and Unreal were being developed with reusability and “modding” in mind. Engines have become highly customizable with scripting languages ​​such as id’s Quake C, and engine licensing has become a viable secondary source of income for the developers who created them.

Today, game developers can license a game engine and reuse much of its key software components to create games. While this practice still requires a significant investment in custom software development, it can be much more cost-effective than developing all major engine components in-house. Engines have become highly customizable with scripting languages ​​such as id’s Quake C, and engine licensing has become a viable secondary source of income for the developers who created them. Today, game developers can license a game engine and reuse much of its key software components to create games. While this practice still requires a significant investment in custom software development, it can be much more cost-effective than developing all major engine components in-house. Engines have become highly customizable with scripting languages ​​such as id’s Quake C, and engine licensing has become a viable secondary source of income for the developers who created them. Today, game developers can license a game engine and reuse much of its key software components to create games. While this practice still requires a significant investment in custom software development, it can be much more cost-effective than developing all major engine components in-house. Today, game developers can license a game engine and reuse much of its key software components to create games. While this practice still requires a significant investment in custom software development, it can be much more cost-effective than developing all major engine components in-house. Today, game developers can license a game engine and reuse much of its key software components to create games. While this practice still requires a significant investment in custom software development, it can be much more cost-effective than developing all major engine components in-house.


Some engines make a fairly clear distinction, while others make little effort to separate them. In one game, the rendering code may “know” specifically how to draw an orc. In another game, the rendering engine may provide general purpose materials and shading, and “Orcishness” may be completely determined by the data. No studio makes a clear distinction between game and engine, which is understandable given that the definitions of the two often change as game design solidifies.

Perhaps data-driven architecture is what separates a game engine from a piece of software that is a game but not an engine. When a game contains hard-coded game logic or rules, or uses special code to render certain types of game objects, it becomes difficult or impossible to reuse that software to create another game. We should probably reserve the term “game engine” for software that is extensible and can be used as the basis for many different games without major modifications.

Clearly, this is not a black and white difference. We can come up with a gamut of reuse that each engine belongs to. One would think that a game engine could be something like Apple’s QuickTime or Microsoft’s Windows Media Player, general purpose software capable of playing just about any game content imaginable. However, this ideal has not yet been reached (and perhaps never will be). Most game engines are carefully crafted and tuned to run a specific game on a specific hardware platform. And even the most versatile multi-platform engines are really only suitable for making games in one particular genre, such as first-person shooters or racing games. It is safe to say that the more versatile the game engine or intermediate component,

This phenomenon arises because the development of any effective piece of software invariably involves trade-offs, and these trade-offs are based on assumptions about how the software will be used and/or the target hardware on which it will run. For example, a rendering engine that was designed to work indoors probably won’t be very good at rendering large outdoor environments. The internal engine can use a binary space partitioning (BSP) tree or a portal system to ensure that no geometry is obstructed by walls or objects that are closer to the camera. On the other hand, an external engine may use a less accurate occlusion mechanism or not use it at all, but it will probably
The advent of ever faster computer hardware and specialized graphics cards, as well as ever more efficient rendering algorithms and data structures, is beginning to blur the differences between graphics engines of different genres. For example, it is now possible to use the first-person shooter engine to create a real-time strategy game. However, the trade-off between universality and optimality still exists. A game can always be made more impressive by customizing the engine to the specific requirements and limitations of a particular game and/or hardware platform.

Differences of engines in different genres

Game engines are usually somewhat genre dependent. An engine designed for two-person fighting games in a boxing ring will be very different from a massively multiplayer online game (MMOG) engine, a first-person shooter (FPS) engine, or a real-time strategy (RTS) engine. However, there is also much in common: all 3D games, regardless of genre, require some form of low-level user input via joystick, keyboard and/or mouse, some form of 3D mesh rendering, some form of head. display (HUD), including text rendering in various fonts, a powerful audio system, and the list goes on. Thus, although the Unreal Engine, for example, was developed for first-person shooters, it has also been successfully used to create games in a number of other genres, including simulation games,

0
GAME WON
0
LOSE
0
KDEFICIENT KDA
0
TROPHIES